Appearance
PDF插件相关接口
注意: 本节关于PDF插件的接口,是直接通过文档控件对象调用,而非第六章所介绍的是通过文档控件的ActiveDocument对象调用。主要用于在C/S环境上开发时,无法通过ActiveDocument对象调用PDF插件接口时使用。
水印相关接口
AddPicWaterMarkFromUrl
语法:
javascript
AddPicWaterMarkFromUrl(url, pageNo, [mode], [bgray], [percent], [bPrint], [posX], [posY])
功能:
从URL添加图片水印。
参数:
名称 | 必选/可选 | 数据类型 | 说明 |
---|---|---|---|
url | 必选 | string | 图片的URL地址 |
pageNo | 必选 | long | 指定页码 |
mode | 可选 | long | 水印模式 |
bgray | 可选 | bool | 变灰,对于水印没必要支持 |
percent | 可选 | long | 透明度百分比 |
bPrint | 可选 | bool | 是否打印水印 |
posX | 可选 | long | 左上角x坐标 |
posY | 可选 | long | 左上角y坐标 |
返回值:
无返回值
说明:
从URL添加图片水印。
参数说明:
pageNo
:页码,0代表第一页,传-1默认代表所有页mode
:水印模式,0=原始图片(可使用posX,posY定位),1=适合宽度,2=适合高度bPrint
:对于单纯的水印来说本参数不起作用posX
、posY
:当参数mode值为0时有效
使用示例:
javascript
// 从URL添加图片水印
Obj.AddPicWatermarkFromUrl("http://localhost:1070/WebSite2/test.jpg", 1, 2, false, 50);
AddPicWatermarkFromLocal
语法:
javascript
AddPicWatermarkFromLocal(filepath, pageNo, [mode], [bgray], [percent], [bPrint], [bSelect], [posX], [posY])
功能:
从本地添加图片水印。
参数:
名称 | 必选/可选 | 数据类型 | 说明 |
---|---|---|---|
filepath | 必选 | string | 本地图片的路径 |
pageNo | 必选 | long | 指定页码 |
mode | 可选 | long | 水印模式 |
bgray | 可选 | bool | 变灰,对于水印没必要支持 |
percent | 可选 | long | 透明度百分比 |
bPrint | 可选 | bool | 是否打印水印 |
bSelect | 可选 | bool | 是否允许选择文件 |
posX | 可选 | long | 左上角x坐标 |
posY | 可选 | long | 左上角y坐标 |
返回值:
无返回值
说明:
从本地添加图片水印。
使用示例:
javascript
// 从本地添加图片水印
Obj.AddPicWatermarkFromLocal("C:\\Users\\test.jpg", 1, 2, false, 50, true, false);
AddTextWaterMark
语法:
javascript
AddTextWaterMark(text, pageNo, [mode], [bgray], [percent], [dpi], [bPrint], [posX], [posY], [cx], [cy])
功能:
为文档添加文字水印。
参数:
名称 | 必选/可选 | 数据类型 | 说明 |
---|---|---|---|
text | 必选 | string | 要添加的文字 |
pageNo | 必选 | long | 指定页码 |
mode | 可选 | long | 水印模式 |
bgray | 可选 | bool | 变灰,对于水印没必要支持 |
percent | 可选 | long | 透明度百分比 |
dpi | 可选 | bool | 分辨率 |
bPrint | 可选 | bool | 是否打印水印 |
posX | 可选 | long | 左上角x坐标 |
posY | 可选 | long | 左上角y坐标 |
cx | 可选 | long | 水印宽度 |
cy | 可选 | long | 水印高度 |
返回值:
无返回值
说明:
为文档添加文字水印。
使用示例:
javascript
// 添加文字水印
Obj.AddTextWaterMark("NTKO PDF", 1, 2, false, 50, 200, true, false);
页面导航相关接口
GotoPDFPage
语法:
javascript
GotoPDFPage(pageNo)
功能:
跳转到指定页。
参数:
名称 | 必选/可选 | 数据类型 | 说明 |
---|---|---|---|
pageNo | 必选 | long | 页码 |
返回值:
无返回值
说明:
跳转到指定页。
使用示例:
javascript
// 跳转到第5页
Obj.GotoPDFPage(5);
文本搜索相关接口
BeginPDFFindNextText
语法:
javascript
BeginPDFFindNextText(Filename, bMachCase)
功能:
查找下一处匹配的字符。
参数:
名称 | 必选/可选 | 数据类型 | 说明 |
---|---|---|---|
Filename | 必选 | string | 关键字 |
bMachCase | 必选 | bool | 字母是否匹配大小写 |
返回值:
无返回值
说明:
查找下一处匹配的字符。参数bMachCase值为true代表匹配大小写,false代表不匹配。
使用示例:
javascript
// 查找下一处匹配的字符
Obj.BeginPDFFindNextText("ntko", true);
BeginPDFFindPrevText
语法:
javascript
BeginPDFFindPrevText(Filename, bMachCase)
功能:
查找上一处匹配的字符。
参数:
名称 | 必选/可选 | 数据类型 | 说明 |
---|---|---|---|
Filename | 必选 | string | 关键字 |
bMachCase | 必选 | bool | 字母是否匹配大小写 |
返回值:
无返回值
说明:
查找上一处匹配的字符。参数bMachCase值为true代表匹配大小写,false代表不匹配。
使用示例:
javascript
// 查找上一处匹配的字符
Obj.BeginPDFFindPrevText("ntko", true);
文本隐藏相关属性
PDFHiddenText
说明:
String型字符串;可读写;读取/设置打开PDF文档要隐藏的文字。
语法:
javascript
// 设置
Obj.PDFHiddenText = HID_KEYWORD;
// 读取
var hiddenText = Obj.PDFHiddenText;
使用示例:
javascript
// 设置隐藏文字
Obj.PDFHiddenText = "机密文档";
// 读取隐藏文字
var hiddenText = Obj.PDFHiddenText;
console.log("隐藏文字:", hiddenText);
书签管理相关接口
PdfAddCustomBookmark
语法:
javascript
PdfAddCustomBookmark(bUserSetPos, bkmkName, [pageNumber], [poxX], [poxY])
功能:
添加用户自定义书签。
参数:
名称 | 必选/可选 | 数据类型 | 说明 |
---|---|---|---|
bUserSetPos | 必选 | bool | 是否用户指定位置 |
bkmkName | 必选 | string | 书签名称 |
pageNumber | 可选 | long | 书签所在页码 |
posX | 可选 | long | 书签X坐标 |
posY | 可选 | long | 书签Y坐标 |
返回值:
无返回值
说明:
添加用户自定义书签。参数bUserSetPos值为false,则在当页面顶部位置插入自定义书签;值为true,则在参数pageNumber、posX、posY定义的位置处插入自定义书签。
使用示例:
javascript
// 在当前位置添加书签
Obj.PdfAddCustomBookmark(false, "重要章节");
// 在指定位置添加书签
Obj.PdfAddCustomBookmark(true, "第3章", 3, 100, 200);
PdfRemoveCustomBookmarkByIndex
语法:
javascript
PdfRemoveCustomBookmarkByIndex(index)
功能:
根据索引序号删除用户自定义书签。
参数:
名称 | 必选/可选 | 数据类型 | 说明 |
---|---|---|---|
index | 必选 | long | 用户自定义书签索引序号 |
返回值:
无返回值
说明:
根据索引序号删除用户自定义书签。
使用示例:
javascript
// 删除索引为0的书签
Obj.PdfRemoveCustomBookmarkByIndex(0);
PdfRemoveCustomBookmarkByName
语法:
javascript
PdfRemoveCustomBookmarkByName(bkmkName)
功能:
根据书签名称删除用户自定义书签。
参数:
名称 | 必选/可选 | 数据类型 | 说明 |
---|---|---|---|
bkmkName | 必选 | string | 用户自定义书签名称 |
返回值:
无返回值
说明:
根据书签名称删除用户自定义书签。
使用示例:
javascript
// 删除指定名称的书签
Obj.PdfRemoveCustomBookmarkByName("重要章节");
书签数据管理相关属性
PdfCustomBookmarksBase64
说明:
String型字符串;可读写;读取/设置PDF文档内用户自定义书签Base64值。
语法:
javascript
// 设置
Obj.PdfCustomBookmarksBase64 = BK_BASE64_VALUE;
// 读取
var bookmarksData = Obj.PdfCustomBookmarksBase64;
说明:
由于自定义书签并不属于PDF文档的一部分,所以自定义书签并不能像插入的图片那样随着PDF文档一起提交保存。因此,需要通过此属性提取出自定义书签的Base64数据到一个表单对象中,随文档控件的SaveToURL方法一并提交到服务器(也可以通过Ajax提交),单独存储到数据库独立字段中。在打开PDF文档时,再将存储的Base64数据赋给此属性就可以加载到PDF文档中。
使用示例:
javascript
// 提交时把书签数据赋给一个hide控件提交到服务器
document.getElementById("hidBKData").value = TANGER_OCX_OBJ.PdfCustomBookmarksBase64;
TANGER_OCX_OBJ.SaveToURL("../upLoadPdfFile.jsp?", "EDITFILE", "", "", 0);
// 打开文档时,可在OnDocumentOpened方法中加载书签数据
<script type="text/javascript" language="javascript" for="TANGER_OCX" event="OnDocumentOpened(TANGER_OCX_str,TANGER_OCX_obj);">
TANGER_OCX.PdfCustomBookmarksBase64 = bkData;
</script>
PdfCustomBookmarksCount
说明:
数值型;只读;统计PDF文档用户自定义书签总数。
语法:
javascript
// 读取
var bookmarksCount = Obj.PdfCustomBookmarksCount;
使用示例:
javascript
// 获取书签总数
var count = Obj.PdfCustomBookmarksCount;
console.log("书签总数:", count);
PdfCustomBookmarksName
说明:
数值型;只读;读取指定索引值的用户自定义书签名称。
语法:
javascript
// 读取
var bookmarkName = Obj.PdfCustomBookmarksName(index);
使用示例:
javascript
// 获取指定索引的书签名称
var bookmarkName = Obj.PdfCustomBookmarksName(0);
console.log("书签名称:", bookmarkName);
电子签章相关接口
AddPDFMultiPageSignFromEKEY
语法:
javascript
AddPDFMultiPageSignFromEKEY(signerName, l_SignType, l_signFrom, [v_SignTime], [v_Password], [v_IsUserSetPosition], [v_SignPosFlag], [v_PosX], [v_PosY], [v_IsPromptSelectSign], [v_SelSignIndex], [v_IsShowUI], [v_IsUseCertificate], [v_IsCheckDocChange], [v_IsAddComment], [v_PrintMode])
功能:
为PDF文档从EKEY添加批量签章。
参数:
名称 | 必选/可选 | 数据类型 | 说明 |
---|---|---|---|
signerName | 必选 | string | 签章用户名 |
l_SignType | 必选 | long | 签章类型 |
l_signFrom | 必选 | long | 签章来源 |
v_SignTime | 可选 | string | 签章时间 |
v_Password | 可选 | string | 印章密码 |
v_IsUserSetPosition | 可选 | bool | 是否允许设置签章位置 |
v_SignPosFlag | 可选 | bool | 骑缝章位置 |
v_PosX | 可选 | long | 左上角x坐标 |
v_PosY | 可选 | long | 左上角y坐标 |
v_IsPromptSelectSign | 可选 | bool | 是否弹出印章选择列表 |
v_SelSignIndex | 可选 | long | 默认选择印章索引 |
v_IsShowUI | 可选 | bool | 是否显示提示对话框 |
v_IsUseCertificate | 可选 | bool | 是否使用数字证书 |
v_IsCheckDocChange | 可选 | bool | 是否验证文档改变 |
v_IsAddComment | 可选 | bool | 是否添加批注 |
v_PrintMode | 可选 | long | 打印模式 |
返回值:
无返回值
说明:
为PDF文档从EKEY添加批量签章。
参数说明:
l_SignType
:签章类型,0=单个签章,1=多页签章即校核章,2=对称骑缝章,3=单侧骑缝章l_signFrom
:签章来源,1=从本地,2=从EKEY,3=从urlv_SignTime
:签章时间,必须使用"yyyy-MM-dd HH:mm:ss"的标准格式,如果为空则使用本机当前时间v_SelSignIndex
:默认选择指定印章,0-9对应十个印章位置,-1会弹出印章列表窗口v_IsUserSetPosition
:仅应用于校核章,是否允许用户自己设置签章位置v_SignPosFlag
:应用于对称骑缝章和单侧骑缝章,1=页面偏上,2=页面居中,3=页面偏下v_PrintMode
:打印模式,0=不打印,1=打印黑白,2=打印原样
AddPDFSecBarcode
语法:
javascript
AddPDFSecBarcode(signerName, [v_barCodeType], [v_SignTime], [v_Password], [v_IsUserSetPosition], [v_PageNumber], [v_PosX], [v_PosY], [v_IsShowUI], [v_IsUseCertificate], [v_IsCheckDocChange], [v_IsAddComment], [v_PrintMode])
功能:
为PDF添加一维码和二维码电子印章。
参数:
名称 | 必选/可选 | 数据类型 | 说明 |
---|---|---|---|
signerName | 必选 | string | 签章用户名 |
v_barCodeType | 可选 | long | 二维码类型 |
v_SignTime | 可选 | string | 签章时间 |
v_Password | 可选 | string | 印章密码 |
v_IsUserSetPosition | 可选 | bool | 是否允许设置签章位置 |
v_PageNumber | 可选 | long | 签章页索引 |
v_PosX | 可选 | long | 左上角x坐标 |
v_PosY | 可选 | long | 左上角y坐标 |
v_IsShowUI | 可选 | bool | 是否显示提示对话框 |
v_IsUseCertificate | 可选 | bool | 是否使用数字证书 |
v_IsCheckDocChange | 可选 | bool | 是否验证文档改变 |
v_IsAddComment | 可选 | bool | 是否添加批注 |
v_PrintMode | 可选 | long | 打印模式 |
返回值:
无返回值
说明:
为PDF添加一维码和二维码电子印章。
AddPDFSecHandSign
语法:
javascript
AddPDFSecHandSign(signerName, [v_SignTime], [v_Password], [v_IsUserSetPosition], [v_PageNumber], [v_PosX], [v_PosY], [v_IsShowUI], [v_IsUseCertificate], [v_IsCheckDocChange], [v_IsAddComment], [v_PrintMode])
功能:
为PDF添加安全手写签名。
参数:
名称 | 必选/可选 | 数据类型 | 说明 |
---|---|---|---|
signerName | 必选 | string | 签章用户名 |
v_SignTime | 可选 | string | 签章时间 |
v_Password | 可选 | string | 印章密码 |
v_IsUserSetPosition | 可选 | bool | 是否允许设置签章位置 |
v_PageNumber | 可选 | long | 签章页索引 |
v_PosX | 可选 | long | 左上角x坐标 |
v_PosY | 可选 | long | 左上角y坐标 |
v_IsShowUI | 可选 | bool | 是否显示提示对话框 |
v_IsUseCertificate | 可选 | bool | 是否使用数字证书 |
v_IsCheckDocChange | 可选 | bool | 是否验证文档改变 |
v_IsAddComment | 可选 | bool | 是否添加批注 |
v_PrintMode | 可选 | long | 打印模式 |
返回值:
无返回值
说明:
为PDF添加安全手写签名。
使用示例:
javascript
// 添加安全手写签名
Obj.AddPDFSecHandSign("ntko", "2013-02-01 12:02:14", "", true, 2, 10, 100, true, true, true, false, 2);
AddPDFSecKeyboardComment
语法:
javascript
AddPDFSecKeyboardComment(signerName, [v_SignTime], [v_Password], [v_IsUserSetPosition], [v_PageNumber], [v_PosX], [v_PosY], [v_IsShowUI], [v_IsUseCertificate], [v_IsCheckDocChange], [v_IsAddComment], [v_PrintMode])
功能:
为PDF添加安全键盘批注。
参数:
名称 | 必选/可选 | 数据类型 | 说明 |
---|---|---|---|
signerName | 必选 | string | 签章用户名 |
v_SignTime | 可选 | string | 签章时间 |
v_Password | 可选 | string | 印章密码 |
v_IsUserSetPosition | 可选 | bool | 是否允许设置签章位置 |
v_PageNumber | 可选 | long | 签章页索引 |
v_PosX | 可选 | long | 左上角x坐标 |
v_PosY | 可选 | long | 左上角y坐标 |
v_IsShowUI | 可选 | bool | 是否显示提示对话框 |
v_IsUseCertificate | 可选 | bool | 是否使用数字证书 |
v_IsCheckDocChange | 可选 | bool | 是否验证文档改变 |
v_IsAddComment | 可选 | bool | 是否添加批注 |
v_PrintMode | 可选 | long | 打印模式 |
返回值:
无返回值
说明:
为PDF添加安全键盘批注。
使用示例:
javascript
// 添加安全键盘批注
Obj.AddPDFSecKeyboardComment("ntko", "2013-02-01 12:02:14", "", true, 2, 10, 100, true, true, true, false, 2);
AddPDFSecSignFromEKEY
语法:
javascript
AddPDFSecSignFromEKEY(signerName, [v_SignTime], [v_Password], [v_IsUserSetPosition], [v_PageNumber], [v_PosX], [v_PosY], [v_IsPromptSelectSign], [v_SelSignIndex], [v_IsShowUI], [v_IsUseCertificate], [v_IsCheckDocChange], [v_IsAddComment], [v_PrintMode])
功能:
为PDF从EKEY添加安全印章。
参数:
名称 | 必选/可选 | 数据类型 | 说明 |
---|---|---|---|
signerName | 必选 | string | 签章用户名 |
v_SignTime | 可选 | string | 签章时间 |
v_Password | 可选 | string | 印章密码 |
v_IsUserSetPosition | 可选 | bool | 是否允许设置签章位置 |
v_PageNumber | 可选 | long | 签章页索引 |
v_PosX | 可选 | long | 左上角x坐标 |
v_PosY | 可选 | long | 左上角y坐标 |
v_IsPromptSelectSign | 可选 | bool | 是否弹出印章选择列表 |
v_SelSignIndex | 可选 | long | 默认选择印章索引 |
v_IsShowUI | 可选 | bool | 是否显示提示对话框 |
v_IsUseCertificate | 可选 | bool | 是否使用数字证书 |
v_IsCheckDocChange | 可选 | bool | 是否验证文档改变 |
v_IsAddComment | 可选 | bool | 是否添加批注 |
v_PrintMode | 可选 | long | 打印模式 |
返回值:
无返回值
说明:
为PDF从EKEY添加安全印章。
使用示例:
javascript
// 从EKEY添加安全印章
Obj.AddPDFSecSignFromEKEY("ntko", "2013-02-01 12:02:14", "", true, 2, 10, 100, true, true, true, true, false, 2);
接口分类总结
分类 | 接口 | 功能 | 说明 |
---|---|---|---|
水印管理 | AddPicWaterMarkFromUrl | 从URL添加图片水印 | 支持URL图片水印 |
AddPicWatermarkFromLocal | 从本地添加图片水印 | 支持本地图片水印 | |
AddTextWaterMark | 添加文字水印 | 支持文字水印 | |
页面导航 | GotoPDFPage | 跳转到指定页 | 页面导航功能 |
文本搜索 | BeginPDFFindNextText | 查找下一处匹配字符 | 文本搜索功能 |
BeginPDFFindPrevText | 查找上一处匹配字符 | 文本搜索功能 | |
文本隐藏 | PDFHiddenText | 设置/读取隐藏文字 | 文本隐藏功能 |
书签管理 | PdfAddCustomBookmark | 添加自定义书签 | 书签管理功能 |
PdfRemoveCustomBookmarkByIndex | 根据索引删除书签 | 书签管理功能 | |
PdfRemoveCustomBookmarkByName | 根据名称删除书签 | 书签管理功能 | |
书签数据 | PdfCustomBookmarksBase64 | 书签Base64数据 | 书签数据管理 |
PdfCustomBookmarksCount | 书签总数 | 书签统计功能 | |
PdfCustomBookmarksName | 书签名称 | 书签名称获取 | |
电子签章 | AddPDFMultiPageSignFromEKEY | 批量签章 | 批量签章功能 |
AddPDFSecBarcode | 二维码签章 | 二维码签章功能 | |
AddPDFSecHandSign | 手写签名 | 手写签名功能 | |
AddPDFSecKeyboardComment | 键盘批注 | 键盘批注功能 | |
AddPDFSecSignFromEKEY | EKEY签章 | EKEY签章功能 |
使用流程
1. PDF文档处理流程
javascript
// PDF文档处理流程
function processPDFDocument() {
try {
// 1. 添加水印
Obj.AddTextWaterMark("机密文档", -1, 2, false, 50);
// 2. 添加书签
Obj.PdfAddCustomBookmark(false, "重要章节");
// 3. 添加签章
Obj.AddPDFSecSignFromEKEY("ntko", "2023-01-01 12:00:00", "", true, 1, 100, 100);
console.log("PDF文档处理完成");
} catch (error) {
console.error("PDF文档处理失败:", error.message);
}
}
2. 书签管理流程
javascript
// 书签管理流程
function manageBookmarks() {
try {
// 添加书签
Obj.PdfAddCustomBookmark(false, "第1章");
Obj.PdfAddCustomBookmark(false, "第2章");
// 获取书签信息
var count = Obj.PdfCustomBookmarksCount;
console.log("书签总数:", count);
// 获取书签名称
for (var i = 0; i < count; i++) {
var name = Obj.PdfCustomBookmarksName(i);
console.log("书签", i, ":", name);
}
// 保存书签数据
var bookmarksData = Obj.PdfCustomBookmarksBase64;
document.getElementById("hidBKData").value = bookmarksData;
} catch (error) {
console.error("书签管理失败:", error.message);
}
}
3. 电子签章流程
javascript
// 电子签章流程
function addElectronicSignature() {
try {
// 添加手写签名
Obj.AddPDFSecHandSign(
"张三",
"2023-01-01 12:00:00",
"",
true,
1,
100,
100,
true,
true,
true,
false,
2
);
// 添加键盘批注
Obj.AddPDFSecKeyboardComment(
"李四",
"2023-01-01 12:30:00",
"",
true,
2,
200,
200,
true,
true,
true,
false,
2
);
console.log("电子签章添加完成");
} catch (error) {
console.error("电子签章添加失败:", error.message);
}
}
注意事项
- C/S环境专用:这些接口主要用于C/S环境开发,无法通过ActiveDocument对象调用时使用
- PDF插件依赖:需要先配置PDF插件支持才能使用这些接口
- 参数格式:签章时间必须使用"yyyy-MM-dd HH:mm:ss"格式
- 坐标系统:坐标参数使用PDF文档的坐标系统
- 权限要求:某些功能可能需要特定的权限设置
- 兼容性:确保PDF插件版本与控件版本兼容
- 错误处理:实现完善的错误处理机制
错误处理
javascript
// PDF插件错误处理
function handlePDFPluginError(operation, error) {
console.error("PDF插件操作失败:", operation, error.message);
switch(operation) {
case 'AddTextWaterMark':
console.log("水印添加失败,请检查:");
console.log("1. PDF文档是否已打开");
console.log("2. 页码参数是否正确");
console.log("3. 水印参数是否有效");
break;
case 'PdfAddCustomBookmark':
console.log("书签添加失败,请检查:");
console.log("1. 书签名称是否有效");
console.log("2. 页码参数是否正确");
console.log("3. 坐标参数是否有效");
break;
case 'AddPDFSecSignFromEKEY':
console.log("签章添加失败,请检查:");
console.log("1. EKEY是否正确连接");
console.log("2. 签章参数是否正确");
console.log("3. 权限设置是否有效");
break;
default:
console.log("未知PDF插件操作失败");
}
}
最佳实践
1. 水印管理
javascript
// 水印管理最佳实践
function watermarkManagement() {
try {
// 添加文字水印
Obj.AddTextWaterMark("机密文档", -1, 2, false, 50);
// 添加图片水印
Obj.AddPicWatermarkFromLocal("C:\\watermark.png", -1, 2, false, 50);
console.log("水印添加成功");
} catch (error) {
console.error("水印添加失败:", error.message);
}
}
2. 书签数据管理
javascript
// 书签数据管理最佳实践
function bookmarkDataManagement() {
try {
// 添加书签
Obj.PdfAddCustomBookmark(false, "重要章节");
// 获取书签数据
var bookmarksData = Obj.PdfCustomBookmarksBase64;
// 保存到隐藏字段
document.getElementById("hidBKData").value = bookmarksData;
// 提交到服务器
Obj.SaveToURL("../upLoadPdfFile.jsp?", "EDITFILE", "", "", 0);
console.log("书签数据管理完成");
} catch (error) {
console.error("书签数据管理失败:", error.message);
}
}
3. 电子签章管理
javascript
// 电子签章管理最佳实践
function electronicSignatureManagement() {
try {
// 检查EKEY连接
if (Obj.IsEkeyConnected) {
// 添加EKEY签章
Obj.AddPDFSecSignFromEKEY("ntko", "2023-01-01 12:00:00", "", true, 1, 100, 100);
} else {
// 添加手写签名
Obj.AddPDFSecHandSign("用户", "2023-01-01 12:00:00", "", true, 1, 100, 100);
}
console.log("电子签章管理完成");
} catch (error) {
console.error("电子签章管理失败:", error.message);
}
}
技术要点
- C/S环境专用:这些接口专门为C/S环境设计
- PDF插件依赖:需要先配置PDF插件支持
- 参数格式:签章时间必须使用标准格式
- 坐标系统:使用PDF文档的坐标系统
- 权限管理:某些功能需要特定权限
- 兼容性:确保插件版本兼容
- 错误处理:完善的错误处理机制
总结
PDF插件相关接口为软航OFFICE文档控件提供了强大的PDF文档处理能力,包括水印管理、页面导航、文本搜索、书签管理、电子签章等功能。这些接口专门为C/S环境设计,为开发者提供了丰富的PDF文档操作能力,大大提升了控件的PDF文档处理功能。