HTML JPG PDF XML DOCX
  Product Family
PDF

Node.js Cloud APIでPDFを圧縮

Cloud Node.js SDKを使用してPDFドキュメントを最適化するためのAPI

Get Started

Node.js SDKを使用してPDFを圧縮する方法

PDFを圧縮するには、 Aspose.PDF Cloud Node.js SDKを使用します。このCloud SDKは、Node.jsプログラマーがAspose.PDF REST APIを介してNode.jsプログラミング言語を使用して、クラウドベースのPDFクリエーター、注釈付け、編集、および変換アプリを開発するのを支援します。Aspose for Cloudでアカウントを作成し、アプリケーション情報を取得してください。App SIDとキーを取得したら、Aspose.PDF Cloud Node.js SDKを使用する準備が整います。この方法は、Aspose.PDF Cloud SDK for Node.jsを使用してPDFドキュメントを効率的に最適化します。アップロード、最適化、ダウンロードのプロセスを自動化することで、開発者のワークフローを簡素化します。さまざまな最適化オプションにより、品質を損なうことなく結果のPDFが小さくなります。

パッケージマネージャーコンソールコマンド


     
    npm install asposepdfcloud --save
     
     

Cloud Node.jsを使用してPDFを圧縮する手順

Aspose.PDF Cloud開発者は、わずか数行のコードでPDFを簡単にロードおよび圧縮できます。

  1. Aspose PDF APIを初期化する
  2. PDFドキュメントをクラウドストレージにアップロードする
  3. PDFドキュメントを圧縮する
  4. 最適化されたPDFドキュメントをダウンロードする
  5. 最適化プロセスを実行する
 

Node.jsを使用してPDFを圧縮する


    import credentials from "../../../Credentials/credentials.json"  with { type: "json" };    // json-file in this format: { "id": "*****", "key": "*******" }
    import fs from 'node:fs/promises';
    import path from 'node:path';
    import { PdfApi } from "../../src/api/api.js";
    import { OptimizeOptions } from "../../src/models/optimizeOptions.js";

    const configParams = {
        LOCAL_FOLDER: "C:\\Samples\\",
        PDF_DOCUMENT_NAME: "sample.pdf",
        TEMP_FOLDER : 'TempPdfCloud',
        LOCAL_RESULT_DOCUMENT_NAME: "output_sample.pdf",
    };

    const pdfApi = new PdfApi(credentials.id, credentials.key);

    const PdfCompress = {
        async uploadDocument (fileName, localFolder) {
            const fileNamePath = path.join(configParams.LOCAL_FOLDER, configParams.PDF_DOCUMENT_NAME);
            const fileData = await fs.readFile(fileNamePath);
            const storagePath = path.join(configParams.TEMP_FOLDER, configParams.PDF_DOCUMENT_NAME);
            await pdfApi.uploadFile(storagePath, fileData)
                .then(() => console.log("File: '" + configParams.PDF_DOCUMENT_NAME +"' successfully uploaded."));
        },

        async downloadResult() {
            const fileName = path.join( configParams.TEMP_FOLDER, configParams.PDF_DOCUMENT_NAME);
            const changedPdfData = await pdfApi.downloadFile(fileName);
            const filePath = path.join(configParams.LOCAL_FOLDER, configParams.LOCAL_RESULT_DOCUMENT_NAME);
            await fs.writeFile(filePath, changedPdfData.body);
            console.log("Downloaded: " + filePath);
        },

        async compressPdfDocument() {
            if ( pdfApi ) {

                const optimizeOptions = new OptimizeOptions();
                optimizeOptions.allowReusePageContent = true;
                optimizeOptions.compressImages = true;
                optimizeOptions.imageQuality = 100;
                optimizeOptions.linkDuplcateStreams = true;
                optimizeOptions.removeUnusedObjects = true;
                optimizeOptions.removeUnusedStreams = true;            
                optimizeOptions.unembedFonts = true;
    
                const response = await pdfApi.postOptimizeDocument(configParams.PDF_DOCUMENT_NAME, optimizeOptions, null, configParams.TEMP_FOLDER);
                if (response.body.code != 200)
                    console.error("compressPdfDocument(): Failed to compress the PDF document!");
                else
                    console.log("compressPdfDocument(): Successfully copressed the PDF document '" + configParams.PDF_DOCUMENT_NAME + "' !");
            }
        },
    };

    async function main() {
        try {
            await PdfCompress.uploadDocument();
            await PdfCompress.compressPdfDocument();
            await PdfCompress.downloadResult();

        } catch (error) {
            console.error("Error:", error.message);
        }
    }
 

私たちのNode.jsライブラリでできること

Aspose.PDF Cloud Node.js SDKでPDFドキュメントを圧縮します。

  • PDFドキュメントのヘッダーとフッターをテキストまたは画像形式で追加する。
  • PDFドキュメントにテーブルとスタンプ(テキストまたは画像)を追加する。
  • 複数のPDFドキュメントを既存のファイルに追加する。
  • PDFの添付ファイル、注釈、およびフォームフィールドを操作する。
  • PDFドキュメントに暗号化または復号化を適用し、パスワードを設定する。
  • ページまたは全体のPDFドキュメントからすべてのスタンプとテーブルを削除する。
  • PDFドキュメントからIDで特定のスタンプまたはテーブルを削除する。
  • PDFページまたはドキュメント全体のテキストの単一または複数のインスタンスを置き換える。
  • PDFドキュメントをさまざまな他のファイル形式に変換するための幅広いサポート。
  • PDFファイルのさまざまな要素を抽出し、PDFドキュメントを最適化する。
  • 機能をテストするために無料アプリを試すことができます。