<?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 html docx on Document Processing REST APIs | GroupDocs Cloud</title>
    <link>https://blog-qa.groupdocs.cloud/fa/tag/nodejs-html-docx/</link>
    <description>Recent content in nodejs html docx on Document Processing REST APIs | GroupDocs Cloud</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>fa</language>
    <lastBuildDate>Mon, 27 Jul 2026 10:59:23 +0000</lastBuildDate><atom:link href="https://blog-qa.groupdocs.cloud/fa/tag/nodejs-html-docx/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>آموزش گام به گام تبدیل HTML به DOCX در Node.JS</title>
      <link>https://blog-qa.groupdocs.cloud/fa/conversion/step-by-step-html-to-docx-conversion-tutorial-in-nodejs/</link>
      <pubDate>Mon, 27 Jul 2026 10:59:23 +0000</pubDate>
      
      <guid>https://blog-qa.groupdocs.cloud/fa/conversion/step-by-step-html-to-docx-conversion-tutorial-in-nodejs/</guid>
      <description>نحوه تبدیل HTML به DOCX در Node.JS با استفاده از GroupDocs.Conversion Cloud SDK را بیاموزید. این راهنما را با کد، دستورات cURL و نکات بهینه‌سازی دنبال کنید.</description>
      <content:encoded><![CDATA[<p>تبدیل صفحات غنی <a href="https://docs.fileformat.com/web/html/">HTML</a> به فایل‌های قابل ویرایش <a href="https://docs.fileformat.com/word-processing/docx/">DOCX</a> یک نیاز مکرر برای گزارش‌گیری و گردش‌کارهای خودکار سند است. <a href="https://products.groupdocs.cloud/conversion/nodejs/">GroupDocs.Conversion Cloud SDK for Node.js</a> به توسعه‌دهندگان امکان می‌دهد این تبدیل را به‌صورت کامل از طریق یک کتابخانه مبتنی بر REST انجام دهند. در این آموزش خواهید دید که چگونه SDK را تنظیم کنید، کد Node.JS بنویسید که تبدیل HTML به DOCX را در Node.JS انجام می‌دهد، از cURL برای فراخوانی API استفاده کنید، و گزینه‌های پیکربندی را برای نتایج بهینه اعمال کنید.</p>
<h2 id="پیشنیازها-و-تنظیمات">پیش‌نیازها و تنظیمات</h2>
<p>قبل از شروع، مطمئن شوید که موارد زیر را دارید:</p>
<ul>
<li>Node.js 14 یا بالاتر نصب شده بر روی ماشین توسعه شما.</li>
<li>یک حساب فعال GroupDocs.Conversion Cloud (می‌توانید برای یک دوره آزمایشی رایگان در صفحه محصول ثبت‌نام کنید).</li>
<li><strong>Client ID</strong> و <strong>Client Secret</strong> خود را از داشبورد GroupDocs Cloud دریافت کنید.</li>
<li>اتصال اینترنت برای فراخوانی REST API ابری.</li>
</ul>
<p>SDK را از طریق npm نصب کنید:</p>
<!--[CODE_SNIPPET_START]-->
<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-conversion-cloud
</span></span></code></pre></div><!--[CODE_SNIPPET_END]-->
<p>آخرین بسته را دانلود کنید و اگر نیاز به بررسی کد دارید، منبع آن را در GitHub مشاهده کنید:</p>
<p><a href="https://releases.groupdocs.cloud/conversion/nodejs/">دانلود GroupDocs.Conversion Cloud SDK for Node.js</a></p>
<p>پس از نصب SDK و آماده بودن اعتبارها، می‌توانید به پیاده‌سازی ادامه دهید.</p>
<h2 id="تبدیل-html-به-docx-در-nodejs-راهنمای-گامبهگام">تبدیل HTML به DOCX در Node.JS: راهنمای گام‌به‌گام</h2>
<p>در ادامه یک راهنمای مختصر ارائه شده است که هر گام منطقی را نشان می‌دهد. کد منبع کامل بعداً ارائه خواهد شد.</p>
<h3 id="مرحله-1-مقداردهی-اولیه-کلاینت-api-تبدیل">مرحله 1: مقداردهی اولیه کلاینت API تبدیل</h3>
<p>یک نمونه از <code>ConversionApi</code> ایجاد کنید و احراز هویت را پیکربندی کنید.</p>
<!--[CODE_SNIPPET_START]-->
<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">ConversionApi</span>, <span style="color:#a6e22e">Configuration</span> } <span style="color:#f92672">=</span> <span style="color:#a6e22e">require</span>(<span style="color:#e6db74">&#39;groupdocs-conversion-cloud&#39;</span>);
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">config</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">Configuration</span>({
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">clientId</span><span style="color:#f92672">:</span> <span style="color:#e6db74">&#39;YOUR_CLIENT_ID&#39;</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">clientSecret</span><span style="color:#f92672">:</span> <span style="color:#e6db74">&#39;YOUR_CLIENT_SECRET&#39;</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:#66d9ef">const</span> <span style="color:#a6e22e">conversionApi</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">ConversionApi</span>(<span style="color:#a6e22e">config</span>);
</span></span></code></pre></div><!--[CODE_SNIPPET_END]-->
<h3 id="مرحله۲-بارگذاری-فایل-منبع-html">مرحله ۲: بارگذاری فایل منبع HTML</h3>
<p>فایل HTML که می‌خواهید تبدیل کنید را بارگذاری کنید. API یک شناسه فایل برمی‌گرداند که برای تبدیل از آن استفاده خواهید کرد.</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></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">htmlPath</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;sample.html&#39;</span>);
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">fileBytes</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">fs</span>.<span style="color:#a6e22e">readFileSync</span>(<span style="color:#a6e22e">htmlPath</span>);
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">uploadResponse</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">await</span> <span style="color:#a6e22e">conversionApi</span>.<span style="color:#a6e22e">uploadFile</span>({
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">file</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">fileBytes</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">fileName</span><span style="color:#f92672">:</span> <span style="color:#e6db74">&#39;sample.html&#39;</span>
</span></span><span style="display:flex;"><span>});
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">sourceFileId</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">uploadResponse</span>.<span style="color:#a6e22e">id</span>;
</span></span></code></pre></div><h3 id="مرحله-3-تنظیم-گزینههای-تبدیل">مرحله 3: تنظیم گزینه‌های تبدیل</h3>
<p>هر گزینه خاص DOCX را پیکربندی کنید، مانند جاسازی قلم‌ها یا تنظیم حاشیه‌های صفحه. این گام سفارشی‌سازی <strong>DOCX Generation from HTML</strong> را نشان می‌دهد.</p>
<!--[CODE_SNIPPET_START]-->
<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">convertSettings</span> <span style="color:#f92672">=</span> {
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">outputFormat</span><span style="color:#f92672">:</span> <span style="color:#e6db74">&#39;DOCX&#39;</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">options</span><span style="color:#f92672">:</span> {
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">embedFonts</span><span style="color:#f92672">:</span> <span style="color:#66d9ef">true</span>,
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">pageSize</span><span style="color:#f92672">:</span> <span style="color:#e6db74">&#39;A4&#39;</span>,
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">marginTop</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">20</span>,
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">marginBottom</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">20</span>,
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">marginLeft</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">15</span>,
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">marginRight</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">15</span>
</span></span><span style="display:flex;"><span>    }
</span></span><span style="display:flex;"><span>};
</span></span></code></pre></div><!--[CODE_SNIPPET_END]-->
<h3 id="مرحله-4-اجرای-تبدیل">مرحله 4: اجرای تبدیل</h3>
<p>متد <code>convert</code> را با شناسه فایل منبع و تنظیمات تعریف‌شده در بالا فراخوانی کنید.</p>
<!--[CODE_SNIPPET_START]-->
<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">convertResponse</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">await</span> <span style="color:#a6e22e">conversionApi</span>.<span style="color:#a6e22e">convert</span>({
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">fileId</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">sourceFileId</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">convertSettings</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">convertSettings</span>
</span></span><span style="display:flex;"><span>});
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">docxFileId</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">convertResponse</span>.<span style="color:#a6e22e">id</span>;
</span></span></code></pre></div><!--[CODE_SNIPPET_END]-->
<h3 id="مرحله5-دانلود-docx-تولید-شده">مرحله 5: دانلود DOCX تولید شده</h3>
<p>فایل DOCX تولید شده را دریافت کنید و به‌صورت محلی ذخیره کنید.</p>
<!--[CODE_SNIPPET_START]-->
<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">docxData</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">await</span> <span style="color:#a6e22e">conversionApi</span>.<span style="color:#a6e22e">downloadFile</span>({ <span style="color:#a6e22e">fileId</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">docxFileId</span> });
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">fs</span>.<span style="color:#a6e22e">writeFileSync</span>(<span style="color:#a6e22e">path</span>.<span style="color:#a6e22e">resolve</span>(<span style="color:#a6e22e">__dirname</span>, <span style="color:#e6db74">&#39;output.docx&#39;</span>), <span style="color:#a6e22e">docxData</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;DOCX file saved as output.docx&#39;</span>);
</span></span></code></pre></div><!--[CODE_SNIPPET_END]-->
<p>مراحل بالا یک جریان کاری کامل برای <strong>HTML to DOCX conversion in Node.JS</strong> را با استفاده از GroupDocs.Conversion Cloud SDK نشان می‌دهند.</p>
<h2 id="مثال-کامل-کد-تولید-docx-از-محتوای-html">مثال کامل کد: تولید DOCX از محتوای HTML</h2>
<p>برنامه زیر تمام قطعات را در یک اسکریپت قابل اجرا ترکیب می‌کند.</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:#75715e">// Full working example for HTML to DOCX conversion using GroupDocs.Conversion Cloud SDK for Node.js
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> { <span style="color:#a6e22e">ConversionApi</span>, <span style="color:#a6e22e">Configuration</span> } <span style="color:#f92672">=</span> <span style="color:#a6e22e">require</span>(<span style="color:#e6db74">&#39;groupdocs-conversion-cloud&#39;</span>);
</span></span><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></span><span style="display:flex;"><span><span style="color:#66d9ef">async</span> <span style="color:#66d9ef">function</span> <span style="color:#a6e22e">convertHtmlToDocx</span>() {
</span></span><span style="display:flex;"><span>    <span style="color:#75715e">// 1. Configure the API client
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>    <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">config</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">Configuration</span>({
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">clientId</span><span style="color:#f92672">:</span> <span style="color:#e6db74">&#39;YOUR_CLIENT_ID&#39;</span>,
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">clientSecret</span><span style="color:#f92672">:</span> <span style="color:#e6db74">&#39;YOUR_CLIENT_SECRET&#39;</span>
</span></span><span style="display:flex;"><span>    });
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">conversionApi</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">ConversionApi</span>(<span style="color:#a6e22e">config</span>);
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// 2. Read the HTML file
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>    <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">htmlPath</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;sample.html&#39;</span>);
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">htmlBytes</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">fs</span>.<span style="color:#a6e22e">readFileSync</span>(<span style="color:#a6e22e">htmlPath</span>);
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// 3. Upload the HTML file
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>    <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">uploadResult</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">await</span> <span style="color:#a6e22e">conversionApi</span>.<span style="color:#a6e22e">uploadFile</span>({
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">file</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">htmlBytes</span>,
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">fileName</span><span style="color:#f92672">:</span> <span style="color:#e6db74">&#39;sample.html&#39;</span>
</span></span><span style="display:flex;"><span>    });
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">sourceFileId</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">uploadResult</span>.<span style="color:#a6e22e">id</span>;
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// 4. Define conversion settings
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>    <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">convertSettings</span> <span style="color:#f92672">=</span> {
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">outputFormat</span><span style="color:#f92672">:</span> <span style="color:#e6db74">&#39;DOCX&#39;</span>,
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">options</span><span style="color:#f92672">:</span> {
</span></span><span style="display:flex;"><span>            <span style="color:#a6e22e">embedFonts</span><span style="color:#f92672">:</span> <span style="color:#66d9ef">true</span>,
</span></span><span style="display:flex;"><span>            <span style="color:#a6e22e">pageSize</span><span style="color:#f92672">:</span> <span style="color:#e6db74">&#39;A4&#39;</span>,
</span></span><span style="display:flex;"><span>            <span style="color:#a6e22e">marginTop</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">20</span>,
</span></span><span style="display:flex;"><span>            <span style="color:#a6e22e">marginBottom</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">20</span>,
</span></span><span style="display:flex;"><span>            <span style="color:#a6e22e">marginLeft</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">15</span>,
</span></span><span style="display:flex;"><span>            <span style="color:#a6e22e">marginRight</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">15</span>
</span></span><span style="display:flex;"><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">// 5. Perform the conversion
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>    <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">convertResult</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">await</span> <span style="color:#a6e22e">conversionApi</span>.<span style="color:#a6e22e">convert</span>({
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">fileId</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">sourceFileId</span>,
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">convertSettings</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">convertSettings</span>
</span></span><span style="display:flex;"><span>    });
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">docxFileId</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">convertResult</span>.<span style="color:#a6e22e">id</span>;
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// 6. Download the DOCX file
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>    <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">docxBytes</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">await</span> <span style="color:#a6e22e">conversionApi</span>.<span style="color:#a6e22e">downloadFile</span>({ <span style="color:#a6e22e">fileId</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">docxFileId</span> });
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">outputPath</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;output.docx&#39;</span>);
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">fs</span>.<span style="color:#a6e22e">writeFileSync</span>(<span style="color:#a6e22e">outputPath</span>, <span style="color:#a6e22e">docxBytes</span>);
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>(<span style="color:#e6db74">`Conversion successful. DOCX saved to </span><span style="color:#e6db74">${</span><span style="color:#a6e22e">outputPath</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">// Execute the conversion
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#a6e22e">convertHtmlToDocx</span>().<span style="color:#66d9ef">catch</span>(<span style="color:#a6e22e">err</span> =&gt; {
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">error</span>(<span style="color:#e6db74">&#39;Conversion failed:&#39;</span>, <span style="color:#a6e22e">err</span>);
</span></span><span style="display:flex;"><span>});
</span></span></code></pre></div><blockquote>
<p><strong>توجه:</strong> این مثال کد عملکرد اصلی را نشان می‌دهد. قبل از استفاده از آن در پروژه خود، مطمئن شوید مسیرهای فایل (<code>sample.html</code>, <code>output.docx</code>) به‌روزرسانی شده‌اند، اطمینان حاصل کنید تمام وابستگی‌های مورد نیاز به‌درستی نصب شده‌اند و به‌طور کامل در محیط توسعه خود تست کنید. اگر با مشکلی مواجه شدید، لطفاً به <a href="https://docs.groupdocs.cloud/conversion/">مستندات رسمی</a> مراجعه کنید یا برای دریافت کمک با <a href="https://forum.groupdocs.cloud/c/conversion/11">تیم پشتیبانی</a> تماس بگیرید.</p>
</blockquote>
<h2 id="اجرای-تبدیل-با-استفاده-از-curl-و-rest-api">اجرای تبدیل با استفاده از cURL و REST API</h2>
<p>اگر ترجیح می‌دهید مستقیماً با HTTP کار کنید، دستورات cURL زیر همان تبدیل را انجام می‌دهند.</p>
<ol>
<li><strong>دریافت توکن دسترسی</strong></li>
</ol>
<p><code>YOUR_CLIENT_ID</code> و <code>YOUR_CLIENT_SECRET</code> را با اعتبارهای خود جایگزین کنید.</p>
<!--[CODE_SNIPPET_START]-->
<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>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><!--[CODE_SNIPPET_END]-->
<p>پاسخ شامل <code>access_token</code> است.</p>
<ol start="2">
<li><strong>بارگذاری فایل HTML</strong></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-bash" data-lang="bash"><span style="display:flex;"><span>curl -X POST <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/storage/files/sample.html&#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>     -F <span style="color:#e6db74">&#34;file=@sample.html&#34;</span>
</span></span></code></pre></div><ol start="3">
<li><strong>شروع تبدیل</strong></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-bash" data-lang="bash"><span style="display:flex;"><span>curl -X POST <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/conversion/convert&#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;sourceFilePath&#34;: &#34;sample.html&#34;,
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">           &#34;outputFilePath&#34;: &#34;output.docx&#34;,
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">           &#34;outputFormat&#34;: &#34;DOCX&#34;,
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">           &#34;options&#34;: {
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">               &#34;embedFonts&#34;: true,
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">               &#34;pageSize&#34;: &#34;A4&#34;
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">           }
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">         }&#39;</span>
</span></span></code></pre></div><ol start="4">
<li><strong>دانلود DOCX تبدیل‌شده</strong></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-bash" data-lang="bash"><span style="display:flex;"><span>curl -X GET <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/storage/files/output.docx&#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.docx
</span></span></code></pre></div><p>برای دریافت فهرست کامل پارامترها، به <a href="https://reference.groupdocs.cloud/conversion/">مستندات رسمی API</a> مراجعه کنید.</p>
<h2 id="پیکربندی-گزینهها-برای-تبدیل-محتوای-html-به-docx">پیکربندی گزینه‌ها برای تبدیل محتوای HTML به DOCX</h2>
<p>SDK چندین ویژگی را در اختیار می‌گذارد که به شما امکان تنظیم دقیق خروجی را می‌دهد:</p>
<ul>
<li><strong>embedFonts</strong> - تمام فونت‌های ارجاع‌شده را در DOCX جاسازی می‌کند و اطمینان از حفظ ظاهر بصری را می‌دهد.</li>
<li><strong>pageSize</strong> - اندازه صفحه را تنظیم می‌کند (<code>A4</code>, <code>Letter</code> و غیره).</li>
<li><strong>marginTop / marginBottom / marginLeft / marginRight</strong> - حاشیه‌های صفحه را بر حسب پوینت تنظیم می‌کند.</li>
</ul>
<p>مثال برای اعمال این گزینه‌ها:</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">convertSettings</span> <span style="color:#f92672">=</span> {
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">outputFormat</span><span style="color:#f92672">:</span> <span style="color:#e6db74">&#39;DOCX&#39;</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">options</span><span style="color:#f92672">:</span> {
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">embedFonts</span><span style="color:#f92672">:</span> <span style="color:#66d9ef">true</span>,
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">pageSize</span><span style="color:#f92672">:</span> <span style="color:#e6db74">&#39;Letter&#39;</span>,
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">marginTop</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">30</span>,
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">marginBottom</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">30</span>,
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">marginLeft</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">20</span>,
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">marginRight</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">20</span>
</span></span><span style="display:flex;"><span>    }
</span></span><span style="display:flex;"><span>};
</span></span></code></pre></div><p>برای لیست کامل به <a href="https://reference.groupdocs.cloud/conversion/">کلاس ConversionOptions</a> مراجعه کنید.</p>
<h2 id="ملاحظات-عملکرد-برای-تبدیل-محتوای-html-به-docx">ملاحظات عملکرد برای تبدیل محتوای HTML به DOCX</h2>
<p>هنگام تبدیل اسناد HTML بزرگ یا پیچیده، این نکات را در نظر بگیرید:</p>
<ol>
<li><strong>استفاده مجدد از کلاینت API</strong> - ایجاد یک نمونه جدید از <code>ConversionApi</code> برای هر فایل باعث اضافه بار می‌شود.</li>
<li><strong>استریم فایل‌های بزرگ HTML</strong> - به جای بارگذاری کل فایل در حافظه، از استریم‌ها (<code>fs.createReadStream</code>) و متد <code>uploadFileStream</code> SDK استفاده کنید.</li>
<li><strong>محدود کردن منابع جاسازی‌شده</strong> - تصاویر یا اسکریپت‌های غیرضروری را قبل از بارگذاری از HTML حذف کنید تا زمان پردازش کاهش یابد.</li>
<li><strong>تبدیل‌های دسته‌ای</strong> - فایل‌ها را به‌صورت متوالی در یک حلقه پردازش کنید، اما محدودیت‌های نرخ API را رعایت کنید تا از محدود شدن جلوگیری شود.</li>
</ol>
<p>اعمال این روش‌ها به حفظ تأخیر کم و مصرف حافظه معتدل کمک می‌کند.</p>
<h2 id="نتیجهگیری">نتیجه‌گیری</h2>
<p>تبدیل HTML به DOCX در Node.JS با استفاده از <a href="https://products.groupdocs.cloud/conversion/nodejs/">GroupDocs.Conversion Cloud SDK for Node.js</a> به سادگی انجام می‌شود. با دنبال کردن مراحل بالا، می‌توانید تولید DOCX قابل اعتماد از HTML را در هر برنامه سمت سرور یکپارچه کنید، خروجی را سفارشی کنید و عملکرد را برای بارهای کاری بزرگ بهینه کنید. به یاد داشته باشید برای استفاده در محیط تولید یک لایسنس مناسب تهیه کنید؛ می‌توانید یک اشتراک خریداری کنید یا لایسنس موقت را از <a href="https://purchase.groupdocs.cloud/temporary-license/">صفحه لایسنس موقت</a> دریافت کنید. برنامه‌نویسی خوش!</p>
<h2 id="سؤالات-متداول">سؤالات متداول</h2>
<h3 id="چگونه-یک-تبدیل-html-به-docx-را-در-nodejs-شروع-کنم">چگونه یک تبدیل HTML به DOCX را در Node.JS شروع کنم؟</h3>
<p>از SDK برای ایجاد یک مشتری <code>ConversionApi</code> استفاده کنید، فایل HTML خود را بارگذاری کنید، گزینه‌های تبدیل مورد نظر را تنظیم کنید و متد <code>convert</code> را فراخوانی کنید. این فرآیند به‌صورت کاملاً ناهمزمان است و شناسه فایل DOCX را برای دانلود برمی‌گرداند.</p>
<h3 id="کدام-گزینهها-را-میتوانم-برای-تولید-docx-از-html-تنظیم-کنم">کدام گزینه‌ها را می‌توانم برای تولید DOCX از HTML تنظیم کنم؟</h3>
<p>شیء <code>ConversionOptions</code> به شما امکان می‌دهد فونت‌ها را جاسازی کنید، اندازه صفحه را انتخاب کنید، حاشیه‌ها را تنظیم کنید و مدیریت تصاویر را کنترل کنید. برای مشاهده تمام تنظیمات موجود، به <a href="https://reference.groupdocs.cloud/conversion/">مرجع API</a> مراجعه کنید.</p>
<h3 id="آیا-میتوانم-html-که-شامل-csshttpsdocsfileformatcomwebcss-خارجی-یا-تصاویر-است-را-تبدیل-کنم">آیا می‌توانم HTML که شامل <a href="https://docs.fileformat.com/web/css/">CSS</a> خارجی یا تصاویر است را تبدیل کنم؟</h3>
<p>بله. قبل از شروع تبدیل، هر منبع ارجاع‌شده (CSS، تصاویر) را در همان پوشه ذخیره‌سازی بارگذاری کنید و SDK در طول پردازش لینک‌ها را حل خواهد کرد.</p>
<h3 id="آیا-برای-استقرارهای-تولیدی-به-مجوز-نیاز-دارم">آیا برای استقرارهای تولیدی به مجوز نیاز دارم؟</h3>
<p>برای تولید نیاز به یک لایسنس معتبر است. می‌توانید یک لایسنس موقت برای تست از <a href="https://purchase.groupdocs.cloud/temporary-license/">صفحه لایسنس موقت</a> دریافت کنید و زمانی که آماده راه‌اندازی هستید، یک اشتراک کامل خریداری کنید.</p>
<h2 id="بیشتر-بخوانید">بیشتر بخوانید</h2>
<ul>
<li><a href="https://blog.groupdocs.cloud/fa/conversion/convert-json-to-html-with-nodejs/">تبدیل JSON به HTML در Node.js | تبدیل JSON به صفحه وب</a></li>
<li><a href="https://blog.groupdocs.cloud/fa/conversion/step-by-step-csv-to-pdf-conversion-example-in-nodejs/">مثال گام به گام تبدیل CSV به PDF در Node.js</a></li>
<li><a href="https://blog.groupdocs.cloud/fa/conversion/step-by-step-html-to-xlsx-conversion-tutorial-in-php/">آموزش گام به گام تبدیل HTML به XLSX در PHP</a></li>
</ul>
]]></content:encoded>
    </item>
    
  </channel>
</rss>
