使用循环打印副本,Python

时间:2012-05-30 22:10:59

标签: python winapi

我有一个简单的python脚本,可以在文件夹中打印pdf。我希望用户能够使脚本打印pdf的多个副本。

这是脚本:

import arcpy, glob, win32api, os

pdfLoc = arcpy.GetParameterAsText(0)

# Loop through pdf directory and print from pdf
for pdfname in glob.glob(os.path.join(pdfLoc, "*.pdf")):

    fullpath = os.path.join(pdfLoc, pdfname)
    #print filename
    win32api.ShellExecute(0, "print", pdfname, None, ".", 0)


del fullpath
del pdfname
del pdfLoc

我正在考虑像另一个简单的循环来读取副本并使其多次循环(即如果用户想要3个副本,循环将读取此内容并在打印循环中循环2次)< / p>

我希望这是有道理的。任何建议都表示赞赏。

麦克

1 个答案:

答案 0 :(得分:2)

这与你想要做的非常接近。此示例从可选的额外命令行参数中获取副本数,然后打印每个文档的多个副本:

import sys, glob, win32api, os

pdfLoc = sys.argv[1]
try:
    copies = int(sys.argv[2])
except:
    copies = 1

for pdfname in glob.glob(os.path.join(pdfLoc, "*.pdf")):
    fullpath = os.path.join(pdfLoc, pdfname)
    for copy in range(copies):
        win32api.ShellExecute(0, "print", pdfname, None, ".", 0)