Pythonでlprをどのように呼び出すことができますか?
驚くべきことに、それはsysモジュールにはありません。
擬似コードで示すように、lprを使用することを目指しています
10*i for i in range(77):
lpr --pages(i,i+1) file.pdf
まず、疑似コードがわかりません。(10*i for i in range(77):
この場合、どういう意味ですか?)
通常、subprocess.Popen
外部コマンドを実行するために使用します。ActiveState レシピ 511505は、特に を使用した例を示していlpr
ます。lpr
基本的に、次のように呼び出すことができます。
subprocess.Popen(['lpr', 'some_filename'])
ただし、 のバージョンによってはlpr
、すべてのページのサブセットを選択するオプションがない場合や、この機能がdvi ファイルなどでのみ使用できる場合があります。
編集: PDF ファイルの選択したページを印刷したいようですので、PDF ツールキットをご覧ください。そのソフトウェアは、分割機能を提供しているようです。また、PDF ファイルの直接印刷がサポートされていることを確認してください。最初に入力をポストスクリプトに変換する必要があるかもしれません (例: を使用pdf2ps
)。もちろん、これらのタスクを自動化することもできますsubprocess.Popen
。
コマンドラインから呼び出すだけです:
import commands
for i in range(77):
# I'm making no assumptions about lpr command syntax here.
cmd = "lpr --pages(%s,%s) file.pdf" % (2*i, 2*i+1)
commands.getoutput(cmd)
そんな感じ。
試したことはありませんが、pycupsはカップ用のPythonバインディングのようです。