Node.jsでIronPdfEngineを使う方法
IronPdfEngineは、Node.jsクライアントの代わりにすべてのPDF操作(作成、編集、読み取り)を処理するgRPCサーバーです。 @ironsoftware/ironpdfパッケージは、gRPCを通じてIronPdfEngineと通信する薄いAPIラッパーです; Node.jsコード内のすべてのメソッド呼び出しは、そのサーバープロセス内で実行されます。 デフォルトでは、Node.js用IronPDFはローカルサブプロセスとしてIronPdfEngineを起動しますが、共有またはコンテナ化されたデプロイメント用にリモートでホストされたインスタンスを指すこともできます。
クイックスタート: Node.js用IronPdfEngineをセットアップする
パッケージをインストールし、最初のPDF操作で自動的にIronPdfEngineが実行されます:
npm i @ironsoftware/ironpdf
最小限のワークフロー(5ステップ)
npm install @ironsoftware/ironpdfでIronPDF Node.jsパッケージをインストールします。- 最初の実行で、IronPDFはプラットフォームを検出し、正しいIronPdfEngineバイナリをダウンロードします。
- オフラインまたは迅速な起動デプロイメントには、特定のプラットフォーム用のエンジンパッケージをインストールします。例:
@ironsoftware/ironpdf-engine-windows-x64 - リモートインスタンスをデプロイする前に、
IronPdfGlobalConfig.ironPdfEngineVersionプロパティで必要なエンジンバージョンを確認してください。 - リモートエンジンの場合、任意のPDF操作の前に
IronPdfGlobalConfig.setConfig({ ironPdfEngineDockerAddress: "host:port" })を呼び出します。
Node.js用IronPDFはなぜIronPdfEngineを必要としますか?
Node.js用IronPDFはスタンドアロンのPDFレンダラーを含んでいません。 Node.jsパッケージはgRPCクライアントであり、IronPdfEngineは実際のレンダリング、編集、および読み取り作業を実行するサーバーです。 あなたのアプリケーションが任意のIronPDFメソッドを呼び出すと、リクエストはgRPCを経由してエンジンプロセスに移動し、結果をNode.jsコードに返します。
このアーキテクチャはNode.jsパッケージを軽量に保ち、レンダリング環境を分離します。 また、エンジンバージョンはパッケージバージョンと完全に一致する必要があることを意味します-クロスバージョンの組み合わせはサポートされていません。
各バージョンのIronPdfGlobalConfig.ironPdfEngineVersionプロパティを読み取り互換性を確認してください。
IronPdfEngineをローカルで実行するにはどうすればよいですか?
ローカルデプロイメントはデフォルトモードです。 Node.js用IronPDFは、起動時にサブプロセスとしてIronPdfEngineを生成し、アプリケーションが終了するまでそれと通信します。 2つのインストールアプローチがあり、それぞれに異なるトレードオフがあります。
オプション1:ランタイムでIronPdfEngineをダウンロード
@ironsoftware/ironpdfをインストール後、追加でパッケージを必要としません。 最初の実行で、IronPDFはホストプラットフォーム(例: Windows x64)を検出し、インターネットから一致するIronPdfEngineバイナリをダウンロードします。
npm i @ironsoftware/ironpdf
利点:
- アプリケーションパッケージを小さく維持します。
- プラットフォーム固有の設定なしで複数のプラットフォームにデプロイします。
欠点:
- 初回実行時にインターネットアクセスが必要です。
- バイナリが取得される間、初回実行時の起動時間が遅くなります。
オプション 2(推奨):依存関係としてIronPdfEngineをインストールする
Node.js用IronPDFは、特定のプラットフォーム用のIronPdfEngineバイナリをバンドルする専用のエンジンパッケージをサポートしています。 ランタイムのダウンロードを排除するために、メインライブラリと並行してこれらのパッケージの一つ以上をインストールします。
ironpdf-engine-xxx-xxxパッケージは同じバージョンでなければなりません。 エンジンパッケージのバージョン番号は、内部エンジンビルドではなく、IronPDFのリリースを指します。}]
Windows x64:
npm install @ironsoftware/ironpdf-engine-windows-x64
Windows x86:
npm install @ironsoftware/ironpdf-engine-windows-x86
Linux x64:
npm install @ironsoftware/ironpdf-engine-linux-x64
macOS x64:
npm install @ironsoftware/ironpdf-engine-macos-x64
macOS arm64:
npm install @ironsoftware/ironpdf-engine-macos-arm64
利点:
- より速い起動—ランタイムでのダウンロードは不要です。
- 依存関係がインストールされた後はインターネットアクセス不要。
欠点:
- 大きなアプリケーションパッケージサイズ。
- ビルド時にターゲットプラットフォームを指定する必要があります。
リモートIronPdfEngineにどのように接続しますか?
PDF生成が共有サービスである場合にリモートデプロイメントが適切です-例えば、コンテナ化されたマイクロサービスアーキテクチャで、Kubernetesクラスターで複数 for Node.jsサービスが一つのエンジンポッドを共有する場合、またはレンダリングプロセスを集中化してサービスごとのオーバーヘッドを削減する環境です。 接続する前に、IronPdfEngineをプルして実行する方法に従ってIronPdfEngine Dockerイメージをプルして開始してください。
必要なエンジンバージョンを確認するにはどうしますか?
エンジンのバージョンはNode.jsパッケージのバージョンと一致する必要があります。 どのバージョンを取得するかを確認するためにironPdfEngineVersionプロパティを読み取ってください。
:path=/static-assets/ironpdf-nodejs/content-code-examples/get-started/use-ironpdfengine-8.jsconst ironPdfEngineVersion = IronPdfGlobalConfig.ironPdfEngineVersion;
console.log(`Required IronPdfEngine version: ${ironPdfEngineVersion}`);
指定されたDockerイメージタグに印刷されたバージョン番号を使用してください。 不一致なバージョンを実行すると、gRPC通信エラーが発生します。
リモート接続をどのように設定しますか?
IronPdfEngineが123.456.7.8:33350で動作していると想定します。 アプリケーションの開始時に設定呼び出しを行い、任意のIronPDFメソッドの呼び出しを行う前に設定してください。
:path=/static-assets/ironpdf-nodejs/content-code-examples/get-started/use-ironpdfengine-9.jsIronPdfGlobalConfig.setConfig({
ironPdfEngineDockerAddress: "123.456.7.8:33350"
});
そのアドレスがNode.jsホストからアクセス可能である必要があります。ファイアウォールルールがアプリケーションサーバーとエンジンホスト間のポート33350をブロックしていないか確認してください。
リモートIronPdfEngineを使用する場合、ironpdf-engine-xxx-xxx依存パッケージをインストールする必要はありません。 ironPdfEngineDockerAddressを設定すると、ローカルエンジンは完全にバイパスされます。
次のステップは何ですか?
IronPdfEngineの設定は、Node.js内のすべてのPDF作業の基盤です。 エンジンがローカルまたはリモートで実行されると、フルIronPDF APIが利用可能です: HTMLをPDFに変換し、ドキュメントをマージし、スタンプやウォーターマークを追加し、テキストを抽出するなど。
- すべての機能をウォーターマークなしでアンロックするために、無料トライアルライセンスを開始します。
- ライセンスを購入して本番デプロイメントを行います。
- フルNode.jsの入門チュートリアルに進んでください: IronPDF for Node.js–はじめに。
よくある質問
IronPdfEngineとは何ですか、そしてNode.jsに必要なのはなぜですか?
IronPdfEngineはすべてのPDFレンダリング、編集、および読み取り操作を処理するgRPCサーバーです。@ironsoftware/ironpdf Node.jsパッケージは、IronPdfEngineとgRPCを介して通信するクライアントラッパーであるため、ローカルまたはリモートでエンジンが実行されていなければ、いかなるPDF操作も成功しません。
IronPDF for Node.jsのインストール方法は?
プロジェクトディレクトリでnpm install @ironsoftware/ironpdfを実行します。初回実行時には、IronPDFがホストプラットフォームを検出し、対応するIronPdfEngineバイナリを自動的にダウンロードします。
ランタイムダウンロードオプションとバンドル依存関係オプションの違いは何ですか?
ランタイムダウンロードオプションでは追加のパッケージは不要ですが、初回実行時にインターネットアクセスが必要で、初期起動が遅くなります。バンドル依存関係オプション(オプション2、推奨)では、`@ironsoftware/ironpdf-engine-windows-x64`のようなプラットフォーム固有パッケージをインストールし、エンジンバイナリをバンドルするため、起動が速くなり、インストール後のインターネットアクセスが不要ですが、パッケージが大きくなります。
IronPdfEngineのバージョンがIronPDFパッケージのバージョンと一致していることを確認するにはどうすればいいですか?
実行時にIronPdfGlobalConfig.ironPdfEngineVersionプロパティを読み取り、必要な正確なバージョン文字列を取得します。ironpdfパッケージとironpdf-engine-xxx-xxx依存関係は同じバージョンでなければならず、異なるバージョンの組み合わせはサポートされていません。
リモートIronPdfEngineをローカルのものの代わりに使用するのはいつですか?
コンテナ化されたマイクロサービスアーキテクチャ、複数 for Node.jsサービスが単一のレンダリングポッドを共有するKubernetesデプロイメント、またはPDF処理が各サービスのリソースオーバーヘッドを減らす任意のシナリオでリモートIronPdfEngineを適切に使用します。
Node.jsをリモートのIronPdfEngineに接続するにはどうすればいいですか?
アプリケーションのスタート時に、すべてのIronPDFメソッドの前にIronPdfGlobalConfig.setConfig({ ironPdfEngineDockerAddress: 'host:port' })を呼び出します。host:portをリモートエンジンのIPアドレスとポート(デフォルトは33350)に置き換えます。アドレスが到達可能であり、ファイアウォールによってブロックされていないことを確認します。
リモートIronPdfEngineを使用する場合、エンジン依存関係パッケージをインストールする必要がありますか?
いいえ。ironPdfEngineDockerAddressが設定されていると、IronPDFはすべてのローカルエンジンを完全にバイパスします。リモートデプロイメントのためにironpdf-engine-xxx-xxxパッケージをインストールする必要はありません。
IronPdfEngineはどのプラットフォームをサポートしていますか?
プラットフォーム別のエンジンパッケージは、Windows x64、Windows x86、Linux x64、macOS x64、およびmacOS arm64向けに利用可能です。ターゲットデプロイメントに一致するパッケージをインストールする、またはランタイムダウンロードオプションを使用して単一のインストールから複数のプラットフォームをサポートすることができます。
同じプロジェクトに複数のプラットフォーム固有のエンジンパッケージをインストールできますか?
はい。複数のironpdf-engine-xxx-xxxパッケージを同じプロジェクトにインストールできます。IronPDFは実行時にホストプラットフォームに最適なバイナリを選択します。これは、複数のオペレーティングシステム間でビルドおよびデプロイするプロジェクトに役立ちます。
IronPdfEngineはgRPC通信にどのポートを使用しますか?
IronPdfEngineは標準でポート33350でリッスンしています。リモート接続を設定する際にはこのポートをironPdfEngineDockerAddress値に含め、Node.jsホストとエンジンホスト間でポートが開いていることを確認します。





