メインコンテンツへスキップ

テンプレートやAPIからHTMLを取得しましたか?n8nでPDFに変換しましょう!必要なのはたった3つのノードだけで、ホスティングは不要です。

· 1分で読める
SEO and Content Writer

テンプレート、ウェブページ、またはAPIレスポンスから取得したHTMLデータがあり、それをPDFに変換する必要があります。手動でエクスポートしたり、Wordにコピーしたりする方法は、拡張性に欠けます。 n8n プラス PDF4me HTMLをPDFに変換する3つのノード:トリガー→アップロード→変換。サーバーもカスタムコードも不要。Base64 HTMLを貼り付け、URLをコンバーターにマッピングするだけで、 output.pdfダウンロード、メール送信、または保存する準備ができています。

要するに: 「ワークフローを実行」をクリックすると (トリガー)→ PDF4meにファイルをアップロード (Base64 HTML) → HTMLをPDFに変換する (アップロードされたドキュメントURLをマッピングします)。出力:ダウンロード、JSON、およびテーブルビューを備えたPDFバイナリ(例:29.2 kB)。

なぜこのワークフローを採用したのか? PDF4meの HTMLをPDFに変換する URL、バイナリ、またはBase64経由でHTMLを受け入れます。HTMLがn8n内で生成される場合(たとえば、コードノードまたはHTTPレスポンスから)、まず PDF4meにファイルをアップロード 一時的な ドキュメントURL次にそのURLを HTMLをPDFに変換するPDF4meノードが2つ。フローは1つ。


なぜ?という問いに対する質疑応答​

変換前にアップロードする理由とは? ConvertノードはHTMLを期待します URL、 バイナリ、 または Base64HTMLが式または別のノードの出力(公開URLではない)から取得される場合は、まずそれをアップロードする必要があります。PDF4meは以下を返します。 ドキュメントURLコンバーターが取得できる一時的なリンク。

なぜURLではなくBase64を使うのか? Base64は、テンプレート、API、コードノードなど、n8n内部でHTMLを生成する場合に最適です。ファイルをどこかにホストする必要はありません。Base64文字列を貼り付け、保持期間(例:2時間)を設定すれば、アップロードノードが残りの処理を行います。

なぜ {{ $json.documentUrl }}? アップロードノードの出力 ドキュメントURL 各アイテムにおいて。Convertノードの HTML URL フィールドにはその値が必要です。式を使用してください。 {{ $json.documentUrl }} 前のステップから引き継ぐため。

ファイル保存時間を設定する理由とは? アップロードされたファイルは一時的に保存されます。 2 変換ステップが実行されるのに十分な時間、ファイルを利用可能な状態に保持します。ワークフローに遅延やループがある場合は、調整してください。


得られるもの​

入力: Base64エンコードされたHTML(テンプレートやAPIなどから取得したもの)。 出力: PDF ファイル (例: output.pdfワークフロー出力には、スキーマ、テーブル、JSON、バイナリの各タブで表示できるファイル(約29.2 kB)とダウンロードボタンがあります。


必要なもの​

  • n8nセルフホストまたは n8nクラウドノードパネルからPDF4meノードを追加します。
  • PDF4me APIキー、 APIキーを取得してくださいPDF4meノードを追加する際は接続してください。初めてですか? PDF4meをn8nに接続する。
  • HTMLコンテンツこのワークフローではBase64形式を使用します。コードノードまたは外部ソースを使用して生成してください。

フローの概要​

  1. 「ワークフローを実行」をクリックするとテスト用の手動トリガーです。自動化には、Webhook、スケジュール、またはファイルトリガーに置き換えてください。
  2. PDF4meにファイルをアップロード: Base64 HTMLをPDF4meに送信し、返します。 ドキュメントURL。
  3. HTMLをPDFに変換する: HTMLを取得します ドキュメントURLPDFバイナリを出力します。

ワークフローの概要​

n8nワークフロー:[ワークフローの実行] → [PDF4meへのファイルのアップロード] → [HTMLからPDFへの変換]をクリックすると、各ノードに緑色のチェックマークが表示されます。

3つのノードが順番に並んでいます:手動トリガー → PDF4meへのファイルアップロード → HTMLからPDFへの変換。各接続では「1つのアイテム」が通過していることを示しています。緑色のチェックマークは、処理が正常に完了したことを示します。


ステップ1:ファイルをPDF4meにアップロードする​

これまでのシナリオ: トリガーのみ。

  1. 追加 PDF4me → PDF4me リソース → PDF4meにファイルをアップロードする 手術。
  2. 接続するための認証情報PDF4meへの接続を選択してください。
  3. 入力データタイプ: Base64文字列。
  4. Base64ファイルの内容Base64エンコードされたHTMLを貼り付けてください。例: PCFET0NUWVBFIGh0bWw+... (デコードすると) <!DOCTYPE html>)
  5. ファイル保存時間例: 2 (次のステップのためにファイルを保持します。)
  6. クリック 実行ステップ テストします。出力には以下が含まれます。 ドキュメントURL。

PDF4meへのファイルアップロード:パラメータパネル​

PDF4meへのファイルアップロード:入力データタイプ Base64文字列、Base64ファイルコンテンツ、ファイル保持時間 2時間

パラメーター タブ: 認証情報 (PDF4me 接続)、リソース (PDF4me)、操作 (PDF4me へのファイルのアップロード)、入力データ タイプ (Base64 文字列)、HTML を含む Base64 ファイル コンテンツ フィールド、およびファイル保持時間 (2 時間)。

ヒント: HTMLが別のノード(コードやHTTPリクエストなど)から取得される場合は、次のような式を使用します。 {{ $json.base64Content }} 貼り付けるのではなく、値が正しくBase64形式であることを確認してください。


ステップ2:HTMLをPDFに変換する​

これまでのシナリオ: トリガー → PDF4meにファイルをアップロードします。

  1. 追加 PDF4me → 変換する リソース → HTMLをPDFに変換する 手術。
  2. 接続するための認証情報: 同じPDF4me接続です。
  3. 入力データタイプ: URL。
  4. HTML URL: 切り替える 表現 そして入る {{ $json.documentUrl }}これは、アップロード手順からのURLをマッピングします。
  5. HTMLファイル名例: document.html。
  6. インデックスファイルパス例: index.html (複数ファイルからなるHTMLプロジェクトの場合)
  7. レイアウト: 肖像画 (または横向き)
  8. 形式: A4。
  9. 規模: 0.8 (100% = 1.0)
  10. 上、下、左、右の余白例: 40ピクセル それぞれ。
  11. プリント背景: オフ(背景が必要な場合はオン)。
  12. ヘッダーとフッターを表示: オフ(ページ番号表示の場合はオン)。
  13. 出力ファイル名例: output.pdf。
  14. バイナリデータ出力名: データ (PDFバイナリ用のフィールド)
  15. クリック 実行ステップ出力には、ファイル名、ファイル拡張子、MIMEタイプ、ファイルサイズ、およびダウンロードボタンを含むPDFファイルが表示されます。

HTMLをPDFに変換する:パラメータとレイアウト設定​

HTMLをPDFに変換:HTML URL式、レイアウト縦向き、フォーマットA4、拡大縮小率0.8、余白40px、出力ファイル名output.pdf

パラメータタブ:入力データタイプ(URL)、HTML URL式、HTMLファイル名(document.html)、インデックスファイルパス(index.html)、レイアウト(縦向き)、フォーマット(A4)、スケール(0.8)、余白(40px)、出力ファイル名(output.pdf)、バイナリデータ出力名(data)。

HTMLをPDFに変換する:アップロードステップからのdocumentUrlのマッピング​

HTMLをPDFに変換する入力: PDF4meにファイルをアップロードする際のdocumentUrl

入力セクションが展開されました: "Upload file to PDF4me" からの documentUrl が HTML URL フィールドに渡され、式は Upload ノードによって返される一時的な URL をマッピングします。


ステップ3:出力を確認する​

Convertノードの出力パネルには以下が表示されます。

分野価値
ファイル名output.pdf
ファイル拡張子PDF
MIMEタイプアプリケーション/PDF
ファイルサイズ29.2 kB(例)

使用 スキーマ、 テーブル、 JSON、 または バイナリ 検査するタブ。 ダウンロード このボタンをクリックすると、PDFがローカルに保存されます。

出力:ダウンロード可能なPDFファイルが生成されました。​

出力: 1項目、output.pdf、29.2 kB、ダウンロードボタン、バイナリタブが選択されています

出力パネル:ファイル名(output.pdf)、ファイル拡張子(pdf)、MIMEタイプ(application/pdf)、ファイルサイズ(29.2 kB)、およびダウンロードボタンを含む項目が1つ表示されます。生成されたPDFを表示するには、バイナリタブが選択されています。


ユースケース:n8nでHTMLからPDFへの変換を使用するタイミング​

請求書および提案書の作成: CRMやデータベースデータ(Airtable、Google Sheetsなど)からHTMLを生成します。PDFに変換してメールで送信したり、クラウドストレージにアップロードしたりできます。同じテンプレートで、動的なデータを使用できます。

AIによる分析結果を活用したレポート生成: AIノードを使用してコンテンツを生成し、HTML形式にフォーマットした後、関係者向けにPDFに変換します。週刊ダイジェスト、要約、分析レポートなどに最適です。

証明書とバッジ: 研修データやイベントデータからHTML形式の証明書を作成します。PDF形式に変換してメールで送信したり、文書管理システムに保存したりできます。

文書のアーカイブとメールからPDFへの変換: HTMLメールやウェブコンテンツを解析し、PDFに変換して、Dropbox、Google Drive、またはコンプライアンスシステムにアーカイブします。

入社手続きおよびコンプライアンス関連文書: テンプレートとユーザーデータから、パーソナライズされたオンボーディング用PDFを生成します。ハンドブック、ポリシー、コンプライアンス文書の作成を自動化します。


クイックリファレンス:キー設定​

ノード設定例
1. PDF4meにファイルをアップロードします入力データタイプBase64文字列
1. PDF4meにファイルをアップロードしますファイル保存時間2
2. HTMLをPDFに変換するHTML URL{{ $json.documentUrl }}
2. HTMLをPDFに変換する出力ファイル名output.pdf

パラメータの詳細については、以下を参照してください。 HTMLをPDFに変換する、n8n。


トラブルシューティング​

変換ステップ: "documentUrl" が未定義です

アップロードノードが変換の前に実行されることを確認し、 {{ $json.documentUrl }} (または {{ $('Upload file to PDF4me').item.json.documentUrl }} (複数のノードがある場合)式は出力を行うノードを参照する必要があります ドキュメントURL。

Base64デコードエラー

Base64 文字列が有効であり、データ URI プレフィックス (例: データ:text/html;base64、コードノードを使用する場合は、 Buffer.from(html).toString('base64') または同等の方法で、クリーンなBase64を生成します。

401、402、またはその他のAPIエラー

PDF4meのトラブルシューティング 401 (APIキー)、402 (クレジット) などに対応しています。


次は?​

  • 手動トリガーを Webhook または スケジュール フローを自動的に実行する。
  • 追加する ファイルをアップロードする 変換後にノード(Dropbox、Google Drive)を使用して、PDFをクラウドストレージに保存します。
  • 使用 HTMLコード または バイナリデータ HTMLが別のソースから来ている場合は、入力データタイプとして以下を参照してください。 HTMLをPDFに変換する、n8n すべてのオプションについて。