<?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>svg processing on Document Processing REST APIs | GroupDocs Cloud</title>
    <link>https://blog-qa.groupdocs.cloud/es/tag/svg-processing/</link>
    <description>Recent content in svg processing on Document Processing REST APIs | GroupDocs Cloud</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>es</language>
    <lastBuildDate>Mon, 17 Aug 2026 08:29:07 +0000</lastBuildDate><atom:link href="https://blog-qa.groupdocs.cloud/es/tag/svg-processing/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Conversión de SVG a PNG en Node.JS</title>
      <link>https://blog-qa.groupdocs.cloud/es/conversion/svg-to-png-conversion-in-nodejs/</link>
      <pubDate>Mon, 17 Aug 2026 08:29:07 +0000</pubDate>
      
      <guid>https://blog-qa.groupdocs.cloud/es/conversion/svg-to-png-conversion-in-nodejs/</guid>
      <description>Aprenda cómo convertir archivos SVG a imágenes PNG en Node.JS usando GroupDocs.Conversion Cloud SDK. Esta guía incluye código, ejemplos de cURL y buenas prácticas.</description>
      <content:encoded><![CDATA[<p>La conversión de gráficos vectoriales a imágenes raster es un requisito frecuente al generar miniaturas, vistas previas o PDFs en el servidor. <a href="https://products.groupdocs.cloud/conversion/nodejs/">GroupDocs.Conversion Cloud SDK for Node.JS</a> ofrece una biblioteca robusta que maneja la conversión de <a href="https://docs.fileformat.com/page-description-language/svg/">SVG</a> a <a href="https://docs.fileformat.com/image/png/">PNG</a> completamente en la nube. En esta guía verás un ejemplo completo y funcional, un flujo de trabajo cURL correspondiente, consejos de configuración y recomendaciones de buenas prácticas. Al final, podrás integrar la conversión de SVG a PNG del lado del servidor en cualquier aplicación Node.JS.</p>
<h2 id="ejemplo-completo-de-funcionamiento-para-la-conversión-de-svg-a-png-en-nodejs">Ejemplo completo de funcionamiento para la conversión de SVG a PNG en Node.JS</h2>
<p>Este ejemplo muestra cómo convertir un archivo SVG almacenado en GroupDocs Cloud storage a una imagen PNG usando el GroupDocs.Conversion Cloud SDK for Node.JS.</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:#a6e22e">ConvertApi</span>, <span style="color:#a6e22e">ConvertDocumentRequest</span>, <span style="color:#a6e22e">ConvertSettings</span>, <span style="color:#a6e22e">PngOptions</span>, <span style="color:#a6e22e">StorageApi</span>, <span style="color:#a6e22e">DownloadFileRequest</span> } <span style="color:#f92672">=</span> <span style="color:#a6e22e">require</span>(<span style="color:#e6db74">&#34;@groupdocs/conversion-cloud&#34;</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:#75715e">// -----------------------------------------------------------------------------
</span></span></span><span style="display:flex;"><span><span style="color:#75715e">// Configuration – replace with your own 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">convertApi</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">ConvertApi</span>(<span style="color:#a6e22e">config</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">StorageApi</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 source SVG and target PNG locations inside GroupDocs Cloud storage
</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">inputSvgPath</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;input/sample.svg&#34;</span>;          <span style="color:#75715e">// SVG stored in 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">outputPngPath</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;output/sample.png&#34;</span>;       <span style="color:#75715e">// Desired PNG location
</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">// PNG conversion options – set dimensions to control memory/CPU usage
</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">pngOptions</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">PngOptions</span>({
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">width</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">1024</span>,               <span style="color:#75715e">// Resize width (optional)
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>    <span style="color:#a6e22e">height</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">768</span>,               <span style="color:#75715e">// Resize height (optional)
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>    <span style="color:#a6e22e">backgroundColor</span><span style="color:#f92672">:</span> <span style="color:#e6db74">&#34;#FFFFFF&#34;</span> <span style="color:#75715e">// Ensure opaque background
</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">// -----------------------------------------------------------------------------
</span></span></span><span style="display:flex;"><span><span style="color:#75715e">// Build conversion settings object
</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">convertSettings</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">ConvertSettings</span>({
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">filePath</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">inputSvgPath</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">format</span><span style="color:#f92672">:</span> <span style="color:#e6db74">&#34;png&#34;</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">outputPath</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">outputPngPath</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">options</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">pngOptions</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">convertRequest</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">ConvertDocumentRequest</span>(<span style="color:#a6e22e">convertSettings</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 conversion, then download the PNG locally
</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:#a6e22e">convertApi</span>.<span style="color:#a6e22e">convertDocument</span>(<span style="color:#a6e22e">convertRequest</span>)
</span></span><span style="display:flex;"><span>    .<span style="color:#a6e22e">then</span>(<span style="color:#a6e22e">convResult</span> =&gt; {
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>(<span style="color:#e6db74">&#34;Conversion succeeded. Cloud file:&#34;</span>, <span style="color:#a6e22e">convResult</span>.<span style="color:#a6e22e">path</span>);
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">downloadReq</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">DownloadFileRequest</span>({ <span style="color:#a6e22e">path</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">convResult</span>.<span style="color:#a6e22e">path</span> });
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">return</span> <span style="color:#a6e22e">storageApi</span>.<span style="color:#a6e22e">downloadFile</span>(<span style="color:#a6e22e">downloadReq</span>);
</span></span><span style="display:flex;"><span>    })
</span></span><span style="display:flex;"><span>    .<span style="color:#a6e22e">then</span>(<span style="color:#a6e22e">fileBuffer</span> =&gt; {
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">localFile</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">&#34;sample.png&#34;</span>);
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">fs</span>.<span style="color:#a6e22e">writeFileSync</span>(<span style="color:#a6e22e">localFile</span>, <span style="color:#a6e22e">fileBuffer</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;PNG downloaded to:&#34;</span>, <span style="color:#a6e22e">localFile</span>);
</span></span><span style="display:flex;"><span>    })
</span></span><span style="display:flex;"><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">&#34;Error during SVG → PNG conversion:&#34;</span>, <span style="color:#a6e22e">err</span>);
</span></span><span style="display:flex;"><span>    })
</span></span><span style="display:flex;"><span>    .<span style="color:#66d9ef">finally</span>(() =&gt; {
</span></span><span style="display:flex;"><span>        <span style="color:#75715e">// Clean up HTTP client resources if the SDK exposes a close method
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>        <span style="color:#66d9ef">if</span> (<span style="color:#a6e22e">config</span> <span style="color:#f92672">&amp;&amp;</span> <span style="color:#a6e22e">config</span>.<span style="color:#a6e22e">httpClient</span> <span style="color:#f92672">&amp;&amp;</span> <span style="color:#66d9ef">typeof</span> <span style="color:#a6e22e">config</span>.<span style="color:#a6e22e">httpClient</span>.<span style="color:#a6e22e">close</span> <span style="color:#f92672">===</span> <span style="color:#e6db74">&#34;function&#34;</span>) {
</span></span><span style="display:flex;"><span>            <span style="color:#a6e22e">config</span>.<span style="color:#a6e22e">httpClient</span>.<span style="color:#a6e22e">close</span>();
</span></span><span style="display:flex;"><span>        }
</span></span><span style="display:flex;"><span>    });
</span></span></code></pre></div><blockquote>
<p><strong>Nota:</strong> Este ejemplo de código muestra la funcionalidad principal. Antes de usarlo en su proyecto, asegúrese de actualizar las rutas de los archivos (<code>input/sample.svg</code>, <code>output/sample.png</code>, etc.) para que coincidan con sus ubicaciones reales, verifique que todas las dependencias requeridas estén correctamente instaladas y realice pruebas exhaustivas en su entorno de desarrollo. Si encuentra algún problema, consulte la <a href="https://docs.groupdocs.cloud/conversion/">documentación oficial</a> o póngase en contacto con el <a href="https://forum.groupdocs.cloud/c/conversion/11">equipo de soporte</a> para obtener ayuda.</p>
</blockquote>
<h2 id="conversión-de-svg-a-png-mediante-api-rest-usando-curl">Conversión de SVG a PNG mediante API REST usando cURL</h2>
<p>Si prefiere un enfoque puramente REST, la misma conversión se puede realizar con comandos cURL. Los pasos a continuación muestran cómo obtener un token de acceso, cargar el SVG, iniciar la conversión y descargar el PNG.</p>
<h3 id="autenticar-y-obtener-token-de-acceso">Autenticar y obtener token de acceso</h3>
<!--[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/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;{
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">           &#34;client_id&#34;: &#34;YOUR_CLIENT_ID&#34;,
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">           &#34;client_secret&#34;: &#34;YOUR_CLIENT_SECRET&#34;
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">         }&#39;</span>
</span></span></code></pre></div><!--[CODE_SNIPPET_END]-->
<p>La respuesta contiene un <code>access_token</code> que usarás en llamadas posteriores.</p>
<h3 id="cargar-el-archivo-svg-de-origen">Cargar el archivo SVG de origen</h3>
<!--[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/storage/upload?path=input/sample.svg&#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=@/path/to/local/sample.svg&#34;</span>
</span></span></code></pre></div><!--[CODE_SNIPPET_END]-->
<h3 id="ejecutar-la-conversión-de-svg-a-png">Ejecutar la conversión de SVG a PNG</h3>
<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;filePath&#34;: &#34;input/sample.svg&#34;,
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">           &#34;format&#34;: &#34;png&#34;,
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">           &#34;outputPath&#34;: &#34;output/sample.png&#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;width&#34;: 1024,
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">               &#34;height&#34;: 768,
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">               &#34;backgroundColor&#34;: &#34;#FFFFFF&#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><p>La API devuelve la ruta del archivo PNG recién creado en el almacenamiento en la nube.</p>
<h3 id="descargar-el-archivo-png-resultante">Descargar el archivo PNG resultante</h3>
<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/download?path=output/sample.png&#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.png
</span></span></code></pre></div><p>Estos comandos cURL le brindan un control total sobre el proceso de conversión sin escribir código. Para obtener más detalles, consulte la <a href="https://docs.groupdocs.cloud/conversion/">documentación oficial de la API</a>.</p>
<h2 id="cómo-funciona-la-conversión-de-svg-a-png-en-nodejs">Cómo funciona la conversión de SVG a PNG en Node.JS</h2>
<ol>
<li>
<p><strong>Importar clases del SDK</strong> - La instrucción <code>require(&quot;@groupdocs/conversion-cloud&quot;)</code> carga clases esenciales como <code>ConvertApi</code>, <code>ConvertSettings</code> y <code>PngOptions</code> (<a href="https://reference.groupdocs.cloud/conversion/">referencia de API</a>).</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">ConvertApi</span>, <span style="color:#a6e22e">ConvertSettings</span>, <span style="color:#a6e22e">PngOptions</span> } <span style="color:#f92672">=</span> <span style="color:#a6e22e">require</span>(<span style="color:#e6db74">&#34;@groupdocs/conversion-cloud&#34;</span>);
</span></span></code></pre></div><!--[CODE_SNIPPET_END]-->
</li>
<li>
<p><strong>Configurar autenticación</strong> - Un objeto <code>Configuration</code> contiene su <code>clientId</code> y <code>clientSecret</code>. Este objeto se pasa tanto a <code>ConvertApi</code> como a <code>StorageApi</code> para autorizar todas las llamadas posteriores.</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">config</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">Configuration</span>({ <span style="color:#a6e22e">clientId</span><span style="color:#f92672">:</span> <span style="color:#e6db74">&#34;YOUR_CLIENT_ID&#34;</span>, <span style="color:#a6e22e">clientSecret</span><span style="color:#f92672">:</span> <span style="color:#e6db74">&#34;YOUR_CLIENT_SECRET&#34;</span> });
</span></span></code></pre></div><!--[CODE_SNIPPET_END]-->
</li>
<li>
<p><strong>Definir rutas de entrada y salida</strong> - <code>inputSvgPath</code> apunta al SVG en el almacenamiento en la nube, mientras que <code>outputPngPath</code> especifica dónde se debe guardar el PNG.</p>
</li>
</ol>
<!--[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">inputSvgPath</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;input/sample.svg&#34;</span>;
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">outputPngPath</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;output/sample.png&#34;</span>;
</span></span></code></pre></div><!--[CODE_SNIPPET_END]-->
<ol start="4">
<li>
<p><strong>Establecer opciones PNG</strong> - <code>PngOptions</code> le permite controlar las dimensiones y el color de fondo, lo que es útil para SVG grandes o transparentes.</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">pngOptions</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">PngOptions</span>({ <span style="color:#a6e22e">width</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">1024</span>, <span style="color:#a6e22e">height</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">768</span>, <span style="color:#a6e22e">backgroundColor</span><span style="color:#f92672">:</span> <span style="color:#e6db74">&#34;#FFFFFF&#34;</span> });
</span></span></code></pre></div><!--[CODE_SNIPPET_END]-->
</li>
<li>
<p><strong>Crear configuraciones de conversión y ejecutar</strong> - <code>ConvertSettings</code> agrupa la ruta del archivo, el formato de destino, la ubicación de salida y las opciones. El método <code>convertDocument</code> realiza la conversión y el resultado contiene la ruta en la nube del PNG.</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 style="color:#66d9ef">new</span> <span style="color:#a6e22e">ConvertSettings</span>({ <span style="color:#a6e22e">filePath</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">inputSvgPath</span>, <span style="color:#a6e22e">format</span><span style="color:#f92672">:</span> <span style="color:#e6db74">&#34;png&#34;</span>, <span style="color:#a6e22e">outputPath</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">outputPngPath</span>, <span style="color:#a6e22e">options</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">pngOptions</span> });
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">convertRequest</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">ConvertDocumentRequest</span>(<span style="color:#a6e22e">convertSettings</span>);
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">convertApi</span>.<span style="color:#a6e22e">convertDocument</span>(<span style="color:#a6e22e">convertRequest</span>);
</span></span></code></pre></div><!--[CODE_SNIPPET_END]-->
</li>
<li>
<p><strong>Descargar el PNG</strong> - Después de la conversión, <code>StorageApi.downloadFile</code> recupera los datos binarios, que puedes escribir en el sistema de archivos local.</p>
</li>
</ol>
<p>Comprender cada paso le ayuda a personalizar el proceso, manejar errores e integrar la conversión en flujos de trabajo más amplios.</p>
<h2 id="instalación-y-configuración-groupdocsconversion-cloud-sdk-for-nodejs">Instalación y Configuración GroupDocs.Conversion Cloud SDK for Node.JS</h2>
<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><p>El SDK requiere Node.js 12 o posterior. Después de la instalación, cree un objeto de configuración con su <strong>clientId</strong> y <strong>clientSecret</strong> (disponibles en su cuenta de GroupDocs Cloud). Consulte la <a href="https://releases.groupdocs.cloud/conversion/nodejs/">página de descarga</a> para obtener la última versión del paquete.</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/conversion-cloud&#34;</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>Asegúrese de que las credenciales tengan permiso para acceder a los servicios de almacenamiento y conversión. Una vez configurado, puede instanciar <code>ConvertApi</code> y <code>StorageApi</code> como se muestra en el ejemplo de código.</p>
<h2 id="ajuste-fino-de-la-configuración-de-conversión-png">Ajuste fino de la configuración de conversión PNG</h2>
<p>La clase <code>PngOptions</code> ofrece varias propiedades que puedes ajustar:</p>
<ul>
<li><strong>width / height</strong> - Define la resolución de salida. Valores mayores aumentan la calidad pero consumen más memoria.
<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">pngOptions</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">PngOptions</span>({ <span style="color:#a6e22e">width</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">1920</span>, <span style="color:#a6e22e">height</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">1080</span> });
</span></span></code></pre></div></li>
<li><strong>backgroundColor</strong> - Establece un fondo sólido para los SVG que contienen transparencia.
<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">pngOptions</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">PngOptions</span>({ <span style="color:#a6e22e">backgroundColor</span><span style="color:#f92672">:</span> <span style="color:#e6db74">&#34;#000000&#34;</span> });
</span></span></code></pre></div></li>
<li><strong>compressionLevel</strong> - (Si es compatible) Elige un nivel de compresión entre 0 (sin compresión) y 9 (compresión máxima) para reducir el tamaño del archivo.
<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">pngOptions</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">PngOptions</span>({ <span style="color:#a6e22e">compressionLevel</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">6</span> });
</span></span></code></pre></div></li>
</ul>
<p>Estas opciones se pasan a través de la propiedad <code>options</code> de <code>ConvertSettings</code>. Consulte la <a href="https://reference.groupdocs.cloud/conversion/">referencia de API</a> para obtener la lista completa de configuraciones disponibles.</p>
<h2 id="mejores-prácticas-para-una-conversión-eficiente-de-svg-a-png">Mejores prácticas para una conversión eficiente de SVG a PNG</h2>
<ul>
<li><strong>Validar contenido SVG</strong> - Asegúrese de que el SVG no contenga scripts externos ni cargas útiles maliciosas antes de subirlo. GroupDocs.Conversion sanitiza la entrada, pero la pre‑validación agrega una capa adicional de seguridad.</li>
<li><strong>Reutilizar el objeto de configuración</strong> - Cree una única instancia de <code>Configuration</code> y compártala entre múltiples llamadas a <code>ConvertApi</code> para reducir la sobrecarga.</li>
<li><strong>Establecer dimensiones razonables</strong> - Limite el ancho y la altura al tamaño que realmente necesita. Las imágenes demasiado grandes aumentan el tiempo de procesamiento y el uso de memoria.</li>
<li><strong>Transmitir archivos grandes</strong> - Para SVGs muy grandes, considere transmitir la descarga en lugar de cargar todo el búfer en memoria.</li>
<li><strong>Monitorear el uso de la API</strong> - Vigile su cuota de conversión y maneje las respuestas de limitación de velocidad de forma adecuada.</li>
</ul>
<h2 id="conclusión">Conclusión</h2>
<p><a href="https://products.groupdocs.cloud/conversion/nodejs/">GroupDocs.Conversion Cloud SDK for Node.JS</a> hace que la conversión de SVG a PNG del lado del servidor sea sencilla, escalable y segura. Siguiendo el ejemplo de código completo, el flujo de trabajo equivalente en cURL y los consejos de configuración anteriores, puedes integrar la conversión de imágenes de alto rendimiento en cualquier servicio backend. Recuerda revisar las opciones de licencia; los despliegues en producción requieren una suscripción paga, y puedes obtener una licencia temporal para pruebas desde la <a href="https://purchase.groupdocs.cloud/temporary-license/">página de licencia temporal</a>. Comienza a convertir hoy y entrega activos PNG nítidos a tus usuarios con confianza.</p>
<h2 id="preguntas-frecuentes">Preguntas frecuentes</h2>
<p><strong>¿Cómo realizo la conversión de SVG a PNG en Node.JS usando GroupDocs?</strong><br>
Utilice el SDK de GroupDocs.Conversion Cloud para Node.JS. Cargue el SVG en el almacenamiento en la nube, configure <code>PngOptions</code>, llame a <code>convertDocument</code> y descargue el PNG. El ejemplo de código completo en este artículo muestra cada paso.</p>
<p><strong>¿Puedo convertir en lote muchos archivos SVG a la vez?</strong><br>
Sí. Itera sobre una lista de rutas SVG y llama a la misma solicitud de conversión para cada archivo. El SDK procesa cada solicitud de forma independiente, lo que te permite almacenar todos los resultados PNG en una única carpeta de salida.</p>
<p><strong>¿Qué debo hacer si la conversión falla con un error?</strong><br>
Verifique el mensaje de error devuelto en el bloque catch. Los problemas comunes incluyen credenciales inválidas, rutas de archivo faltantes o características SVG no compatibles. Consulte la <a href="https://docs.groupdocs.cloud/conversion/">documentación oficial</a> para obtener códigos de error detallados y pasos de solución de problemas.</p>
<p><strong>¿Dónde puedo encontrar más información sobre las opciones PNG?</strong><br>
Todas las propiedades configurables se enumeran en la referencia de API para <code>PngOptions</code>. Visite la <a href="https://reference.groupdocs.cloud/conversion/">referencia de API</a> para explorar configuraciones adicionales como el nivel de compresión y la profundidad de color.</p>
<h2 id="leer-más">Leer más</h2>
<ul>
<li><a href="https://blog.groupdocs.cloud/es/conversion/step-by-step-html-to-docx-conversion-tutorial-in-nodejs/">Tutorial paso a paso de conversión de HTML a DOCX en Node.JS</a></li>
<li><a href="https://blog.groupdocs.cloud/es/conversion/step-by-step-csv-to-pdf-conversion-example-in-nodejs/">Ejemplo paso a paso de conversión de CSV a PDF en Node.JS</a></li>
<li><a href="https://blog.groupdocs.cloud/es/conversion/pdf-to-docx-conversion-in-nodejs/">Conversión de PDF a DOCX en Node.JS</a></li>
</ul>
]]></content:encoded>
    </item>
    
  </channel>
</rss>
