0

フォルダ内にPDFを出力する簡単なPythonスクリプトがあります。ユーザーがスクリプトに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

別のforループのように単純なものを考えて、コピー数を読み取り、それを何度もループさせます(つまり、ユーザーが3つのコピーを必要とする場合、ループはこれを読み取り、印刷ループを2回ループします)

これが理にかなっていることを願っています。任意の提案をいただければ幸いです。

マイク

4

1 に答える 1

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)
于 2012-05-30T22:21:27.810 に答える