<?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>document automation on Document Processing REST APIs | GroupDocs Cloud</title>
    <link>https://blog-qa.groupdocs.cloud/ar/tag/document-automation/</link>
    <description>Recent content in document automation on Document Processing REST APIs | GroupDocs Cloud</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>ar</language>
    <lastBuildDate>Mon, 05 Oct 2026 16:29:28 +0000</lastBuildDate><atom:link href="https://blog-qa.groupdocs.cloud/ar/tag/document-automation/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>إنشاء ملاحظات لاصقة على صفحات Word في Node.JS</title>
      <link>https://blog-qa.groupdocs.cloud/ar/annotation/create-sticky-notes-on-word-pages-in-nodejs/</link>
      <pubDate>Mon, 05 Oct 2026 16:29:28 +0000</pubDate>
      
      <guid>https://blog-qa.groupdocs.cloud/ar/annotation/create-sticky-notes-on-word-pages-in-nodejs/</guid>
      <description>تعلم كيفية إنشاء ملاحظات لاصقة على صفحات Word في Node.JS باستخدام GroupDocs.Annotation Cloud SDK. دليل خطوة بخطوة، مثال على الشيفرة، وأوامر REST cURL.</description>
      <content:encoded><![CDATA[<p>إضافة تعليقات سريعة مباشرةً إلى مستندات Word هي متطلب شائع لتدفقات العمل التعاونية للمراجعة. <a href="https://products.groupdocs.cloud/annotation/nodejs/">GroupDocs.Annotation Cloud SDK for Node.JS</a> يتيح لك إضافة تعليقات غنية برمجياً دون مغادرة بيئة الخادم الخاصة بك. في هذا الدليل سنوضح لك كيفية إنشاء ملاحظات لاصقة على صفحات Word في Node.JS، مع تغطية الإعداد، دليل تفصيلي، مثال كامل على الكود، واستدعاءات cURL المكافئة.</p>
<h2 id="إعداد-groupdocsannotation-cloud-sdk-for-nodejs">إعداد GroupDocs.Annotation Cloud SDK for Node.JS</h2>
<p>قبل البدء، تأكد من أن لديك:</p>
<ul>
<li>Node.js 14+ و npm مثبتان</li>
<li>حساب GroupDocs cloud مع <strong>clientId</strong> و <strong>clientSecret</strong></li>
<li>الوصول إلى ملف <a href="https://docs.fileformat.com/word-processing/docx/">DOCX</a> المصدر الذي تريد التعليق عليه</li>
</ul>
<p>قم بتثبيت SDK عبر npm:</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-annotation-cloud
</span></span></code></pre></div><p>قم بتنزيل أحدث حزمة من صفحة الإصدار الرسمية إذا كنت تفضل التثبيت اليدوي: <a href="https://releases.groupdocs.cloud/annotation/nodejs/">GroupDocs.Annotation Cloud SDK for Node.JS Download</a>.</p>
<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">Configuration</span> } <span style="color:#f92672">=</span> <span style="color:#a6e22e">require</span>(<span style="color:#e6db74">&#34;@groupdocs.annotation-cloud&#34;</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">&#34;YOUR_CLIENT_ID&#34;</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">clientSecret</span><span style="color:#f92672">:</span> <span style="color:#e6db74">&#34;YOUR_CLIENT_SECRET&#34;</span>
</span></span><span style="display:flex;"><span>});
</span></span></code></pre></div><p>مع تثبيت SDK وإعداد بيانات الاعتماد، يمكننا المتابعة إلى التنفيذ.</p>
<h2 id="إنشاء-ملاحظات-لاصقة-على-صفحات-word-في-nodejs-دليل-خطوة-بخطوة">إنشاء ملاحظات لاصقة على صفحات Word في Node.JS: دليل خطوة بخطوة</h2>
<p>في هذا الشرح سنقوم بإنشاء ملاحظات ملصقة على صفحات Word في Node.JS باستخدام فئات التعليقات التوضيحية في SDK.</p>
<h3 id="الخطوة-1-تهيئة-واجهة-برمجة-تطبيقات-التعليقات-التوضيحية">الخطوة 1: تهيئة واجهة برمجة تطبيقات التعليقات التوضيحية</h3>
<p>أولاً، استورد الفئات المطلوبة وأنشئ مثيلاً من <strong>AnnotateApi</strong>.</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">AnnotateApi</span>, <span style="color:#a6e22e">models</span> } <span style="color:#f92672">=</span> <span style="color:#a6e22e">require</span>(<span style="color:#e6db74">&#34;@groupdocs.annotation-cloud&#34;</span>);
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">annotateApi</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">AnnotateApi</span>(<span style="color:#a6e22e">config</span>);
</span></span></code></pre></div><h3 id="الخطوة-2-تحديد-ملفات-المصدر-والوجهة">الخطوة 2: تحديد ملفات المصدر والوجهة</h3>
<p>حدد ملف DOCX الإدخال والمسار للإخراج المشروح.</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">inputFilePath</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;sample.docx&#34;</span>;
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">outputFilePath</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;sample_annotated.docx&#34;</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">fileInfo</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">models</span>.<span style="color:#a6e22e">FileInfo</span>();
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">fileInfo</span>.<span style="color:#a6e22e">filePath</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">inputFilePath</span>;
</span></span></code></pre></div><h3 id="الخطوة-3-إعداد-موضع-الملاحظة-اللاصقة">الخطوة 3: إعداد موضع الملاحظة اللاصقة</h3>
<p>أنشئ <strong>مستطيل</strong> يحدد المكان الذي ستظهر فيه الملاحظة اللاصقة على الصفحة 1.</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">rect</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">models</span>.<span style="color:#a6e22e">Rectangle</span>();
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">rect</span>.<span style="color:#a6e22e">x</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">100</span>;      <span style="color:#75715e">// distance from left edge (points)
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#a6e22e">rect</span>.<span style="color:#a6e22e">y</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">100</span>;      <span style="color:#75715e">// distance from top edge (points)
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#a6e22e">rect</span>.<span style="color:#a6e22e">width</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">200</span>;  <span style="color:#75715e">// width of the sticky note
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#a6e22e">rect</span>.<span style="color:#a6e22e">height</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">100</span>; <span style="color:#75715e">// height of the sticky note
</span></span></span></code></pre></div><h3 id="الخطوة-4-بناء-كائن-التعليق-التوضيحي-للملاحظة-اللاصقة">الخطوة 4: بناء كائن التعليق التوضيحي للملاحظة اللاصقة</h3>
<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">stickyNote</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">models</span>.<span style="color:#a6e22e">AnnotationInfo</span>();
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">stickyNote</span>.<span style="color:#a6e22e">annotationType</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;StickyNote&#34;</span>;
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">stickyNote</span>.<span style="color:#a6e22e">pageNumber</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">1</span>;
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">stickyNote</span>.<span style="color:#a6e22e">rect</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">rect</span>;
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">stickyNote</span>.<span style="color:#a6e22e">text</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;This is a sticky note added via GroupDocs.Annotation Cloud SDK.&#34;</span>;
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">stickyNote</span>.<span style="color:#a6e22e">color</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;FFFF00&#34;</span>; <span style="color:#75715e">// Yellow background
</span></span></span></code></pre></div><h3 id="الخطوة-5-تنفيذ-طلب-التعليق">الخطوة 5: تنفيذ طلب التعليق</h3>
<p>قم بتجميع خيارات الطلب واستدعِ طريقة <strong>annotate</strong>.</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">annotateOptions</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">models</span>.<span style="color:#a6e22e">AnnotateOptions</span>();
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">annotateOptions</span>.<span style="color:#a6e22e">fileInfo</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">fileInfo</span>;
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">annotateOptions</span>.<span style="color:#a6e22e">annotations</span> <span style="color:#f92672">=</span> [<span style="color:#a6e22e">stickyNote</span>];
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">annotateOptions</span>.<span style="color:#a6e22e">outputPath</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">outputFilePath</span>;
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><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:#66d9ef">const</span> <span style="color:#a6e22e">request</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">models</span>.<span style="color:#a6e22e">AnnotateRequest</span>(<span style="color:#a6e22e">annotateOptions</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">annotateApi</span>.<span style="color:#a6e22e">annotate</span>(<span style="color:#a6e22e">request</span>);
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>(<span style="color:#e6db74">&#34;Sticky note created successfully. Output saved to:&#34;</span>, <span style="color:#a6e22e">response</span>.<span style="color:#a6e22e">path</span>);
</span></span><span style="display:flex;"><span>    } <span style="color:#66d9ef">catch</span> (<span style="color:#a6e22e">err</span>) {
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">error</span>(<span style="color:#e6db74">&#34;Failed to create sticky note:&#34;</span>, <span style="color:#a6e22e">err</span>);
</span></span><span style="display:flex;"><span>    }
</span></span><span style="display:flex;"><span>})();
</span></span></code></pre></div><h2 id="مثال-عملي-كامل-لإنشاء-ملاحظات-لاصقة-على-صفحات-word-في-nodejs">مثال عملي كامل لإنشاء ملاحظات لاصقة على صفحات Word في Node.JS</h2>
<p>يوضح المثال التالي التنفيذ الكامل لإنشاء ملاحظات لاصقة على صفحات Word في Node.JS باستخدام GroupDocs.Annotation Cloud 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-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> { <span style="color:#a6e22e">AnnotateApi</span>, <span style="color:#a6e22e">Configuration</span>, <span style="color:#a6e22e">models</span> } <span style="color:#f92672">=</span> <span style="color:#a6e22e">require</span>(<span style="color:#e6db74">&#34;@groupdocs.annotation-cloud&#34;</span>);
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// -----------------------------------------------------------------------------
</span></span></span><span style="display:flex;"><span><span style="color:#75715e">// Configuration – replace with your actual GroupDocs credentials
</span></span></span><span style="display:flex;"><span><span style="color:#75715e">// -----------------------------------------------------------------------------
</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">&#34;YOUR_CLIENT_ID&#34;</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">clientSecret</span><span style="color:#f92672">:</span> <span style="color:#e6db74">&#34;YOUR_CLIENT_SECRET&#34;</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">annotateApi</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">AnnotateApi</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">// -----------------------------------------------------------------------------
</span></span></span><span style="display:flex;"><span><span style="color:#75715e">// Define input and output files
</span></span></span><span style="display:flex;"><span><span style="color:#75715e">// -----------------------------------------------------------------------------
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">inputFilePath</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;sample.docx&#34;</span>;
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">outputFilePath</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;sample_annotated.docx&#34;</span>;
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// -----------------------------------------------------------------------------
</span></span></span><span style="display:flex;"><span><span style="color:#75715e">// Build FileInfo object for the source document
</span></span></span><span style="display:flex;"><span><span style="color:#75715e">// -----------------------------------------------------------------------------
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">fileInfo</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">models</span>.<span style="color:#a6e22e">FileInfo</span>();
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">fileInfo</span>.<span style="color:#a6e22e">filePath</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">inputFilePath</span>;
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// -----------------------------------------------------------------------------
</span></span></span><span style="display:flex;"><span><span style="color:#75715e">// Define rectangle (position &amp; size) for the sticky note on page 1
</span></span></span><span style="display:flex;"><span><span style="color:#75715e">// -----------------------------------------------------------------------------
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">rect</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">models</span>.<span style="color:#a6e22e">Rectangle</span>();
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">rect</span>.<span style="color:#a6e22e">x</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">100</span>;      <span style="color:#75715e">// distance from left edge (points)
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#a6e22e">rect</span>.<span style="color:#a6e22e">y</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">100</span>;      <span style="color:#75715e">// distance from top edge (points)
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#a6e22e">rect</span>.<span style="color:#a6e22e">width</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">200</span>;  <span style="color:#75715e">// width of the sticky note
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#a6e22e">rect</span>.<span style="color:#a6e22e">height</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">100</span>; <span style="color:#75715e">// height of the sticky note
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// -----------------------------------------------------------------------------
</span></span></span><span style="display:flex;"><span><span style="color:#75715e">// Create the sticky‑note annotation
</span></span></span><span style="display:flex;"><span><span style="color:#75715e">// -----------------------------------------------------------------------------
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">stickyNote</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">models</span>.<span style="color:#a6e22e">AnnotationInfo</span>();
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">stickyNote</span>.<span style="color:#a6e22e">annotationType</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;StickyNote&#34;</span>;
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">stickyNote</span>.<span style="color:#a6e22e">pageNumber</span> <span style="color:#f92672">=</span> <span style="color:#ae81ff">1</span>;
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">stickyNote</span>.<span style="color:#a6e22e">rect</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">rect</span>;
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">stickyNote</span>.<span style="color:#a6e22e">text</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;This is a sticky note added via GroupDocs.Annotation Cloud SDK.&#34;</span>;
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">stickyNote</span>.<span style="color:#a6e22e">color</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;FFFF00&#34;</span>; <span style="color:#75715e">// Yellow background
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// -----------------------------------------------------------------------------
</span></span></span><span style="display:flex;"><span><span style="color:#75715e">// Assemble the annotate request options
</span></span></span><span style="display:flex;"><span><span style="color:#75715e">// -----------------------------------------------------------------------------
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">annotateOptions</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">models</span>.<span style="color:#a6e22e">AnnotateOptions</span>();
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">annotateOptions</span>.<span style="color:#a6e22e">fileInfo</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">fileInfo</span>;
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">annotateOptions</span>.<span style="color:#a6e22e">annotations</span> <span style="color:#f92672">=</span> [<span style="color:#a6e22e">stickyNote</span>];
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">annotateOptions</span>.<span style="color:#a6e22e">outputPath</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">outputFilePath</span>;
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// -----------------------------------------------------------------------------
</span></span></span><span style="display:flex;"><span><span style="color:#75715e">// Execute the request
</span></span></span><span style="display:flex;"><span><span style="color:#75715e">// -----------------------------------------------------------------------------
</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:#66d9ef">const</span> <span style="color:#a6e22e">request</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">models</span>.<span style="color:#a6e22e">AnnotateRequest</span>(<span style="color:#a6e22e">annotateOptions</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">annotateApi</span>.<span style="color:#a6e22e">annotate</span>(<span style="color:#a6e22e">request</span>);
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>(<span style="color:#e6db74">&#34;Sticky note created successfully. Output saved to:&#34;</span>, <span style="color:#a6e22e">response</span>.<span style="color:#a6e22e">path</span>);
</span></span><span style="display:flex;"><span>    } <span style="color:#66d9ef">catch</span> (<span style="color:#a6e22e">err</span>) {
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">error</span>(<span style="color:#e6db74">&#34;Failed to create sticky note:&#34;</span>, <span style="color:#a6e22e">err</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/annotation/">الوثائق الرسمية</a> أو التواصل مع <a href="https://forum.groupdocs.cloud/c/annotation/10">فريق الدعم</a> للحصول على المساعدة.</p>
</blockquote>
<h2 id="إضافة-تعليقات-ملاحظة-لاصقة-باستخدام-curl-وrest-api">إضافة تعليقات ملاحظة لاصقة باستخدام cURL وREST API</h2>
<p>توفر واجهة برمجة التطبيقات REST نفس القدرة دون كتابة كود. أدناه طلبات cURL المطلوبة.</p>
<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-bash" data-lang="bash"><span style="display:flex;"><span>curl -X POST <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0.0/auth/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;{&#34;client_id&#34;:&#34;YOUR_CLIENT_ID&#34;,&#34;client_secret&#34;:&#34;YOUR_CLIENT_SECRET&#34;}&#39;</span>
</span></span></code></pre></div><p>قم بتحميل ملف DOCX المصدر (استبدل <strong>YOUR_ACCESS_TOKEN</strong> بالرمز المميز من الخطوة السابقة):</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>curl -X PUT <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0.0/storage/file/sample.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>     -H <span style="color:#e6db74">&#34;Content-Type: application/octet-stream&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     --data-binary @sample.docx
</span></span></code></pre></div><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-bash" data-lang="bash"><span style="display:flex;"><span>curl -X POST <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0.0/annotation/annotate&#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;sample.docx&#34; },
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">           &#34;annotations&#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">                   &#34;annotationType&#34;: &#34;StickyNote&#34;,
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">                   &#34;pageNumber&#34;: 1,
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">                   &#34;rect&#34;: { &#34;x&#34;: 100, &#34;y&#34;: 100, &#34;width&#34;: 200, &#34;height&#34;: 100 },
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">                   &#34;text&#34;: &#34;This is a sticky note added via GroupDocs.Annotation Cloud SDK.&#34;,
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">                   &#34;color&#34;: &#34;FFFF00&#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">           ],
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">           &#34;outputPath&#34;: &#34;sample_annotated.docx&#34;
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">         }&#39;</span>
</span></span></code></pre></div><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-bash" data-lang="bash"><span style="display:flex;"><span>curl -X GET <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0.0/storage/file/sample_annotated.docx?download=true&#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 sample_annotated.docx
</span></span></code></pre></div><p>لمزيد من التفاصيل حول حمولة الطلبات، راجع <a href="https://reference.groupdocs.cloud/annotation/">مرجع API</a>.</p>
<h2 id="تكوين-خيارات-التعليقات-التوضيحية-للملاحظات-اللاصقة">تكوين خيارات التعليقات التوضيحية للملاحظات اللاصقة</h2>
<p>يُتيح SDK عدة خصائص تسمح لك بضبط مظهر الملاحظة اللاصقة وسلوكها بدقة:</p>
<ul>
<li><strong>annotationType</strong> - يجب تعيينه إلى <code>&quot;StickyNote&quot;</code> (مطلوب).</li>
<li><strong>pageNumber</strong> - الصفحة التي سيظهر فيها الملاحظة.</li>
<li><strong>rect</strong> - يحدد الموضع (<code>x</code>, <code>y</code>) والحجم (<code>width</code>, <code>height</code>). عدّل هذه القيم للتحكم في الموضع.</li>
<li><strong>text</strong> - محتوى الملاحظة.</li>
<li><strong>color</strong> - لون الخلفية بصيغة HEX (مثال، <code>&quot;FFFF00&quot;</code> للأصفر).</li>
</ul>
<p>يمكنك أيضًا تعيين الحقول الاختيارية مثل <strong>author</strong>، <strong>fontFamily</strong>، أو <strong>opacity</strong> عبر نموذج <strong>AnnotationInfo</strong>. راجع <a href="https://reference.groupdocs.cloud/annotation/">مرجع API</a> للحصول على القائمة الكاملة للخصائص القابلة للتكوين.</p>
<h2 id="الخلاصة">الخلاصة</h2>
<p>باتباع الخطوات أعلاه، أنت الآن تعرف كيفية إنشاء ملاحظات لاصقة على صفحات Word في Node.JS باستخدام GroupDocs.Annotation Cloud SDK. سواء كنت تفضل تنفيذًا أصليًا لـ Node.js أو سير عمل cURL قائم على REST، يوفر SDK طريقة متسقة وموثوقة لتوضيح ملفات DOCX برمجيًا. تذكر تطبيق ترخيص صالح للاستخدام في الإنتاج؛ يمكنك الحصول على ترخيص مؤقت من <a href="https://purchase.groupdocs.cloud/temporary-license/">صفحة الترخيص</a> أو مراجعة خيارات التسعير على صفحة المنتج. نتمنى لك توضيحًا سعيدًا!</p>
<h2 id="الأسئلة-المتكررة">الأسئلة المتكررة</h2>
<ul>
<li>
<p><strong>كيف يمكنني إنشاء ملاحظات لاصقة على صفحات Word في Node.JS باستخدام GroupDocs.Annotation Cloud SDK؟</strong><br>
استخدم <strong>AnnotateApi</strong> كما هو موضح في مثال الشيفرة. يتعامل SDK تلقائيًا مع الوصول إلى الملفات وإنشاء التعليقات التوضيحية وتوليد المخرجات تلقائيًا.</p>
</li>
<li>
<p><strong>ما هي تنسيقات الملفات المدعومة للتعليق باستخدام SDK؟</strong><br>
يعمل SDK مع DOCX، <a href="https://docs.fileformat.com/pdf">PDF</a>، <a href="https://docs.fileformat.com/presentation/pptx/">PPTX</a>، <a href="https://docs.fileformat.com/spreadsheet/xlsx/">XLSX</a>، والعديد من التنسيقات الشائعة الأخرى. راجع القائمة الكاملة في <a href="https://docs.groupdocs.cloud/annotation/">الوثائق الرسمية</a>.</p>
</li>
<li>
<p><strong>كيف يمكنني المصادقة عند استخدام REST API للملاحظات اللاصقة؟</strong><br>
احصل على رمز وصول عبر نقطة النهاية <code>/auth/token</code> باستخدام بيانات اعتماد العميل الخاصة بك، ثم أدرج الرمز في رأس <code>Authorization: Bearer</code> لجميع الطلبات اللاحقة. الخطوات التفصيلية موجودة في <a href="https://reference.groupdocs.cloud/annotation/">مرجع API</a>.</p>
</li>
<li>
<p><strong>هل يمكنني تخصيص لون أو حجم الملاحظة اللاصقة؟</strong><br>
نعم. قم بتعيين خاصية <code>color</code> إلى قيمة HEX واضبط أبعاد <code>rect</code> (<code>width</code>, <code>height</code>) للتحكم في حجم وموقع الملاحظة.</p>
</li>
</ul>
<h2 id="اقرأ-المزيد">اقرأ المزيد</h2>
<ul>
<li><a href="https://blog.groupdocs.cloud/ar/annotation/strikethrough-text-in-a-pdf-using-nodejs/">نص مشطوب في ملف PDF باستخدام Node.js و REST API</a></li>
<li><a href="https://blog.groupdocs.cloud/ar/annotation/add-annotations-in-word-documents-using-a-rest-api-in-node-js/">إضافة تعليقات توضيحية في مستندات Word باستخدام REST API في Node.js</a></li>
<li><a href="https://blog.groupdocs.cloud/ar/annotation/annotate-docx-files-using-python/">إضافة تعليقات توضيحية إلى ملفات Word باستخدام Python</a></li>
</ul>
]]></content:encoded>
    </item>
    
  </channel>
</rss>
