Python 開発者は、クラウド上でプログラムによって HTML ファイルを PDF ドキュメントに簡単に変換できます。このような変換は、記録を保存したり、HTML ファイルをポータブル形式で共有したりする場合に役立ちます。この記事では、Python の REST API を使用して HTML を PDF ドキュメントに変換する方法を学習します。
この記事では次のトピックについて説明します。
- HTML から PDF への変換 REST API および Python SDK
- Python の REST API を使用して HTML を PDF に変換する
- HTML を PDF に変換し、透かしを追加する
- Cloud Storage を使用しない HTML から PDF への変換
- HTML を PDF に変換して直接ダウンロード
HTML から PDF への変換 REST API および Python SDK
HTML ファイルを PDF に変換するには、GroupDocs.Conversion Cloud の Python SDK API を使用します。 サポートされているファイル形式 のドキュメントと画像を必要な形式に変換できます。 Word、PowerPoint, Excel、PDF、HTML、CAD、ラスター画像など、50種類以上の文書や画像を簡単に変換できます。
コンソールで次のコマンドを使用して、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 を使用して HTML を PDF に変換する
以下の簡単な手順に従って、HTML ファイルを PDF ドキュメントに変換できます。
- HTMLファイルをクラウドにアップロード
- Python で HTML を PDF に変換
- ダウンロード変換後のファイル
ドキュメントをアップロードする
まず、以下のコード例を使用して、HTML ファイルをクラウドにアップロードします。
# APIのインスタンスを作成する
file_api = groupdocs_conversion_cloud.FileApi.from_config(configuration)
# ファイルのアップロードリクエスト
request = groupdocs_conversion_cloud.UploadFileRequest("sample.html", "C:\\Files\\sample.html", my_storage)
# サンプルファイルをアップロードする
response = file_api.upload_file(request)
その結果、アップロードされた HTML ファイルは、クラウド上のダッシュボードの ファイル セクション で利用できるようになります。
Python で HTML を PDF に変換する
以下の手順に従って、プログラムで HTML を PDF ドキュメントに簡単に変換できます。
- ConvertApi のインスタンスを作成する
- ConvertSettings のインスタンスを作成する
- HTMLファイルのパスを設定する
- 形式に「pdf」を割り当てます
- 出力ファイルのパスを指定します
- 必要に応じて PdfConvertOptions を定義します
- 必要に応じて、dpi、margin\top、margin\left、fit\window などのさまざまなプロパティを設定します。
- ConvertSettings を使用して ConvertDocumentRequest を作成する
- ConvertDocumentRequest で convert\document() メソッドを呼び出して結果を取得します
次のコード例は、REST API を使用して HTML ファイルを PDF ドキュメントに変換する方法を示しています。
# 必要なAPIインスタンスを作成する
変換_api = groupdocs_conversion_cloud.ConvertApi.from_keys(client_id, client_secret)
# 変換設定を準備する
settings = groupdocs_conversion_cloud.ConvertSettings()
settings.file_path = "sample.html"
settings.format = "pdf"
settings.output_path = "変換ed"
# PDF変換オプション
変換Options = groupdocs_conversion_cloud.PdfConvertOptions()
変換Options.center_window = True # Set position of the document's window on the screen
変換Options.display_doc_title = True
変換Options.dpi = 1024.0
変換Options.fit_window = False
変換Options.from_page = 1 # Start conversion from FromPage page
変換Options.linearize = False # Linearize PDF Document for the Web
変換Options.margin_top = 5
変換Options.margin_left = 5
変換Options.unembed_fonts = True # Make fonts not embedded
変換Options.remove_pdfa_compliance = False # Remove Pdf-A Compliance
settings.変換_options = 変換Options
# ドキュメントリクエストの変換
request = groupdocs_conversion_cloud.ConvertDocumentRequest(settings)
# 変換
result = 変換_api.変換_document(request)
# 終わり
print("Document 変換ed: " + 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\\")
HTML を PDF に変換し、透かしを追加する
以下の手順に従って、プログラムによって HTML を PDF ドキュメントに変換し、変換されたドキュメントにウォーターマークを追加できます。
- ConvertApi のインスタンスを作成する
- ConvertSettings のインスタンスを作成する
- HTMLファイルのパスを設定する
- 形式に「pdf」を割り当てます
- 出力ファイルのパスを指定します
- WatermarkOptions のインスタンスを作成する
- 透かしのテキスト、色、幅、高さなどを設定します。
- PdfConvertOptions を定義し、WatermarkOptions を割り当てます。
- ConvertSettings を使用して ConvertDocumentRequest を作成する
- ConvertDocumentRequest で convert\document() メソッドを呼び出して変換します。
次のコード例は、Python の REST API を使用して、HTML ファイルを PDF ドキュメントに変換し、変換された PDF ドキュメントにウォーターマークを追加する方法を示しています。前述の手順に従ってファイルをアップロードおよびダウンロードしてください。
# APIの初期化
変換_api = groupdocs_conversion_cloud.ConvertApi.from_keys(client_id, client_secret)
# 変換設定を定義する
settings = groupdocs_conversion_cloud.ConvertSettings()
settings.file_path = "sample.html"
settings.format = "pdf"
settings.output_path = "変換ed"
# 透かしオプションを定義する
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 変換オプションを定義する
変換Options = groupdocs_conversion_cloud.PdfConvertOptions()
変換Options.watermark_options = watermark
settings.変換_options = 変換Options
# ドキュメント変換リクエストの作成
request = groupdocs_conversion_cloud.ConvertDocumentRequest(settings)
# 変換
result = 変換_api.変換_document(request)
print("Document 変換ed successfully: " + result[0].url)
Cloud Storage を使用しない HTML から PDF への変換
以下の手順に従って、クラウド ストレージを使用せずに HTML を PDF ドキュメントに変換できます。
- ConvertApi のインスタンスを作成する
- ConvertDocumentDirectRequest を作成し、要求されたドキュメント形式と入力ファイルのパスを渡します
- ConvertDocumentDirectRequest で convert\document\direct() メソッドを呼び出して結果を取得します
- 必要に応じて、shutil.move() メソッドを使用して出力ファイルをローカル パスに保存します。
次のコード例は、クラウド ストレージを使用せずに HTML ファイルを PDF ドキュメントに変換する方法を示しています。リクエスト本文で入力ファイルを渡し、API レスポンスで出力ファイルを受け取ります。
# 必要なAPIインスタンスを作成する
convert_api = groupdocs_conversion_cloud.変換Api.from_keys(client_id, client_secret)
# リクエストの準備
request = groupdocs_conversion_cloud.変換DocumentDirectRequest("pdf", "C:\\Files\\sample.html")
# 変換
result = convert_api.convert_document_direct(request)
# ダウンロードしたファイルを作業ディレクトリに移動します
shutil.move(result, "C:\\Files\\")
HTML を PDF に変換して直接ダウンロード
以下の手順に従って、プログラムで HTML を PDF ドキュメントに簡単に変換できます。
- ConvertApi のインスタンスを作成する
- ConvertSettings のインスタンスを作成する
- HTMLファイルのパスを設定する
- 形式に「pdf」を割り当てます
- 出力パスを「なし」に設定します
- ConvertSettings を使用して ConvertDocumentRequest を作成する
- convert\document\download() メソッドを呼び出して結果を取得します
- 必要に応じて、shutil.move() メソッドを使用して出力ファイルをローカル パスに保存します。
次のコード例は、HTML ファイルを 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.html"
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\\")
オンラインで試す
上記の API を使用して開発された、次の無料のオンライン HTML から PDF への変換ツールをお試しください。 https://products.groupdocs.app/conversion/html-to-pdf
結論
この記事では、クラウド上で Python を使用して HTML ファイルを PDF ドキュメントに変換する方法を学習しました。また、プログラムでクラウド ストレージを使用せずに HTML ファイルを PDF ドキュメントに変換する方法も学習しました。さらに、Python を使用して、変換された PDF ドキュメントにウォーターマークを追加する方法を学習しました。この記事では、プログラムによって HTML ファイルをクラウドにアップロードし、変換された PDF ファイルをクラウドからダウンロードする方法についても説明しました。 GroupDocs.Conversion Cloud API の詳細については、ドキュメント を使用して学習できます。また、ブラウザーを通じて直接 API を視覚化し操作できるようにする API リファレンス セクションも提供しています。不明な点がある場合は、フォーラム でお気軽にお問い合わせください。