PDF は業界で広く使用されているドキュメント共有形式であるため、Word ドキュメントを PDF 形式で共有するのが一般的です。 Microsoft Office が提供する組み込み機能を使用して Word を PDF に簡単に変換できますが、Word 文書 (DOC または DOCX) をプログラムで PDF に変換する必要がある場合があります。この記事では、Python の REST API を使用して Word ドキュメントを PDF に変換する方法を学習します。
この記事では次のトピックについて説明します。
- Word から PDF への変換 REST API と Python SDK
- Python の REST API を使用して Word ドキュメントを PDF に変換する
- 高度なオプションを使用した Word から PDF への変換
- Python でページ範囲を DOCX から PDF に変換する
- Python で DOCX の特定のページを PDF に変換する
- Python を使用したウォーターマーク付きの Word から PDF への変換
- クラウドストレージを使用しないDOCXからPDFへの変換
- DOCX を PDF に変換して直接ダウンロード
Word から PDF への変換 REST API と Python SDK
DOCX を PDF に変換するには、GroupDocs.Conversion Cloud の Python SDK API を使用します。これはプラットフォームに依存しないドキュメント/画像変換ソリューションであり、ツールやソフトウェアに依存しません。これにより、サポートされているファイル形式 の画像やドキュメントを必要な形式に迅速かつ確実に変換できます。
コンソールで次のコマンドを使用して、GroupDocs.Conversion Cloud を Python アプリケーションにインストールできます。
pip install groupdocs_conversion_cloud
上記の手順に従う前に、ダッシュボードからクライアント ID とシークレットを取得してください。 ID とシークレットを取得したら、以下に示すようにコードを追加します。
client_id = "659fe7da-715b-4744-a0f7-cf469a392b73"
client_secret = "b377c36cfa28fa69960ebac6b6e36421"
configuration = groupdocs_conversion_cloud.Configuration(client_id, client_secret)
configuration.api_base_url = "https://api.groupdocs.cloud"
my_storage = ""
Python の REST API を使用して Word ドキュメントを PDF に変換する
以下の簡単な手順に従って、クラウド上で Word 文書をプログラムで PDF に変換できます。
- DOCXファイルをクラウドにアップロード
- Python を使用して DOCX を PDF に変換
- ダウンロード変換されたPDFファイル
DOCXファイルをアップロードする
まず、次のコード サンプルを使用して、DOCX ファイルをクラウドにアップロードします。
# APIのインスタンスを作成する
file_api = groupdocs_conversion_cloud.FileApi.from_config(configuration)
# ファイルのアップロードリクエスト
request = groupdocs_conversion_cloud.UploadFileRequest("sample.docx", "C:\\Files\\Conversion\\sample.docx", my_storage)
# サンプルファイルをアップロードする
response = file_api.upload_file(request)
その結果、アップロードされた DOCX ファイルは、クラウド上のダッシュボードの ファイル セクション で利用できるようになります。
Python を使用して DOCX を PDF に変換する
以下の手順に従って、プログラムで DOCX を PDF ドキュメントに簡単に変換できます。
- まず、ConvertApi のインスタンスを作成します。
- ここで、ConvertSettings のインスタンスを作成します。
- 次に、入力 DOCX ファイル パスを指定します。
- 形式を「pdf」に設定します。
- 出力ファイルのパスを指定します。
- ここで、ConvertSettings を使用して ConvertDocumentRequest を作成します。
- 最後に、ConvertDocumentRequest で convert\document() メソッドを呼び出して DOCX を変換します。
次のコード例は、Python の REST API を使用して DOCX を PDF に変換する方法を示しています。
# APIのインスタンスを作成する
convert_api = groupdocs_conversion_cloud.ConvertApi.from_keys(client_id, client_secret)
# 変換設定を定義する
settings = groupdocs_conversion_cloud.ConvertSettings()
settings.file_path = "sample.docx"
settings.format = "pdf"
settings.output_path = "converted"
# ドキュメント変換リクエストの作成
request = groupdocs_conversion_cloud.ConvertDocumentRequest(settings)
# ドキュメントを変換する
result = convert_api.convert_document(request)
# 終わり
print("Document converted: " + result[0].path)
変換されたファイルをダウンロードする
上記のコードサンプルは、変換された PDF ファイルをクラウド上に保存します。次のコードサンプルを使用してダウンロードできます。
# APIの初期化
file_api = groupdocs_conversion_cloud.FileApi.from_config(configuration)
# ダウンロードファイルリクエストの作成
request = groupdocs_conversion_cloud.DownloadFileRequest("converted\\sample.pdf", my_storage)
# ダウンロードファイル
response = file_api.download_file(request)
# ダウンロードしたファイルを作業ディレクトリに移動します
shutil.move(response, "C:\\Files\\Conversion\\")
高度なオプションを使用した Word から PDF への変換
以下の手順に従って、高度な設定を使用して Word 文書を PDF ファイルに変換できます。
- まず、ConvertApi のインスタンスを作成します。
- ここで、ConvertSettings のインスタンスを作成します。
- 次に、DOCX ファイルのパスを指定します。
- 形式として「pdf」を設定します。
- 出力ファイルのパスを指定します。
- 次に、DocxLoadOptions のインスタンスを作成します。
- 必要に応じて、非表示\コメント、非表示\単語\追跡\変更などのさまざまな読み込みオプションを設定します。
- 次に、PdfConvertOptions のインスタンスを作成します。
- 次に、display\doc\title、マージン (上、左、右、下) などのさまざまな変換オプションを設定します。
- 次に、ConvertSettings を使用して ConvertDocumentRequest を作成します。
- 最後に、ConvertDocumentRequest で convert\document() メソッドを呼び出して DOCX を変換します。
次のコード例は、高度な変換オプションを使用して Word 文書を PDF 文書に変換する方法を示しています。前述の手順に従ってファイルをアップロードおよびダウンロードしてください。
# APIのインスタンスを作成する
convert_api = groupdocs_conversion_cloud.ConvertApi.from_keys(client_id, client_secret)
# 変換設定を定義する
settings = groupdocs_conversion_cloud.ConvertSettings()
settings.file_path = "sample.docx"
settings.format = "pdf"
settings.output_path = "converted"
# DOCXロードオプション
loadOptions = groupdocs_conversion_cloud.DocxLoadOptions()
loadOptions.hide_comments = True # Hide comments
loadOptions.hide_word_tracked_changes = True # Hide tracked changes
# PDF変換オプション
convertOptions = groupdocs_conversion_cloud.PdfConvertOptions()
convertOptions.center_window = True
convertOptions.compress_images = False
convertOptions.display_doc_title = True
convertOptions.dpi = 1024.0
convertOptions.fit_window = False
convertOptions.from_page = 1
convertOptions.grayscale = False
convertOptions.image_quality = 100
convertOptions.linearize = False
convertOptions.margin_top = 5
convertOptions.margin_left = 5
convertOptions.unembed_fonts = True
convertOptions.remove_unused_streams = True
convertOptions.remove_unused_objects = True
convertOptions.remove_pdfa_compliance = False
settings.convert_options = convertOptions
# ドキュメントリクエストの変換
request = groupdocs_conversion_cloud.ConvertDocumentRequest(settings)
# ドキュメントを変換する
result = convert_api.convert_document(request)
# 終わり
print("Document converted: " + result[0].path)
Python でページ範囲を DOCX から PDF に変換する
以下の手順に従って、プログラムを使用して Word 文書の範囲のページを PDF ファイルに変換できます。
- まず、ConvertApi のインスタンスを作成します。
- 次に、ConvertSettings のインスタンスを作成します。
- 次に、入力 DOCX ファイル パスを指定します。
- 形式に「pdf」を割り当てます
- 出力ファイルのパスを指定します
- 次に、PdfConvertOptions のインスタンスを作成します。
- 次に、開始ページ番号から変換するページ範囲と変換する合計ページを指定します。
- 次に、PdfConvertOptions を ConvertSettings に割り当てます。
- 次に、ConvertSettings を使用して ConvertDocumentRequest を作成します。
- 最後に、ConvertDocumentRequest で convert\document() メソッドを呼び出して変換します。
次のコード サンプルは、Python の REST API を使用して、一連のページを DOCX から PDF に変換する方法を示しています。前述の手順に従ってファイルをアップロードおよびダウンロードしてください。
# APIのインスタンスを作成する
convert_api = groupdocs_conversion_cloud.ConvertApi.from_keys(client_id, client_secret)
# 変換設定を定義する
settings = groupdocs_conversion_cloud.ConvertSettings()
settings.file_path = "sample.docx"
settings.format = "pdf"
settings.output_path = "converted"
# PDF変換オプション
convertOptions = groupdocs_conversion_cloud.PdfConvertOptions()
convertOptions.from_page = 1; # start page number
convertOptions.pages_count = 2; # total pages to convert
settings.convert_options = convertOptions
# ドキュメントリクエストの変換
request = groupdocs_conversion_cloud.ConvertDocumentRequest(settings)
# ドキュメントを変換する
result = convert_api.convert_document(request)
# 終わり
print("Document converted: " + result[0].path)
Python で DOCX の特定のページを PDF に変換する
以下の手順に従って、Word 文書の特定のページをプログラムで PDF ファイルに変換できます。
- まず、ConvertApi のインスタンスを作成します。
- 次に、ConvertSettings のインスタンスを作成します。
- 次に、入力 DOCX ファイル パスを指定します。
- 形式に「pdf」を割り当てます
- 出力ファイルのパスを指定します
- 次に、PdfConvertOptions のインスタンスを作成します。
- 次に、変換する特定のページ番号をカンマ区切りの配列で指定します。
- 次に、PdfConvertOptions を ConvertSettings に割り当てます。
- 次に、ConvertSettings を使用して ConvertDocumentRequest を作成します。
- 最後に、ConvertDocumentRequest で convert\cocument() メソッドを呼び出して変換します。
次のコード例は、Python の REST API を使用して Word ドキュメントの特定のページを PDF に変換する方法を示しています。前述の手順に従ってファイルをアップロードおよびダウンロードしてください。
# APIのインスタンスを作成する
convert_api = groupdocs_conversion_cloud.ConvertApi.from_keys(client_id, client_secret)
# 変換設定を定義する
settings = groupdocs_conversion_cloud.ConvertSettings()
settings.file_path = "sample.docx"
settings.format = "pdf"
settings.output_path = "converted"
# PDF変換オプション
convertOptions = groupdocs_conversion_cloud.PdfConvertOptions()
convertOptions.pages = [1,2]; # page numbers to convert
settings.convert_options = convertOptions
# ドキュメントリクエストの変換
request = groupdocs_conversion_cloud.ConvertDocumentRequest(settings)
# ドキュメントを変換する
result = convert_api.convert_document(request)
# 終わり
print("Document converted: " + result[0].path)
Python を使用したウォーターマーク付きの Word から PDF への変換
以下の手順に従って、プログラムによって Word 文書を PDF 文書に変換し、変換された文書に透かしを追加できます。
- まず、ConvertApi のインスタンスを作成します。
- 次に、ConvertSettings のインスタンスを作成します。
- 次に、入力 DOCX ファイル パスを指定します。
- 形式に「pdf」を割り当てます
- 出力ファイルのパスを指定します
- 次に、WatermarkOptions のインスタンスを作成します。
- 次に、透かしのテキスト、色、幅、高さ、左、上などを設定します。
- 次に、PdfConvertOptions を定義し、WatermarkOptions を割り当てます。
- 次に、ConvertSettings を使用して ConvertDocumentRequest を作成します。
- 最後に、ConvertDocumentRequest で convert\document() メソッドを呼び出して DOCX を変換します。
次のコード例は、Python の REST API を使用して Word ドキュメントを PDF ドキュメントに変換し、変換された PDF ドキュメントにウォーターマークを追加する方法を示しています。前述の手順に従ってファイルをアップロードおよびダウンロードしてください。
# APIの初期化
convert_api = groupdocs_conversion_cloud.ConvertApi.from_keys(client_id, client_secret)
# 変換設定を定義する
settings = groupdocs_conversion_cloud.ConvertSettings()
settings.file_path = "sample.docx"
settings.format = "pdf"
settings.output_path = "converted"
# 透かしオプションを定義する
watermark = groupdocs_conversion_cloud.WatermarkOptions()
watermark.text = "THIS IS SAMPLE WATERMARK"
watermark.bold = True;
watermark.font_size = 34;
watermark.color = "Gray";
watermark.background = False;
watermark.rotation_angle = 30;
watermark.left = 90;
watermark.top = 500;
# PDF 変換オプションを定義する
convertOptions = groupdocs_conversion_cloud.PdfConvertOptions()
convertOptions.watermark_options = watermark
settings.convert_options = convertOptions
# 変換ドキュメントリクエストの作成
request = groupdocs_conversion_cloud.ConvertDocumentRequest(settings)
# ドキュメントを変換する
result = convert_api.convert_document(request)
print("Document converted successfully: " + result[0].url)
クラウドストレージを使用しないDOCXからPDFへの変換
Word ドキュメントをリクエスト本文に渡し、API 応答で出力ファイルを受け取ることで、クラウド ストレージを使用せずに Word ドキュメントを PDF に変換できます。クラウド ストレージを使用せずに DOCX を PDF に変換するには、以下の手順に従ってください。
- まず、ConvertApi のインスタンスを作成します。
- ローカル パスから入力 DOCX ファイルを読み取ります
- 次に、ConvertDocumentDirectRequest を作成します。
- 次に、ターゲット形式を「pdf」として、入力ファイルのパスを入力パラメータとして指定します。
- ConvertDocumentDirectRequest で convert\document\direct() メソッドを呼び出して結果を取得します
- 最後に、FileStream.writeFile() メソッドを使用して出力ファイルをローカル パスに保存します。
次のコード例は、クラウド ストレージを使用せずに Word ドキュメントを PDF に変換する方法を示しています。
# APIのインスタンスを作成する
convert_api = groupdocs_conversion_cloud.変換Api.from_keys(client_id, client_secret)
# 変換リクエストの作成
request = groupdocs_conversion_cloud.変換DocumentDirectRequest("pdf", "C:\\Files\\Conversion\\sample.docx")
# 変換
result = convert_api.convert_document_direct(request)
# ダウンロードしたファイルを作業ディレクトリに移動します
shutil.move(result, "C:\\Files\\Conversion\\")
DOCX を PDF に変換して直接ダウンロード
以下の手順に従って、DOCX をプログラムで PDF ドキュメントに変換し、変換されたファイルを直接ダウンロードできます。
- まず、ConvertApi のインスタンスを作成します。
- 次に、ConvertSettings のインスタンスを作成します。
- 次に、DOCX ファイルのパスを設定します。
- 形式に「pdf」を割り当てます
- 出力パスを「なし」に設定します
- 次に、ConvertSettings を使用して ConvertDocumentRequest を作成します。
- 次に、convert\document\download() メソッドを呼び出して結果を取得します。
- 必要に応じて、shutil.move() メソッドを使用して出力ファイルをローカル パスに保存します。
次のコード例は、DOCX ファイルを PDF ドキュメントに変換し、Python の REST API を使用して直接ダウンロードする方法を示しています。 API は、応答として変換された PDF ファイルを返します。前述の手順に従ってファイルをアップロードしてください。
# 必要なAPIインスタンスを作成する
convert_api = groupdocs_conversion_cloud.変換Api.from_keys(client_id, client_secret)
# 変換設定を定義する
settings = groupdocs_conversion_cloud.変換Settings()
settings.file_path = "sample.docx"
settings.format = "pdf"
settings.output_path = None # leave OutputPath will result the output as document IOStream
# 変換リクエストの作成
request = groupdocs_conversion_cloud.変換DocumentRequest(settings)
# 変換
response = convert_api.convert_document_download(request)
# ダウンロードしたファイルを作業ディレクトリに移動します
shutil.move(response, "C:\\Files\\Conversion\\")
オンラインで試す
上記の API を使用して開発された、次の無料のオンライン DOCX から PDF への変換ツールをお試しください。 https://products.groupdocs.app/conversion/docx-to-pdf
結論
この記事では、クラウド上で Word 文書を PDF ファイルに変換する方法を学習しました。また、Python を使用して特定のページまたは特定のページ範囲を DOCX から PDF に変換する方法についても説明しました。この記事では、プログラムによって DOCX ファイルをクラウドにアップロードし、変換された PDF ファイルをクラウドからダウンロードする方法についても説明しました。さらに、GroupDocs.Conversion Cloud API の詳細については、ドキュメント を使用して学習できます。また、ブラウザーを通じて直接 API を視覚化し操作できるようにする API リファレンス セクションも提供しています。不明な点がある場合は、フォーラム でお気軽にお問い合わせください。