ADOBE VBS 脚本设置/设置
ADOBE VBS Script setup / settings
我有一个漂亮整洁的 VBS 脚本,它打印所有拖到此 VBS 的文档的前 5 页。
set WshShell = CreateObject ("Wscript.Shell")
set fs = CreateObject("Scripting.FileSystemObject")
Set objArgs = WScript.Arguments
if objArgs.Count < 1 then
msgbox("Please drag a file on the script")
WScript.quit
end if
'contact Acrobat
Set gApp = CreateObject("AcroExch.App")
gApp.show 'comment or take out to work in hidden mode
'open via Avdoc and print
for i=0 to objArgs.Count - 5
FileIn = ObjArgs(i)
Set AVDoc = CreateObject("AcroExch.AVDoc")
If AVDoc.Open(FileIn, "") Then
Set PDDoc = AVDoc.GetPDDoc()
Set JSO = PDDoc.GetJSObject
jso.print false, 0, 0, true
gApp.CloseAllDocs
end if
next
gApp.hide : gApp.exit : Quit()
MsgBox "Done!"
Sub Quit
Set JSO = Nothing : Set PDDoc = Nothing : Set gApp =Nothing : Wscript.quit
End Sub
我的问题是关于设置的。
我想知道如何设置此 VBS 将前 6 页双面打印,等等。是否有可用设置列表?
Deniiiis,-- 如果您更改:
"for i=0 to objArgs.Count - 5"(不打印最后 4 个文件)到
for i=0 to objArgs.Count - 1
和"jso.print false, 0, 0, true"(只打印第一页)到
jso.print false, 0, 4, true
然后脚本将执行您假设的操作。
如果你想双面打印你必须使用js打印参数pageHandling。 "Multiple Pages Per Sheet is obtained by setting pageHandling to nUp." 您必须决定是要使用 "nUpNumPagesH" 进行水平布局还是使用 "nUpNumPagesV" 进行垂直布局 - 或两者兼而有之。
您可以在此处找到示例和解释(在 nUpNumPagesH 下):
http://help.adobe.com/livedocs/acrobat_sdk/9.1/Acrobat9_1_HTMLHelp/wwhelp/wwhimpl/js/html/wwhelp.htm?href=JS_API_AcroJS.88.981.html&accessible=true
示例是用Acro-js代码编写的。您必须在 VBS 中转换为 jso(JavaScript 对象),然后脚本才能执行您想要的操作。
如果您需要更多帮助,请不要犹豫,莱因哈德
PS:到时候您可以在 Acro JS 帮助文件/JS API 参考中阅读一些您使用的语句:-)
我有一个漂亮整洁的 VBS 脚本,它打印所有拖到此 VBS 的文档的前 5 页。
set WshShell = CreateObject ("Wscript.Shell")
set fs = CreateObject("Scripting.FileSystemObject")
Set objArgs = WScript.Arguments
if objArgs.Count < 1 then
msgbox("Please drag a file on the script")
WScript.quit
end if
'contact Acrobat
Set gApp = CreateObject("AcroExch.App")
gApp.show 'comment or take out to work in hidden mode
'open via Avdoc and print
for i=0 to objArgs.Count - 5
FileIn = ObjArgs(i)
Set AVDoc = CreateObject("AcroExch.AVDoc")
If AVDoc.Open(FileIn, "") Then
Set PDDoc = AVDoc.GetPDDoc()
Set JSO = PDDoc.GetJSObject
jso.print false, 0, 0, true
gApp.CloseAllDocs
end if
next
gApp.hide : gApp.exit : Quit()
MsgBox "Done!"
Sub Quit
Set JSO = Nothing : Set PDDoc = Nothing : Set gApp =Nothing : Wscript.quit
End Sub
我的问题是关于设置的。
我想知道如何设置此 VBS 将前 6 页双面打印,等等。是否有可用设置列表?
Deniiiis,-- 如果您更改:
"for i=0 to objArgs.Count - 5"(不打印最后 4 个文件)到
for i=0 to objArgs.Count - 1
和"jso.print false, 0, 0, true"(只打印第一页)到
jso.print false, 0, 4, true
然后脚本将执行您假设的操作。
如果你想双面打印你必须使用js打印参数pageHandling。 "Multiple Pages Per Sheet is obtained by setting pageHandling to nUp." 您必须决定是要使用 "nUpNumPagesH" 进行水平布局还是使用 "nUpNumPagesV" 进行垂直布局 - 或两者兼而有之。
您可以在此处找到示例和解释(在 nUpNumPagesH 下): http://help.adobe.com/livedocs/acrobat_sdk/9.1/Acrobat9_1_HTMLHelp/wwhelp/wwhimpl/js/html/wwhelp.htm?href=JS_API_AcroJS.88.981.html&accessible=true
示例是用Acro-js代码编写的。您必须在 VBS 中转换为 jso(JavaScript 对象),然后脚本才能执行您想要的操作。
如果您需要更多帮助,请不要犹豫,莱因哈德
PS:到时候您可以在 Acro JS 帮助文件/JS API 参考中阅读一些您使用的语句:-)