Python で PDF ファイルを印刷する | PDF をプリンターに印刷 | PDFの印刷

PDF ドキュメントの印刷は、アプリケーション開発における一般的な要件です。レポート、請求書、またはその他の種類のドキュメントを生成する場合でも、PDF ファイルをコードからプリンターに直接印刷することは貴重な機能となります。このブログ投稿では、Python で PDF ファイルをプリンターに印刷する方法を学びます。

この記事では次のトピックについて説明します。

PDFをプリンターに印刷するためのPythonライブラリ

Python で PDF ファイルをプログラム的に印刷するには、Aspose.PDF for Python via .NET ライブラリを使用します。簡単なインストールと使用法で、Python コードを使用して PDF ファイルをプリンターに送信するための効率的なソリューションを提供します。 Aspose.PDF for Python を使用すると、開発者は Python アプリケーションで PDF ドキュメントを生成、操作、変換できます。

Python で PDF ドキュメントの印刷を開始するには、まず必要なライブラリをインストールする必要があります。コンソールで次の pip コマンドを使用して、パッケージをダウンロードするか、PyPI から API をインストールしてください。

> pip install aspose-pdf

以下の手順に従って、Python でプログラム的に PDF ファイルを簡単に印刷できます。

  1. PdfViewer クラスのインスタンスを作成します。
  2. bindpdf() メソッドを使用して、入力 PDF ドキュメントをロードします。
  3. その後、printdocument() メソッドを呼び出して PDF ファイルを印刷します。
  4. 最後に、close() メソッドを使用して PDF ビューアを閉じます。

次のコード サンプルは、Python で PDF ファイルを印刷する方法を示しています。

# このコード例は、Python で PDF ファイルを印刷する方法を示します。
import aspose.pdf as ap

# PdfViewer オブジェクトを作成する
viewer = ap.facades.PdfViewer();

# 入力 PDF ファイルを開く
viewer.bind_pdf("Document.pdf");

# PDF ドキュメントを印刷する
viewer.print_document();

# PDFファイルを閉じる
viewer.close();

以下の手順に従って、Python のフォルダーから PDF ファイルをバッチ印刷することもできます。

  1. 指定されたフォルダー パスから PDF ファイルを読み込みます。
  2. すべての PDF ファイルをループします。
  3. PdfViewer クラスのインスタンスを作成します。
  4. bindpdf() メソッドを使用して、各入力 PDF ファイルを 1 つずつバインドします。
  5. その後、printdocument() メソッドを呼び出して PDF ファイルを印刷します。
  6. 最後に、close() メソッドを使用して PDF ビューアを閉じます。

次のコード サンプルは、Python で複数の PDF ファイルを印刷する方法を示しています。

# このコード例は、Python で複数の PDF ファイルを一度に印刷する方法を示します。
import os
import aspose.pdf as ap

# 印刷する PDF ファイルを含むディレクトリ パス
path = "D:\\Files\\"

# PDF ファイルを入手する
files = [f for f in os.listdir(path) if f.endswith(".pdf")]

# すべてのファイルを読んで印刷する
for file in files:
    # PdfViewer オブジェクトを作成する
    viewer = ap.facades.PdfViewer();
    
    # 入力 PDF ファイルを開く
    viewer.bind_pdf(path + file);
    
    # PDF ドキュメントを印刷する
    viewer.print_document();
    
    # PDFファイルを閉じる
    viewer.close();

場合によっては、PDF ドキュメントから特定の範囲のページを印刷する必要がある場合があります。この目的のために、開始ページ番号と終了ページ番号を指定する必要があります。以下の手順に従って、ページ範囲を印刷できます。

  1. PdfViewer クラスのインスタンスを作成します。
  2. bindpdf() メソッドを使用して、入力 PDF ドキュメントをロードします。
  3. 必要に応じて、自動サイズ変更、自動回転などのさまざまなビューア属性を指定します。
  4. PageSettings クラスのインスタンスを作成します。
  5. PrinterSettings クラス オブジェクトを初期化します。
  6. printrange、frompage、toppage プロパティを指定します。
  7. その後、viewer.printdocumentwithsettings() メソッドを呼び出し、プリンターとページ設定を使用してドキュメントを印刷します。
  8. 最後に、close() メソッドを使用して PDF ビューアを閉じます。

次のコード サンプルは、Python で PDF ドキュメントの特定のページを印刷する方法を示しています。

# このコード例は、Python で PDF ファイルから一定範囲のページを印刷する方法を示します。
import aspose.pdf as ap

# PdfViewer オブジェクトを作成する
viewer = ap.facades.PdfViewer();

# 入力 PDF ファイルを開く
viewer.bind_pdf("Document.pdf");

# 印刷用の属性を設定する
viewer.auto_resize = True
viewer.auto_rotate = True
viewer.print_page_dialog = False

# プリンターとページ設定および PrintDocument のオブジェクトを作成する
pgs = ap.printing.PageSettings();
ps = ap.printing.PrinterSettings();

# プリンター名の設定
ps.printer_name = "Microsoft Print to PDF";

ps.print_range = ap.printing.PrintRange.SOME_PAGES;
ps.from_page = 1;
ps.to_page = 2;

# プリンターとページ設定を使用してドキュメントを印刷する
viewer.print_document_with_settings(pgs, ps);

# PDFファイルを閉じる
viewer.close();

PDF を印刷するためのページ サイズを指定する

同様に、前述の手順に従って、PDF ファイルを印刷するときにページ サイズを指定することもできます。ただし、手順 6 で、PaperSize クラスを使用して用紙サイズを指定し、Margins クラスを使用して余白を指定するだけです。

次のコード サンプルは、Python を使用して PDF ドキュメントを特定のページ サイズと余白で印刷する方法を示しています。

# このコード例は、Python で PDF ファイルから一定範囲のページを印刷する方法を示します。
import aspose.pdf as ap

# PdfViewer オブジェクトを作成する
viewer = ap.facades.PdfViewer();

# 入力 PDF ファイルを開く
viewer.bind_pdf("Document.pdf");

# 印刷用の属性を設定する
viewer.auto_resize = True
viewer.auto_rotate = True
viewer.print_page_dialog = False

# プリンターとページ設定および PrintDocument のオブジェクトを作成する
pgs = ap.printing.PageSettings();
ps = ap.printing.PrinterSettings();

# プリンター名の設定
ps.printer_name = "Microsoft Print to PDF";

ps.print_range = ap.printing.PrintRange.SOME_PAGES;
ps.from_page = 1;
ps.to_page = 2;

# PageSize を設定します (必要な場合)
pgs.paper_size = ap.printing.PaperSize("A4", 827, 1169);

# PageMargins を設定する (必要な場合)
pgs.margins = ap.devices.Margins(0, 0, 0, 0);

# プリンターとページ設定を使用してドキュメントを印刷する
viewer.print_document_with_settings(pgs, ps);

# PDFファイルを閉じる
viewer.close();

以下の手順に従って、セキュリティで保護された PDF ファイルまたはパスワードで保護された PDF ファイルを印刷できます。

  1. Document クラスを使用して、パスワードで保護された PDF を読み込みます。
  2. PdfViewer クラスのインスタンスを作成します。
  3. bindpdf() メソッドを使用して PDF ドキュメントをバインドします。
  4. その後、printdocument() メソッドを呼び出して PDF ファイルを印刷します。
  5. 最後に、close() メソッドを使用して PDF ビューアを閉じます。

次のコード サンプルは、Python でセキュリティで保護された PDF ファイルを印刷する方法を示しています。

# ユーザーまたは所有者のパスワードを指定して安全な PDF ドキュメントをロードする
document = ap.Document("Password.pdf" , "userORowner");

# PdfViewer オブジェクトを作成する
viewer = ap.facades.PdfViewer();

# 入力 PDF ファイルを開く
viewer.bind_pdf(document);

# PDFドキュメントを印刷する
viewer.print_document();

# PDFファイルを閉じる
viewer.close();

以下の手順に従って、PDF ドキュメントをグレースケールで印刷できます。

  1. Document クラスを使用して、入力 PDF ドキュメントを読み込みます。
  2. RgbToDeviceGrayConversionStrategy クラス オブジェクトを初期化します。
  3. すべてのページをループし、strategy.convert() メソッドを使用して GrayScale に変換します。
  4. PdfViewer クラスのインスタンスを作成します。
  5. bindpdf() メソッドを使用して PDF ドキュメントをバインドします。
  6. その後、printdocument() メソッドを呼び出して PDF ファイルを印刷します。
  7. 最後に、close() メソッドを使用して PDF ビューアを閉じます。

次のコード サンプルは、Python を使用して PDF をグレースケールに変換し、印刷する方法を示しています。

# このコード例は、Python で PDF ファイルをグレースケールとして印刷する方法を示します。
import aspose.pdf as ap

# 入力された PDF ドキュメントをロードします
document = ap.Document("D:\\Files\\Output.pdf");

# RGB からデバイス Gry への変換戦略を開始する
strategy = ap.RgbToDeviceGrayConversionStrategy();

# すべてのページをループします
for page in document.pages:
    # RGB カラースペース画像を GrayScale カラースペースに変換します
    strategy.convert(page);

# PdfViewer オブジェクトを作成する
viewer = ap.facades.PdfViewer();

# 入力 PDF ファイルを開く
viewer.bind_pdf(document);

# PDFドキュメントを印刷する
viewer.print_document();

# PDFファイルを閉じる
viewer.close();

無料ライセンスを取得する

評価制限なしでライブラリを使用するには、一時ライセンスを取得できます。

PDF を印刷 – 無料リソース

Python で PDF をプリンターに印刷するだけでなく、PDF ドキュメントの作成、操作、変換について詳しく学び、以下のリソースを使用してライブラリのその他のさまざまな機能を調べてください。

結論

この記事では、Python で PDF ファイルを印刷する方法を学びました。 Aspose.PDF for Python を利用すると、Python コード内から PDF ファイルをプリンタに簡単に送信できます。この強力な機能により、ユーザーはさまざまなアプリケーション間でレポートを生成し、ドキュメントのワークフローをシームレスに管理できるようになります。このブログ投稿で説明されている手順に従うことで、PDF の印刷タスクを自動化できます。不明な点がある場合は、無料サポート フォーラムまでお気軽にお問い合わせください。

関連項目