<?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>PHP APIs on File Format Blog</title>
    <link>https://blog.fileformat.com/cs/tag/php-apis/</link>
    <description>Recent content in PHP APIs on File Format Blog</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>cs</language>
    <lastBuildDate>Thu, 24 Jul 2025 00:00:00 +0000</lastBuildDate><atom:link href="https://blog.fileformat.com/cs/tag/php-apis/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Jak převést PDF na dokumenty Microsoft Word pomocí bezplatných PHP API?</title>
      <link>https://blog.fileformat.com/cs/pdf/how-to-convert-pdf-to-word-docx-via-free-php-apis/</link>
      <pubDate>Thu, 24 Jul 2025 00:00:00 +0000</pubDate>
      
      <guid>https://blog.fileformat.com/cs/pdf/how-to-convert-pdf-to-word-docx-via-free-php-apis/</guid>
      <description>Naučte se, jak převést PDF soubory do editovatelných dokumentů Microsoft Word pomocí open source bezplatných PHP API. Extrahujte text a převádějte jej do souboru Word Docx pomocí PHP.</description>
      <content:encoded><![CDATA[<p><strong>Poslední aktualizace</strong>: 24 Jul, 2025</p>
<figure class="align-center ">
    <img loading="lazy" src="images/how-to-convert-a-pdf-to-word-document-via-php.png#center"
         alt="Název - Jak převést PDF na dokumenty MS Word pomocí PHP API?"/> 
</figure>

<p>Práce s <a href="https://docs.fileformat.com/pdf/">PDF soubory</a> ve webových aplikacích se stala běžnou požadavkem napříč odvětvími. Ať už spravujete faktury, smlouvy nebo akademický obsah, schopnost převést <a href="https://docs.fileformat.com/pdf/"><strong>PDF</strong></a> dokumenty do editovatelných formátů, jako je Microsoft Word (DOCX), je nezbytná. Naštěstí s pomocí výkonných a bezplatných PHP API mohou vývojáři tento proces automatizovat a zjednodušit.</p>
<h2 id="proč-převádět-pdf-na-word-v-php">Proč převádět PDF na Word v PHP?</h2>
<p>PDF soubory jsou vynikající pro distribuci, protože zachovávají rozvržení a design. Nicméně jejich úprava není vždy jednoduchá. Dokumenty Word jsou naopak vysoce editovatelné, což je činí ideálními pro úkoly vyžadující interakci uživatele, aktualizace nebo spolupráci. <strong>Řešení založené na PHP</strong> umožňuje vývojářům:</p>
<ul>
<li>Umožnit hromadnou konverzi <strong>PDF‑na‑Word konverze</strong><a href="https://products.fileformat.com/pdf/php/pdf-to-text/">3</a></li>
<li>Integrovat <strong>pracovní postupy úpravy dokumentů</strong> ve webových aplikacích</li>
<li>Automatizovat <strong>generování reportů</strong> a zpracování dokumentů</li>
<li>Umožnit koncovým uživatelům stáhnout editovatelné verze jejich souborů</li>
</ul>
<h2 id="phpword-s-pdf-parserem">PHPWord s PDF parserem</h2>
<p>Pro větší kontrolu nad procesem konverze můžete kombinovat sílu <a href="https://products.fileformat.com/word-processing/php/phpword/"><strong>PHPWord</strong></a>, knihovny pro vytváření a manipulaci s dokumenty Word, s <a href="https://products.fileformat.com/pdf/php/pdfparser/"><strong>knihovnou pro parsování PDF</strong></a>.</p>
<p><strong>Vysvětlení příkladu kódu:</strong></p>
<p>V tomto příkladu se nejprve používá knihovna PDFParser k načtení PDF a extrakci textu z každé stránky. Poté se použije PHPWord k vytvoření nového dokumentu Word a přidání extrahovaného textu. Tato metoda vám poskytuje detailní kontrolu nad výstupem, umožňuje formátovat text a přidávat další prvky podle potřeby.</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-PHP" data-lang="PHP"><span style="display:flex;"><span><span style="color:#66d9ef">require_once</span> <span style="color:#e6db74">&#39;vendor/autoload.php&#39;</span>;
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// Create a new PDF parser object
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>$parser <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">\Smalot\PdfParser\Parser</span>();
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// Parse the PDF file
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>$pdf <span style="color:#f92672">=</span> $parser<span style="color:#f92672">-&gt;</span><span style="color:#a6e22e">parseFile</span>(<span style="color:#e6db74">&#39;path/to/your/document.pdf&#39;</span>);
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// Retrieve all pages from the PDF
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>$pages <span style="color:#f92672">=</span> $pdf<span style="color:#f92672">-&gt;</span><span style="color:#a6e22e">getPages</span>();
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// Create a new PHPWord object
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>$phpWord <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">\PhpOffice\PhpWord\PhpWord</span>();
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// Add a section to the Word document
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>$section <span style="color:#f92672">=</span> $phpWord<span style="color:#f92672">-&gt;</span><span style="color:#a6e22e">addSection</span>();
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// Loop through each page of the PDF
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#66d9ef">foreach</span> ($pages <span style="color:#66d9ef">as</span> $page) {
</span></span><span style="display:flex;"><span>    <span style="color:#75715e">// Extract the text from the page
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>    $text <span style="color:#f92672">=</span> $page<span style="color:#f92672">-&gt;</span><span style="color:#a6e22e">getText</span>();
</span></span><span style="display:flex;"><span>    <span style="color:#75715e">// Add the text to the Word document
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>    $section<span style="color:#f92672">-&gt;</span><span style="color:#a6e22e">addText</span>($text);
</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">// Save the Word document
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>$objWriter <span style="color:#f92672">=</span> <span style="color:#a6e22e">\PhpOffice\PhpWord\IOFactory</span><span style="color:#f92672">::</span><span style="color:#a6e22e">createWriter</span>($phpWord, <span style="color:#e6db74">&#39;Word2007&#39;</span>);
</span></span><span style="display:flex;"><span>$objWriter<span style="color:#f92672">-&gt;</span><span style="color:#a6e22e">save</span>(<span style="color:#e6db74">&#39;output.docx&#39;</span>);
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">echo</span> <span style="color:#e6db74">&#34;PDF content extracted and saved to Word successfully!&#34;</span>;
</span></span></code></pre></div><h2 id="spatie-pdf-to-text--phpword-konverze-založená-na-textu">Spatie PDF-to-Text + PHPWord (Konverze založená na textu)</h2>
<p>Pokud vaše PDF soubory obsahují převážně prostý text (ne složité tabulky ani obrázky), můžete kombinovat open source knihovny <a href="https://products.fileformat.com/pdf/php/pdf-to-text/"><strong>Spatie PDF-to-Text</strong></a> a <a href="https://products.fileformat.com/word-processing/php/phpword/"><strong>PHPWord</strong></a> pro lehkou konverzní pipeline.</p>
<h3 id="jak-to-funguje">Jak to funguje?</h3>
<p>Toto je nejužší metoda, pokud máte přístup k Adobe Acrobat Pro.</p>
<p><strong>Kroky:</strong></p>
<ol>
<li>Nejprve musíte použít <strong>Spatie\PdfToText API</strong>, které extrahuje prostý text z PDF.</li>
<li>Knihovna <strong>PHPWord</strong> se používá k vytvoření dokumentu Word s extrahovaným obsahem.</li>
<li>Nejvhodnější pro <strong>PDF pouze s textem</strong> bez složitého formátování.</li>
</ol>
<p>Zde je příklad kódu, který ukazuje, jak extrahovat text z PDF souboru a poté pomocí knihovny PHPWord vytvořit dokument Word s extrahovaným obsahem.</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-PHP" data-lang="PHP"><span style="display:flex;"><span><span style="color:#a6e22e">PdfReader</span> <span style="color:#a6e22e">reader</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">PdfReader</span>(<span style="color:#e6db74">&#34;form.pdf&#34;</span>);
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">FileOutputStream</span> <span style="color:#a6e22e">out</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">FileOutputStream</span>(<span style="color:#e6db74">&#34;data.fdf&#34;</span>);
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">FdfWriter</span> <span style="color:#a6e22e">writer</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">FdfWriter</span>();
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">writer</span><span style="color:#f92672">.</span><span style="color:#a6e22e">setField</span>(<span style="color:#e6db74">&#34;name&#34;</span>, <span style="color:#e6db74">&#34;John Doe&#34;</span>);
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">writer</span><span style="color:#f92672">.</span><span style="color:#a6e22e">writeTo</span>(<span style="color:#a6e22e">out</span>);
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">reader</span><span style="color:#f92672">.</span><span style="color:#a6e22e">close</span>();
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">out</span><span style="color:#f92672">.</span><span style="color:#a6e22e">close</span>();
</span></span></code></pre></div><h2 id="gotenberg-přes-php-open-source-docker-mikroservis">Gotenberg přes PHP (Open Source Docker mikroservis)</h2>
<p><a href="https://products.fileformat.com/word-processing/php/gotenberg-php-client/"><strong>Gotenberg</strong></a> je open source mikroservis pro konverzi dokumentů, který lze integrovat s PHP pomocí HTTP požadavků. Je ideální pro vývojáře, kteří upřednostňují nástroje založené na Dockeru.</p>
<p><strong>Jak to funguje?</strong></p>
<ul>
<li>Gotenberg používá LibreOffice v backendu k <strong>konverzi PDF</strong>.</li>
<li>Pošlete POST požadavek s PDF souborem.</li>
<li>Server vrátí <strong>DOCX dokument</strong>.</li>
</ul>
<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-PHP" data-lang="PHP"><span style="display:flex;"><span><span style="color:#a6e22e">Code</span> <span style="color:#a6e22e">Snippet</span> (<span style="color:#a6e22e">PHP</span> <span style="color:#f92672">+</span> <span style="color:#a6e22e">Gotenberg</span>)
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">Aspose</span><span style="color:#f92672">.</span><span style="color:#a6e22e">PDF</span> <span style="color:#a6e22e">Cloud</span> <span style="color:#66d9ef">for</span> <span style="color:#a6e22e">PHP</span> (<span style="color:#a6e22e">Free</span> <span style="color:#a6e22e">Tier</span>)
</span></span><span style="display:flex;"><span>$ch <span style="color:#f92672">=</span> <span style="color:#a6e22e">curl_init</span>();
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">curl_setopt</span>($ch, <span style="color:#a6e22e">CURLOPT_URL</span>, <span style="color:#e6db74">&#39;http://localhost:3000/forms/libreoffice/convert&#39;</span>);
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">curl_setopt</span>($ch, <span style="color:#a6e22e">CURLOPT_RETURNTRANSFER</span>, <span style="color:#66d9ef">true</span>);
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">curl_setopt</span>($ch, <span style="color:#a6e22e">CURLOPT_POST</span>, <span style="color:#66d9ef">true</span>);
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>$data <span style="color:#f92672">=</span> [
</span></span><span style="display:flex;"><span>    [
</span></span><span style="display:flex;"><span>        <span style="color:#e6db74">&#39;name&#39;</span>     <span style="color:#f92672">=&gt;</span> <span style="color:#e6db74">&#39;files&#39;</span>,
</span></span><span style="display:flex;"><span>        <span style="color:#e6db74">&#39;contents&#39;</span> <span style="color:#f92672">=&gt;</span> <span style="color:#a6e22e">fopen</span>(<span style="color:#e6db74">&#39;input.pdf&#39;</span>, <span style="color:#e6db74">&#39;r&#39;</span>),
</span></span><span style="display:flex;"><span>        <span style="color:#e6db74">&#39;filename&#39;</span> <span style="color:#f92672">=&gt;</span> <span style="color:#e6db74">&#39;input.pdf&#39;</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:#a6e22e">curl_setopt</span>($ch, <span style="color:#a6e22e">CURLOPT_POSTFIELDS</span>, $data);
</span></span><span style="display:flex;"><span>$response <span style="color:#f92672">=</span> <span style="color:#a6e22e">curl_exec</span>($ch);
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">file_put_contents</span>(<span style="color:#e6db74">&#39;output.docx&#39;</span>, $response);
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">curl_close</span>($ch);
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">echo</span> <span style="color:#e6db74">&#34;Conversion done via Gotenberg!&#34;</span>;
</span></span></code></pre></div><h2 id="asposepdf-cloud-pro-php-bezplatná-úroveň">Aspose.PDF Cloud pro PHP (bezplatná úroveň)</h2>
<p><a href="https://products.aspose.cloud/pdf/php/"><strong>Aspose.PDF Cloud PHP SDK</strong></a> poskytuje výkonné PHP SDK, které umožňuje vývojářům softwaru <strong>převádět PDF soubory do formátu Word</strong> přímo pomocí jejich cloudového API. Můžete <strong>začít zdarma</strong> s omezeným počtem API volání. Zde je jednoduchý příklad, který ukazuje, jak vývojáři mohou načíst a převést PDF soubor do dokumentů Microsoft Word DOCX pomocí PHP příkazů.</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-PHP" data-lang="PHP"><span style="display:flex;"><span><span style="color:#66d9ef">use</span> <span style="color:#a6e22e">Aspose\Pdf\Cloud\PdfApi</span>;
</span></span><span style="display:flex;"><span>$pdfApi <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">PdfApi</span>(<span style="color:#e6db74">&#39;YOUR_APP_KEY&#39;</span>, <span style="color:#e6db74">&#39;YOUR_APP_SID&#39;</span>);
</span></span><span style="display:flex;"><span>$pdfApi<span style="color:#f92672">-&gt;</span><span style="color:#a6e22e">putConvertDocument</span>(<span style="color:#e6db74">&#39;sample.pdf&#39;</span>, [<span style="color:#e6db74">&#39;format&#39;</span> <span style="color:#f92672">=&gt;</span> <span style="color:#e6db74">&#39;docx&#39;</span>]);
</span></span></code></pre></div><h2 id="závěrečné-úvahy">Závěrečné úvahy</h2>
<p>Převod PDF souborů na dokumenty Word pomocí PHP nemusí být složitý ani drahý. S vhodnými bezplatnými nástroji a knihovnami mohou vývojáři nabídnout uživatelům plynulé, editovatelné exporty dokumentů, zvýšit automatizaci dokumentů a zlepšit celkovou produktivitu. Ať už preferujete lehké PHP obaly nebo robustní cloudové API, existuje řešení, které vyhovuje vašim potřebám.</p>
<h2 id="často-kladené-otázky">Často kladené otázky</h2>
<p><strong>Q: Mohu převést PDF na Word v PHP bez placených API?</strong></p>
<p>O: Ano, můžete použít open source knihovny jako Spatie, PHPWord a LibreOffice CLI zdarma.</p>
<p><strong>Q: Podporuje open source převod PDF na Word obrázky a formátování?</strong></p>
<p>O: Základní nástroje ne, ale použití LibreOffice nebo Gotenberg zachovává rozvržení a obrázky.</p>
<p><strong>Q: Je možné automatizovat převod PDF na DOCX v PHP webových aplikacích?</strong></p>
<p>O: Rozhodně—tyto knihovny lze integrovat do jakéhokoli workflow založeného na PHP.</p>
<h2 id="další-související-články">Další související články</h2>
<ul>
<li><a href="https://blog.fileformat.com/pdf/how-do-i-convert-a-pdf-to-fdf/">Jak převést PDF na FDF?</a></li>
<li><a href="https://blog.fileformat.com/pdf/what-is-the-difference-between-pdf-and-fdf/">Jaký je rozdíl mezi PDF a FDF?</a></li>
<li><a href="https://blog.fileformat.com/pdf/what-is-fdf-used-for/">K čemu se používá FDF? Pochopení účelu formátu dat formulářů</a></li>
<li><a href="https://blog.fileformat.com/file-formats/pdf-vs-word-which-one-should-you-use-and-when/">PDF vs Word: Který byste měli použít a kdy?</a></li>
<li><a href="https://blog.fileformat.com/programming/h-vs-hpp/">.h vs .hpp: Jaký je rozdíl a který byste měli použít?</a></li>
</ul>
]]></content:encoded>
    </item>
    
  </channel>
</rss>
