<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>nodejs pdf on Document Processing REST APIs | GroupDocs Cloud</title>
    <link>https://blog-qa.groupdocs.cloud/zh-hant/tag/nodejs-pdf/</link>
    <description>Recent content in nodejs pdf on Document Processing REST APIs | GroupDocs Cloud</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>zh-hant</language>
    <lastBuildDate>Fri, 25 Sep 2026 09:41:12 +0000</lastBuildDate><atom:link href="https://blog-qa.groupdocs.cloud/zh-hant/tag/nodejs-pdf/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>在 Node.JS 中將 PDF 拆分為多個 PDF</title>
      <link>https://blog-qa.groupdocs.cloud/zh-hant/merger/split-pdf-into-multiple-pdf-in-nodejs/</link>
      <pubDate>Fri, 25 Sep 2026 09:41:12 +0000</pubDate>
      
      <guid>https://blog-qa.groupdocs.cloud/zh-hant/merger/split-pdf-into-multiple-pdf-in-nodejs/</guid>
      <description>了解如何在 Node.js 中使用 GroupDocs.Merger Cloud SDK 拆分 PDF。获取逐步代码、cURL 示例以及 PDF 拆分的配置技巧。</description>
      <content:encoded><![CDATA[<p>開發人員常常需要將大型 <a href="https://docs.fileformat.com/pdf">PDF</a> 檔案拆分為較小、更易於管理的部分。使用 <a href="https://products.groupdocs.cloud/merger/nodejs/">GroupDocs.Merger Cloud SDK for Node.JS</a>，將 PDF 拆分為多個部分變得簡單，因為雲服務負責繁重的工作，而您只需專注於應用程式邏輯。本指南提供完整的可運行範例，展示如何透過 cURL 執行相同的任務，並說明可讓您微調拆分操作的配置選項。</p>
<h2 id="在-nodejs-中將-pdf-拆分為多個-pdf---完整程式碼範例">在 Node.JS 中將 PDF 拆分為多個 PDF - 完整程式碼範例</h2>
<p>此範例示範如何使用 GroupDocs.Merger Cloud SDK for Node.JS 將 PDF 拆分為多個 PDF 檔案。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">fs</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">require</span>(<span style="color:#e6db74">&#39;fs&#39;</span>);
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">path</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">require</span>(<span style="color:#e6db74">&#39;path&#39;</span>);
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">GroupDocsMergerCloud</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">require</span>(<span style="color:#e6db74">&#39;@groupdocs/merger-cloud&#39;</span>);
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// ---------- Set up API credentials ----------
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">client</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsMergerCloud</span>.<span style="color:#a6e22e">ApiClient</span>();
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">client</span>.<span style="color:#a6e22e">appSid</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#39;YOUR_APP_SID&#39;</span>;
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">client</span>.<span style="color:#a6e22e">appKey</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#39;YOUR_APP_KEY&#39;</span>;
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// ---------- Initialize API instances ----------
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">mergerApi</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsMergerCloud</span>.<span style="color:#a6e22e">MergerApi</span>(<span style="color:#a6e22e">client</span>);
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">storageApi</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsMergerCloud</span>.<span style="color:#a6e22e">StorageApi</span>(<span style="color:#a6e22e">client</span>);
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// ---------- Helper to upload a local file to cloud storage ----------
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#66d9ef">async</span> <span style="color:#66d9ef">function</span> <span style="color:#a6e22e">uploadFile</span>(<span style="color:#a6e22e">localPath</span>, <span style="color:#a6e22e">cloudPath</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">fileData</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">fs</span>.<span style="color:#a6e22e">readFileSync</span>(<span style="color:#a6e22e">localPath</span>);
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">uploadRequest</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsMergerCloud</span>.<span style="color:#a6e22e">UploadFileRequest</span>({
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">path</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">cloudPath</span>,
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">file</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">fileData</span>
</span></span><span style="display:flex;"><span>    });
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">await</span> <span style="color:#a6e22e">storageApi</span>.<span style="color:#a6e22e">uploadFile</span>(<span style="color:#a6e22e">uploadRequest</span>);
</span></span><span style="display:flex;"><span>}
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// ---------- Helper to download a cloud file to local storage ----------
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#66d9ef">async</span> <span style="color:#66d9ef">function</span> <span style="color:#a6e22e">downloadFile</span>(<span style="color:#a6e22e">cloudPath</span>, <span style="color:#a6e22e">localPath</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">downloadRequest</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsMergerCloud</span>.<span style="color:#a6e22e">DownloadFileRequest</span>({ <span style="color:#a6e22e">path</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">cloudPath</span> });
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">response</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">await</span> <span style="color:#a6e22e">storageApi</span>.<span style="color:#a6e22e">downloadFile</span>(<span style="color:#a6e22e">downloadRequest</span>);
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">fs</span>.<span style="color:#a6e22e">writeFileSync</span>(<span style="color:#a6e22e">localPath</span>, <span style="color:#a6e22e">response</span>);
</span></span><span style="display:flex;"><span>}
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// ---------- Main execution ----------
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>(<span style="color:#66d9ef">async</span> () =&gt; {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">try</span> {
</span></span><span style="display:flex;"><span>        <span style="color:#75715e">// 1. Upload source PDF to cloud storage
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>        <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">localInputPdf</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">path</span>.<span style="color:#a6e22e">resolve</span>(<span style="color:#a6e22e">__dirname</span>, <span style="color:#e6db74">&#39;input.pdf&#39;</span>);          <span style="color:#75715e">// local source PDF
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>        <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">cloudInputPdf</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#39;input/input.pdf&#39;</span>;                            <span style="color:#75715e">// cloud path
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>        <span style="color:#66d9ef">await</span> <span style="color:#a6e22e">uploadFile</span>(<span style="color:#a6e22e">localInputPdf</span>, <span style="color:#a6e22e">cloudInputPdf</span>);
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>(<span style="color:#e6db74">&#39;Uploaded PDF to cloud storage.&#39;</span>);
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>        <span style="color:#75715e">// 2. Configure split options (example: split into two parts: pages 1‑2 and 3‑5)
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>        <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">splitOptions</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsMergerCloud</span>.<span style="color:#a6e22e">SplitOptions</span>({
</span></span><span style="display:flex;"><span>            <span style="color:#a6e22e">pages</span><span style="color:#f92672">:</span> [<span style="color:#e6db74">&#39;1-2&#39;</span>, <span style="color:#e6db74">&#39;3-5&#39;</span>]                                            <span style="color:#75715e">// page ranges to split
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>        });
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>        <span style="color:#75715e">// 3. Build split request
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>        <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">splitRequest</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsMergerCloud</span>.<span style="color:#a6e22e">SplitDocumentRequest</span>({
</span></span><span style="display:flex;"><span>            <span style="color:#a6e22e">fileInfo</span><span style="color:#f92672">:</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsMergerCloud</span>.<span style="color:#a6e22e">FileInfo</span>({ <span style="color:#a6e22e">filePath</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">cloudInputPdf</span> }),
</span></span><span style="display:flex;"><span>            <span style="color:#a6e22e">options</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">splitOptions</span>
</span></span><span style="display:flex;"><span>        });
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>        <span style="color:#75715e">// 4. Execute split operation
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>        <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">splitResult</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">await</span> <span style="color:#a6e22e">mergerApi</span>.<span style="color:#a6e22e">splitDocument</span>(<span style="color:#a6e22e">splitRequest</span>);
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>(<span style="color:#e6db74">`Split operation completed. </span><span style="color:#e6db74">${</span><span style="color:#a6e22e">splitResult</span>.<span style="color:#a6e22e">length</span><span style="color:#e6db74">}</span><span style="color:#e6db74"> parts generated.`</span>);
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>        <span style="color:#75715e">// 5. Download each split part and save locally
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>        <span style="color:#66d9ef">for</span> (<span style="color:#66d9ef">let</span> <span style="color:#a6e22e">i</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">0</span>; <span style="color:#a6e22e">i</span> <span style="color:#f92672">&lt;</span> <span style="color:#a6e22e">splitResult</span>.<span style="color:#a6e22e">length</span>; <span style="color:#a6e22e">i</span><span style="color:#f92672">++</span>) {
</span></span><span style="display:flex;"><span>            <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">partInfo</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">splitResult</span>[<span style="color:#a6e22e">i</span>];
</span></span><span style="display:flex;"><span>            <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">localOutputPath</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">path</span>.<span style="color:#a6e22e">resolve</span>(<span style="color:#a6e22e">__dirname</span>, <span style="color:#e6db74">`output_part_</span><span style="color:#e6db74">${</span><span style="color:#a6e22e">i</span> <span style="color:#f92672">+</span> <span style="color:#ae81ff">1</span><span style="color:#e6db74">}</span><span style="color:#e6db74">.pdf`</span>);
</span></span><span style="display:flex;"><span>            <span style="color:#66d9ef">await</span> <span style="color:#a6e22e">downloadFile</span>(<span style="color:#a6e22e">partInfo</span>.<span style="color:#a6e22e">path</span>, <span style="color:#a6e22e">localOutputPath</span>);
</span></span><span style="display:flex;"><span>            <span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>(<span style="color:#e6db74">`Saved split part </span><span style="color:#e6db74">${</span><span style="color:#a6e22e">i</span> <span style="color:#f92672">+</span> <span style="color:#ae81ff">1</span><span style="color:#e6db74">}</span><span style="color:#e6db74"> to </span><span style="color:#e6db74">${</span><span style="color:#a6e22e">localOutputPath</span><span style="color:#e6db74">}</span><span style="color:#e6db74">`</span>);
</span></span><span style="display:flex;"><span>        }
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>        <span style="color:#75715e">// 6. (Optional) Clean up cloud storage – delete uploaded source file
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>        <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">deleteRequest</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsMergerCloud</span>.<span style="color:#a6e22e">DeleteFileRequest</span>({ <span style="color:#a6e22e">path</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">cloudInputPdf</span> });
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">await</span> <span style="color:#a6e22e">storageApi</span>.<span style="color:#a6e22e">deleteFile</span>(<span style="color:#a6e22e">deleteRequest</span>);
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>(<span style="color:#e6db74">&#39;Cleaned up source file from cloud storage.&#39;</span>);
</span></span><span style="display:flex;"><span>    } <span style="color:#66d9ef">catch</span> (<span style="color:#a6e22e">error</span>) {
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">error</span>(<span style="color:#e6db74">&#39;Error during PDF split process:&#39;</span>, <span style="color:#a6e22e">error</span>);
</span></span><span style="display:flex;"><span>    }
</span></span><span style="display:flex;"><span>})();
</span></span></code></pre></div><blockquote>
<p><strong>注意：</strong> 此代碼示例演示了核心功能。在將其用於您的項目之前，請確保更新所有文件路徑和配置值以匹配實際環境，驗證所有必需的依賴項已正確安裝，並在開發環境中徹底測試。如果遇到任何問題，請參閱<a href="https://docs.groupdocs.cloud/merger/">官方文檔</a>或聯繫<a href="https://forum.groupdocs.cloud/c/merger/18">支援團隊</a>尋求協助。</p>
</blockquote>
<h2 id="使用-curl-的-rest-api-拆分-pdf">使用 cURL 的 REST API 拆分 PDF</h2>
<p>如果您更喜歡純粹的 REST 方法，可以使用 cURL 命令執行相同的拆分操作。以下步驟說明如何獲取訪問令牌、上傳源 PDF、執行拆分以及下載每個部分。</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span><span style="color:#75715e"># 1. Get an access token (replace YOUR_CLIENT_ID and YOUR_CLIENT_SECRET)</span>
</span></span><span style="display:flex;"><span>curl -X POST <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/oauth2/token&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -H <span style="color:#e6db74">&#34;Content-Type: application/x-www-form-urlencoded&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -d <span style="color:#e6db74">&#34;grant_type=client_credentials&amp;client_id=YOUR_CLIENT_ID&amp;client_secret=YOUR_CLIENT_SECRET&#34;</span>
</span></span></code></pre></div><div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span><span style="color:#75715e"># 2. Upload the source PDF (replace YOUR_ACCESS_TOKEN and adjust paths)</span>
</span></span><span style="display:flex;"><span>curl -X PUT <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/storage/file/input.pdf&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -H <span style="color:#e6db74">&#34;Authorization: Bearer YOUR_ACCESS_TOKEN&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -H <span style="color:#e6db74">&#34;Content-Type: application/pdf&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     --data-binary @./input.pdf
</span></span></code></pre></div><div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span><span style="color:#75715e"># 3. Execute the split operation (pages 1-2 and 3-5)</span>
</span></span><span style="display:flex;"><span>curl -X POST <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/merger/split&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -H <span style="color:#e6db74">&#34;Authorization: Bearer YOUR_ACCESS_TOKEN&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -H <span style="color:#e6db74">&#34;Content-Type: application/json&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -d <span style="color:#e6db74">&#39;{
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">           &#34;fileInfo&#34;: { &#34;filePath&#34;: &#34;input.pdf&#34; },
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">           &#34;options&#34;: { &#34;pages&#34;: [&#34;1-2&#34;,&#34;3-5&#34;] }
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">         }&#39;</span>
</span></span></code></pre></div><div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span><span style="color:#75715e"># 4. Download each generated part (example for part 1)</span>
</span></span><span style="display:flex;"><span>curl -X GET <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/storage/file/output_part_1.pdf&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -H <span style="color:#e6db74">&#34;Authorization: Bearer YOUR_ACCESS_TOKEN&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -o ./output_part_1.pdf
</span></span></code></pre></div><p>欲取得完整的端點與參數清單，請參閱<a href="https://reference.groupdocs.cloud/merger/">官方 API 文件</a>。</p>
<h2 id="nodejs-中拆分-pdf-為多個-pdf-的工作原理">Node.JS 中拆分 PDF 為多個 PDF 的工作原理</h2>
<p>了解流程有助於您將代碼適應於更複雜的情況。</p>
<ol>
<li><strong>初始化 API 客戶端</strong> - <code>new GroupDocsMergerCloud.ApiClient()</code> 會建立一個保存您的 App SID 和 App Key 的客戶端。</li>
</ol>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">client</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsMergerCloud</span>.<span style="color:#a6e22e">ApiClient</span>();
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">client</span>.<span style="color:#a6e22e">appSid</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#39;YOUR_APP_SID&#39;</span>;
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">client</span>.<span style="color:#a6e22e">appKey</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#39;YOUR_APP_KEY&#39;</span>;
</span></span></code></pre></div><ol start="2">
<li><strong>上傳來源檔案</strong> - 輔助函式 <code>uploadFile</code> 讀取本機 PDF，並使用 <code>storageApi.uploadFile</code> 將其傳送至雲端儲存。</li>
</ol>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">await</span> <span style="color:#a6e22e">uploadFile</span>(<span style="color:#a6e22e">localInputPdf</span>, <span style="color:#a6e22e">cloudInputPdf</span>);
</span></span></code></pre></div><ol start="3">
<li><strong>配置拆分選項</strong> - <code>new GroupDocsMergerCloud.SplitOptions({ pages: ['1-2', '3-5'] })</code> 告訴服務要提取哪些頁面範圍。</li>
</ol>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">splitOptions</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsMergerCloud</span>.<span style="color:#a6e22e">SplitOptions</span>({
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">pages</span><span style="color:#f92672">:</span> [<span style="color:#e6db74">&#39;1-2&#39;</span>, <span style="color:#e6db74">&#39;3-5&#39;</span>]
</span></span><span style="display:flex;"><span>});
</span></span></code></pre></div><ol start="4">
<li><strong>發送拆分請求</strong> - <code>mergerApi.splitDocument(splitRequest)</code> 發送請求並返回一個包含每個生成部分資訊的陣列。</li>
</ol>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">splitResult</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">await</span> <span style="color:#a6e22e">mergerApi</span>.<span style="color:#a6e22e">splitDocument</span>(<span style="color:#a6e22e">splitRequest</span>);
</span></span></code></pre></div><ol start="5">
<li><strong>下載結果</strong> - 此迴圈遍歷 <code>splitResult</code>，對每個部分呼叫 <code>downloadFile</code> 並將其保存到本機。</li>
</ol>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">for</span> (<span style="color:#66d9ef">let</span> <span style="color:#a6e22e">i</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">0</span>; <span style="color:#a6e22e">i</span> <span style="color:#f92672">&lt;</span> <span style="color:#a6e22e">splitResult</span>.<span style="color:#a6e22e">length</span>; <span style="color:#a6e22e">i</span><span style="color:#f92672">++</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">partInfo</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">splitResult</span>[<span style="color:#a6e22e">i</span>];
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">await</span> <span style="color:#a6e22e">downloadFile</span>(<span style="color:#a6e22e">partInfo</span>.<span style="color:#a6e22e">path</span>, <span style="color:#a6e22e">localOutputPath</span>);
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><p>如需了解每個類別和方法的更深入細節，請參考 <a href="https://reference.groupdocs.cloud/merger/">API 參考</a>。</p>
<h2 id="前置條件與設定">前置條件與設定</h2>
<p>在開始之前，請確保您具備以下條件：</p>
<ul>
<li>已安裝 Node.js 14 或更高版本。</li>
<li>具備有效 App SID 和 App Key 的 GroupDocs Cloud 帳戶。</li>
<li>需要能夠連接互聯網以進行 API 呼叫。</li>
</ul>
<p>通過 npm 安裝 SDK 並下載最新的套件：</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>npm install groupdocs-merger-cloud
</span></span></code></pre></div><p>您也可以直接從<a href="https://releases.groupdocs.cloud/merger/nodejs/">下載頁面</a>取得二進位檔。</p>
<h2 id="微調拆分選項">微調拆分選項</h2>
<p><code>SplitOptions</code> 物件提供了多個可調整的屬性：</p>
<ul>
<li><strong>pages</strong> - 一個頁面範圍的陣列（例如 <code>['1-2','3-5']</code>）。這是範例中使用的核心設定。</li>
<li><strong>outputPath</strong> - 可選的資料夾，用於在雲端儲存中存放分割後的檔案。</li>
<li><strong>preserveMetadata</strong> - 設為 <code>true</code> 時，會將原始文件的中繼資料複製到每個部分。請參閱 <a href="https://reference.groupdocs.cloud/merger/">API reference</a> 以獲取更多選項。</li>
</ul>
<p>調整這些值可讓您控制每個生成的 PDF 的大小、命名和元資料。</p>
<h2 id="結論">結論</h2>
<p>在 Node.JS 中將 PDF 拆分為多個 PDF 變得簡單，使用 <a href="https://products.groupdocs.cloud/merger/nodejs/">GroupDocs.Merger Cloud SDK for Node.JS</a>。該 SDK 處理檔案上傳、頁面範圍選擇以及結果檢索，讓您專注於將輸出整合到工作流程中。請記得保護您的 App SID 和 App Key，並考慮在生產部署中使用商業授權。產品頁面提供價格細節，您也可以從 <a href="https://purchase.groupdocs.cloud/temporary-license/">臨時授權頁面</a> 獲取臨時授權。有了本指南中的程式碼、cURL 範例和配置技巧，您即可在 Node.JS 應用程式中實作穩健的 PDF 拆分功能。</p>
<h2 id="常見問題">常見問題</h2>
<ul>
<li>
<p><strong>如何在 Node.JS 中使用自訂頁面範圍將 PDF 分割成多個 PDF？</strong><br>
使用 <code>SplitOptions</code> 的 <code>pages</code> 屬性來定義所需的任何範圍，例如 <code>['1-3','4-6']</code>。SDK 會為每個範圍生成單獨的 PDF。</p>
</li>
<li>
<p><strong>我可以在不將 PDF 永久存儲在雲端儲存的情況下分割它嗎？</strong><br>
是的。上傳來源檔案並完成分割後，您可以使用 <code>storageApi.deleteFile</code> 刪除原始檔案，如範例所示。</p>
</li>
<li>
<p><strong>我需要付費授權才能在生產環境中使用 split 功能嗎？</strong><br>
生產環境使用需要商業授權。請訪問產品頁面了解價格，並從<a href="https://purchase.groupdocs.cloud/temporary-license/">臨時授權頁面</a>獲取臨時授權以進行評估。</p>
</li>
</ul>
<h2 id="閱讀更多">閱讀更多</h2>
<ul>
<li><a href="https://blog.groupdocs.cloud/zh-hant/merger/split-powerpoint-ppt-or-pptx-into-multiple-files-in-node.js/">在 Node.js 中將 PowerPoint PPT 或 PPTX 拆分為多個檔案</a></li>
<li><a href="https://blog.groupdocs.cloud/zh-hant/merger/split-pdf-file-into-multiple-pdf-files-using-python/">使用 Python 將 PDF 檔案拆分為多個 PDF 檔案</a></li>
<li><a href="https://blog.groupdocs.cloud/zh-hant/merger/java-document-splitting-split-pdf-into-multiple-files-in-java/">Java 文件拆分 API - 在 Java 中將 PDF 拆分為多個檔案</a></li>
</ul>
]]></content:encoded>
    </item>
    
  </channel>
</rss>
