1

Pythonでlprをどのように呼び出すことができますか?

驚くべきことに、それはsysモジュールにはありません。

擬似コードで示すように、lprを使用することを目指しています

10*i for i in range(77):              
      lpr --pages(i,i+1) file.pdf
4

3 に答える 3

5

まず、疑似コードがわかりません。(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

于 2009-11-26T18:06:57.180 に答える
2

コマンドラインから呼び出すだけです:

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)

そんな感じ。

于 2009-11-26T18:05:44.407 に答える
0

試したことはありませんが、pycupsはカップ用のPythonバインディングのようです。

http://cyberelk.net/tim/software/pycups/

于 2009-11-26T18:26:49.527 に答える