<?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>pdf splitting on Document Processing REST APIs | GroupDocs Cloud</title>
    <link>https://blog-qa.groupdocs.cloud/zh/tag/pdf-splitting/</link>
    <description>Recent content in pdf splitting on Document Processing REST APIs | GroupDocs Cloud</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>zh</language>
    <lastBuildDate>Fri, 25 Sep 2026 09:41:12 +0000</lastBuildDate><atom:link href="https://blog-qa.groupdocs.cloud/zh/tag/pdf-splitting/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>在 Node.JS 中将 PDF 拆分为多个 PDF</title>
      <link>https://blog-qa.groupdocs.cloud/zh/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/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="使用-rest-api-和-curl-拆分-pdf">使用 REST API 和 cURL 拆分 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 参考</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/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/merger/split-pdf-file-into-multiple-pdf-files-using-python/">使用 Python 将 PDF 文件拆分为多个 PDF 文件</a></li>
<li><a href="https://blog.groupdocs.cloud/zh/merger/java-document-splitting-split-pdf-into-multiple-files-in-java/">Java 文档拆分 API - 在 Java 中将 PDF 拆分为多个文件</a></li>
</ul>
]]></content:encoded>
    </item>
    
  </channel>
</rss>
