Node.js を使用して Excel スプレッドシートを PDF に変換する

Excel スプレッドシートは、請求書、元帳、在庫、アカウント、その他のレポートを管理するために広く使用されています。 Excel から PDF への変換により、Excel データをポータブルな形式で他のユーザーと共有できるようになります。 Node.js 開発者は、クラウド上でプログラムを使用して Excel スプレッドシートを PDF ドキュメントに簡単に変換できます。この記事では、Node.js を使用して Excel スプレッドシートを PDF に変換する方法を学習します。

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

Excel から PDF への変換 REST API および Node.js SDK

XLSXPDF に変換するには、GroupDocs.Conversion Cloud の Node.js SDK API を使用します。 API を使用すると、ドキュメントを必要な形式に変換できます。 Word、Excel、PowerPoint, PDF、HTML、JPG、PNG、CADなど50種類以上の文書や画像の変換に対応しています。また、クラウド API の ドキュメント変換ファミリー メンバー として、.NET、Java、PHP、Ruby、Android、および Python SDK も提供します。

コンソールで次のコマンドを使用して、GroupDocs.Conversion Cloud を Node.js アプリケーションにインストールできます。

npm install groupdocs-conversion-cloud

手順と利用可能なコード例を開始する前に、ダッシュボード からクライアント ID とクライアント シークレットを取得してください。 ID とシークレットを取得したら、以下に示すようにコードを追加します。

global.clientId = "112f0f38-9dae-42d5-b4fc-cc84ae644972";
global.clientSecret = "16ad3fe0bdc39c910f57d2fd48a5d618";
global.myStorage = "";

const config = new groupdocs_conversion_cloud.Configuration(clientId, clientSecret);
config.apiBaseUrl = "https://api.groupdocs.cloud";

Node.js の REST API を使用して Excel を PDF に変換する

以下の簡単な手順に従って、クラウド上で Excel スプレッドシートを PDF ドキュメントに変換できます。

  1. XLSXファイルをクラウドにアップロード
  2. Node.js を使用して Excel を PDF に変換
  3. ダウンロード変換されたPDFファイル

Excelファイルをアップロードする

まず、次のコード サンプルを使用して、XLSX ファイルをクラウドにアップロードします。

// ローカル/ディスクからIOStreamでファイルを開きます。
var resourcesFolder = 'C:\\Files\\sample.xlsx';
fs.readFile(resourcesFolder, (err, fileStream) => {
  // FileApi を構築する
  var fileApi = groupdocs_conversion_cloud.FileApi.fromConfig(config);
  // アップロードファイルリクエストの作成
  var request = new groupdocs_conversion_cloud.UploadFileRequest("sample.xlsx", fileStream, myStorage);
  // ファイルをアップロードする
  fileApi.uploadFile(request);
});

その結果、アップロードされた XLSX ファイルは、クラウド上のダッシュボードの ファイル セクション で利用できるようになります。

Node.js を使用して Excel を PDF に変換する

以下の手順に従って、プログラムで XLSX を PDF ドキュメントに簡単に変換できます。

  • ConvertApi のインスタンスを作成する
  • ConvertSettings のインスタンスを作成する
  • XLSXファイルパスを設定します。
  • 形式に「pdf」を割り当てる
  • 出力ファイルのパスを指定します
  • ConvertSettings を使用して ConvertDocumentRequest を作成する
  • ConvertDocumentRequest で ConvertApi.convertDocument() メソッドを呼び出して変換します。

次のコード例は、Node.js の REST API を使用して Excel スプレッドシートを PDF ドキュメントに変換する方法を示しています。

// APIを初期化する
let convertApi = groupdocs_conversion_cloud.ConvertApi.fromKeys(clientId, clientSecret);

// 変換設定を定義する
let settings = new groupdocs_conversion_cloud.ConvertSettings();
settings.filePath = "sample.xlsx";  // input file path
settings.format = "pdf";            // convert format
settings.outputPath = "output";     // output file folder on the cloud storage

// ドキュメント変換リクエストの作成 
let request = new groupdocs_conversion_cloud.ConvertDocumentRequest(settings);

// ドキュメントを変換する
let result = await convertApi.convertDocument(request);
// 変換されたファイルパスを表示
console.log("Document converted successfully: " + result[0].url);
Node.js の REST API を使用して Excel を PDF に変換する

Node.js の REST API を使用して Excel を PDF に変換する

変換されたファイルをダウンロードする

上記のコードサンプルは、変換された PDF ファイルをクラウド上に保存します。次のコードサンプルを使用してダウンロードできます。

// FileApi を構築する
var fileApi = groupdocs_conversion_cloud.FileApi.fromConfig(config);

// ダウンロードファイルリクエストの作成
let request = new groupdocs_conversion_cloud.DownloadFileRequest("output/sample.pdf", myStorage);

// ダウンロードファイル
let response = await fileApi.downloadFile(request);

// ファイルを作業ディレクトリにコピーする
fs.writeFile("C:\\Files\\converted.pdf", response, "binary", function (err) { });
console.log(response);

Node.js で特定の Excel スプレッドシートを PDF に変換する

以下の手順に従って、特定の Excel スプレッドシートをプログラムで PDF ドキュメントに変換できます。

  • ConvertApi のインスタンスを作成する
  • ConvertSettings のインスタンスを作成する
  • XLSXファイルパスを設定します。
  • 形式に「pdf」を割り当てる
  • 出力ファイルのパスを指定します
  • PdfConvertOptions のインスタンスを作成する
  • 変換する特定のスプレッドシートを指定します
  • PdfConvertOptions を設定する
  • ConvertSettings を使用して ConvertDocumentRequest を作成する
  • ConvertDocumentRequest で ConvertApi.convertDocument() メソッドを呼び出して変換します。

次のコード例は、Node.js の REST API を使用して特定の Excel スプレッドシートを PDF ドキュメントに変換する方法を示しています。

// APIを初期化する
let convertApi = groupdocs_conversion_cloud.ConvertApi.fromKeys(clientId, clientSecret);

// 変換設定を定義する
let settings = new groupdocs_conversion_cloud.ConvertSettings();
settings.filePath = "sample.xlsx";
settings.format = "pdf";

// PDF 変換オプションを定義する
let convertOptions = new groupdocs_conversion_cloud.PdfConvertOptions();
convertOptions.pages = [1];  // define pages (sheets) to convert

settings.convertOptions = convertOptions
settings.outputPath = "specific_pages.pdf";

// ドキュメント変換リクエストの作成
let request = new groupdocs_conversion_cloud.ConvertDocumentRequest(settings);

// ドキュメントを変換する
let result = await convertApi.convertDocument(request);
console.log("Document converted successfully: " + result[0].url);
Node.js で特定の Excel スプレッドシートを PDF に変換する

Node.js で特定の Excel スプレッドシートを PDF に変換する

高度なオプションを使用した Excel から PDF への変換

高度な設定を使用して XLSX を PDF ドキュメントに変換するには、以下の手順に従ってください。

  • ConvertApi のインスタンスを作成する
  • ConvertSettings のインスタンスを作成する
  • XLSXファイルパスを設定します。
  • 形式に「pdf」を割り当てる
  • 出力ファイルのパスを指定します
  • SpreadsheetLoadOptions のインスタンスを作成する
  • HideComments、onePagePerSheet などのさまざまな読み込みオプションを設定します。
  • PdfConvertOptions のインスタンスを作成する
  • displayDocTitle、fromPage、pagesCount、マージン (上、左、右、下) などのさまざまな変換オプションを設定します。
  • ConvertSettings を使用して ConvertDocumentRequest を作成する
  • ConvertDocumentRequest で ConvertApi.convertDocument() メソッドを呼び出して変換します。

次のコード例は、高度な変換オプションを使用して Excel スプレッドシートを PDF ドキュメントに変換する方法を示しています。

// APIを初期化する
let convertApi = groupdocs_conversion_cloud.ConvertApi.fromKeys(clientId, clientSecret);

// 変換設定を定義する
var settings = new groupdocs_conversion_cloud.ConvertSettings();
settings.storageName = myStorage;
settings.filePath = "sample.xlsx";
settings.format = "pdf";

// スプレッドシートのロード オプションを定義する
var loadOptions = new groupdocs_conversion_cloud.SpreadsheetLoadOptions();
loadOptions.hideComments = true;		  // hide comments	
loadOptions.onePagePerSheet = true;		// set one page per sheet

settings.loadOptions = loadOptions;

// PDF 変換オプションを定義する
let convertOptions = new groupdocs_conversion_cloud.PdfConvertOptions();
convertOptions.centerWindow = true;		  // set position of the document's window. Default: false.
convertOptions.displayDocTitle = true;	// display document title. Default: false
convertOptions.fromPage = 2;			      // Start conversion from
convertOptions.pagesCount = 3;			    // Number of pages(sheets) to convert
convertOptions.marginTop = 5;			      // top margin
convertOptions.marginLeft = 5;			    // left margin

settings.convertOptions = convertOptions;
settings.outputPath = "converted.pdf";

// ドキュメント変換リクエストの作成
var request = new groupdocs_conversion_cloud.ConvertDocumentRequest(settings);

// 文書を作成する
convertApi.convertDocument(request)
Node.js を使用して Excel スプレッドシートを PDF に変換する

高度なオプションを使用した Excel から PDF への変換

クラウドストレージを使用せずに Excel を PDF に変換する

以下の手順に従って、クラウド ストレージを使用せずに Excel スプレッドシートを PDF ドキュメントに変換できます。

  • ConvertApi のインスタンスを作成する
  • ローカル パスから入力 XLSX ファイルを読み取ります
  • ConvertDocumentDirectRequest を作成する
  • ターゲット形式と入力ファイルのパスを入力パラメータとして指定します。
  • ConvertDocumentDirectRequest で convertDocumentDirect() メソッドを呼び出して結果を取得します
  • FileStream.writeFile() メソッドを使用して、出力ファイルをローカル パスに保存します。

次のコード例は、クラウド ストレージを使用せずに Excel スプレッドシートを PDF ドキュメントに変換する方法を示しています。これは、リクエスト本文で入力ファイルを渡し、API レスポンスで出力ファイルを受け取ることを意味します。

// APIを初期化する
let convertApi = groupdocs_conversion_cloud.ConvertApi.fromKeys(clientId, clientSecret);

// ローカルパスからファイルを読み取る
let file = fs.readFileSync('C:\\Files\\sample.xlsx');

// 作成、変換ドキュメントの直接リクエスト
let request = new groupdocs_conversion_cloud.ConvertDocumentDirectRequest("pdf", file);

// ドキュメントを変換する
let result = await convertApi.convertDocumentDirect(request);

// 出力ファイルを指定したパスに保存する
fs.writeFile("C:\\Files\\sample_direct.pdf", result, "binary", function (err) { });
console.log("Document converted: " + result.length);

Excel を PDF に変換し、透かしを追加する

以下の手順に従って、Excel スプレッドシートを透かし入りの PDF ドキュメントに変換できます。

  • ConvertApi のインスタンスを作成する
  • ConvertSettings のインスタンスを作成する
  • XLSXファイルパスを設定します。
  • 形式に「pdf」を割り当てる
  • 出力ファイルのパスを指定します
  • WatermarkOptions のインスタンスを作成する
  • 透かしのテキスト、色、幅、高さなどを設定します。
  • PdfConvertOptions を定義し、WatermarkOptions を割り当てます。
  • ConvertSettings を使用して ConvertDocumentRequest を作成する
  • ConvertDocumentRequest で ConvertApi.convertDocument() メソッドを呼び出して変換します。

次のコード例は、Node.js の REST API を使用して Excel スプレッドシートを PDF ドキュメントに変換し、変換された PDF ドキュメントにウォーターマークを追加する方法を示しています。

// APIを初期化する
let convertApi = groupdocs_conversion_cloud.ConvertApi.fromKeys(clientId, clientSecret);

// 変換設定を定義する
let settings = new groupdocs_conversion_cloud.ConvertSettings();
settings.filePath = "sample.xlsx";
settings.format = "pdf";
settings.outputPath = "converted";

// 透かしオプションを定義する
let watermark = new groupdocs_conversion_cloud.WatermarkOptions();
watermark.text = "CONFIDENTIAL";
watermark.bold = true;
watermark.fontSize = 44;
watermark.color = "Gray";
watermark.background = false;
watermark.rotationAngle = 30;
watermark.left = 100;
watermark.top = 250;

// PDF 変換オプションを定義する
let convertOptions = new groupdocs_conversion_cloud.PdfConvertOptions();
convertOptions.watermarkOptions = watermark;

// 変換オプションを割り当てる
settings.convertOptions = convertOptions

// ドキュメント変換リクエストの作成
let request = new groupdocs_conversion_cloud.ConvertDocumentRequest(settings);

// ドキュメントを変換する
let result = await convertApi.convertDocument(request);
// 出力ドキュメントのパスを表示
console.log("Document converted successfully: " + result[0].url);
Excel を PDF に変換し、透かしを追加する

Excel を PDF に変換し、透かしを追加する

オンラインで試す

上記の API を使用して開発された、次の無料のオンライン XLSX から PDF への変換ツールをお試しください。 https://products.groupdocs.app/conversion/xlsx-to-pdf

結論

この記事では、クラウド上で Excel を PDF ドキュメントに変換する方法を学習しました。 Node.js を使用して、変換された PDF ドキュメントにウォーターマークを追加する方法も学習しました。さらに、クラウド ストレージを使用せずに Excel スプレッドシートを PDF ドキュメントに変換する方法を学びました。さらに、XLSX ファイルをプログラムでクラウドにアップロードし、変換されたファイルをクラウドからダウンロードする方法を学習しました。 GroupDocs.Conversion Cloud API の詳細については、ドキュメント を使用して学習できます。また、ブラウザーを通じて直接 API を視覚化し操作できるようにする API リファレンス セクションも提供しています。不明な点がある場合は、フォーラム でお気軽にお問い合わせください。

関連項目