TC官方合作论坛

 找回密码
 立即注册
查看: 993|回复: 6

[功能] 调用VBS实现PDF文档合并

[复制链接]
发表于 2023-10-26 00:19:24 | 显示全部楼层 |阅读模式

马上加入TC

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
功能 按钮1_点击()
    变量 strProgram,VBS
    strProgram = "Dim app, srcDoc, destDoc \r\n"
    strProgram = strProgram & "Set app = CreateObject(\"AcroExch.App\") \r\n"
    strProgram = strProgram & "Set srcDoc = CreateObject(\"AcroExch.PDDoc\") \r\n"
    strProgram = strProgram & "Set destDoc = CreateObject(\"AcroExch.PDDoc\") \r\n"
    strProgram = strProgram & "srcPath=\"C:\\Users\\ZM\\Desktop\\cs.pdf\" \r\n"
    strProgram = strProgram & "destPath=\"C:\\Users\\ZM\\Desktop\\SS.pdf\" \r\n"
    strProgram = strProgram & "srcDoc.Open srcPath \r\n"
    strProgram = strProgram & "destDoc.Open destPath \r\n"
    strProgram = strProgram & "destDoc.Create \r\n"
    //strProgram = strProgram & "For i=1 to 10 \r\n"
    strProgram = strProgram & "destDoc.InsertPages destDoc.GetNumPages()-1, srcDoc, 0, srcDoc.GetNumPages(), 0 \r\n"
    //strProgram = strProgram & "next \r\n"
    strProgram = strProgram & "destDoc.Save 0, destPath \r\n"
    strProgram = strProgram & "srcDoc.Close \r\n"
    strProgram = strProgram & "destDoc.Close \r\n"
    strProgram = strProgram & "app.Exit"
    VBS = com("ScriptControl")
    VBS.language = "VBScript"
    VBS.addcode(strProgram)
结束

/////TC直接调用AcroExch对象插入页不执行,有需要的可以研究一下
功能 按钮0_点击()
    变量 pac = "C:\\Users\\ZM\\Desktop\\ss.pdf"
    变量 pac2 = "C:\\Users\\ZM\\Desktop\\cs.pdf"
    变量 AcroPDDoc = 插件("AcroExch.PDDoc")
    变量 AcroPDDoc2 = 插件("AcroExch.PDDoc")
    AcroPDDoc.Open(pac)
    变量 ok = AcroPDDoc2.Open(pac2)
    变量 GetNumPdf = AcroPDDoc.GetNumPages()
    变量 GetNumPdf2 = AcroPDDoc2.GetNumPages()
    如果(ok == 0)
        AcroPDDoc2.Create()
    结束
    变量 插入页 = null
    如果(GetNumPdf2 == -1)
        插入页 = -1
    否则
        插入页 = GetNumPdf2 - 1
    结束
    AcroPDDoc2.InsertPages(插入页, AcroPDDoc, 0, GetNumPdf, 1)//该处不执行 ,有需要的可以研究一下
    AcroPDDoc2.Save(1, pac2)
    调试输出("成功")
    AcroPDDoc = null
    AcroPDDoc2 = null
    AcroPDDoc.Close()
    AcroPDDoc2.Close()
结束

评分

参与人数 2威望 +11 金币 +11 收起 理由
cjxdn + 10 + 10 很给力!
yuzhiboqianyuan + 1 + 1 感谢分享!

查看全部评分

回复

使用道具 举报

发表于 2024-7-12 19:39:44 来自手机 | 显示全部楼层
请问如何调用vbs打印PDF
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-7-15 17:42:57 | 显示全部楼层
sxw005 发表于 2024-7-12 19:39
请问如何调用vbs打印PDF

安装有pdf阅读器,如Adobe Acrobat DC,可以使用:CMD命令:"C:\Program Files\Adobe\Acrobat DC\Acrobat\Acrobat.exe" /p /h "C:\Users\Gowey\Desktop\车险.pdf" "办公室打印机"
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-7-15 17:44:16 | 显示全部楼层
VBS:同样需要安装有pdf阅读器,
Dim pdfFilePath, printerName,printEXE
pdfFilePath = "C:\Users\Gowey\Desktop\车险.pdf"
printerName = "办公室打印机"
printEXE="C:\Program Files\Adobe\Acrobat DC\Acrobat\Acrobat.exe"
Dim args
args = """" & printEXE & """" & " /p /h " & """" &  printerName  & """ " & """" &pdfFilePath& """"
Dim shell
Set shell = CreateObject("WScript.Shell")
shell.Run args,1,true
Set shell = Nothing
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-7-15 18:21:23 | 显示全部楼层
直接调接口也行:Dim AcroApp,AcroAVDoc,AcroPDDoc,FileName,num
Set AcroApp = CreateObject("AcroExch.App")
Set AcroAVDoc = CreateObject("AcroExch.AVDoc")
FileName="C:\Users\Gowey\Desktop\车险.pdf"
AcroAVDoc.Open FileName, ""
Set AcroPDDoc = AcroAVDoc.GetPDDoc
num = AcroPDDoc.GetNumPages - 1
AcroAVDoc.PrintPages 0, num, 1, False, False
AcroAVDoc.Close False
AcroApp.Exit
Set AcroPDDoc = Nothing
Set AcroAVDoc = Nothing
Set AcroApp = Nothing
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-7-15 18:47:46 | 显示全部楼层
Dim AcroApp,AcroAVDoc,AcroPDDoc,FileName,num
Set AcroApp = CreateObject("AcroExch.App")
Set AcroAVDoc = CreateObject("AcroExch.AVDoc")
FileName="C:\Users\Gowey\Desktop\青神技术总结2024.pdf"
AcroAVDoc.Open FileName, ""
Set AcroPDDoc = AcroAVDoc.GetPDDoc
num = AcroPDDoc.GetNumPages - 1
AcroAVDoc.PrintPages 0, num, True, False, False
AcroAVDoc.Close False
AcroApp.Exit
Set AcroPDDoc = Nothing
Set AcroAVDoc = Nothing
Set AcroApp = Nothing
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-7-15 20:23:52 | 显示全部楼层
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条

关闭

小黑屋|TC官方合作论坛 (苏ICP备18045623号)

GMT+8, 2024-9-29 12:43 , Processed in 0.052926 second(s), 23 queries .

Powered by 海安简单软件服务部

© 2008-2019 版权所有 保留所有权利

快速回复 返回顶部 返回列表