Last Updated: 08 Oct, 2025

Title - How Do I Convert a PDF to MS Word Documents via PHP APIs?

Praca z plikami PDF w aplikacjach internetowych stała się powszechnym wymogiem w różnych branżach. Niezależnie od tego, czy zarządzasz fakturami, umowami, czy treściami akademickimi, możliwość konwersji dokumentów PDF do formatów edytowalnych, takich jak Microsoft Word (DOCX), jest niezbędna. Na szczęście, dzięki wydajnym i darmowym interfejsom API PHP, programiści mogą z łatwością zautomatyzować i usprawnić ten proces.

Dlaczego warto konwertować pliki PDF do Worda w PHP?

Pliki PDF doskonale nadają się do dystrybucji, ponieważ zachowują układ i projekt. Jednak ich edycja nie zawsze jest prosta. Dokumenty Worda są natomiast wysoce edytowalne, co czyni je idealnymi do zadań wymagających interakcji z użytkownikiem, aktualizacji lub współpracy. Rozwiązanie oparte na PHP umożliwia programistom:

  • Włączenie wsadowej konwersji PDF do Worda po stronie serwera
  • Integrację przepływów pracy związanych z edycją dokumentów w aplikacjach internetowych
  • Automatyzację generowania raportów i przetwarzania dokumentów
  • Umożliwienie użytkownikom końcowym pobierania edytowalnych wersji plików

Otoome of the most reliable and free PHP APIs and libraries that can help you perform PDF-to-Word conversion with minimal setup.

PHPWord z parserem PDF

Aby uzyskać większą kontrolę nad procesem konwersji, możesz połączyć możliwości PHPWord, biblioteki do tworzenia i przetwarzania dokumentów Word, z biblioteką parsowania PDF.

Wyjaśnienie przykładowego kodu:

W tym przykładzie najpierw użyto biblioteki PDFParser do odczytu pliku PDF i wyodrębnienia tekstu z każdej strony. Następnie użyto PHPWord do utworzenia nowego dokumentu Word i dodania do niego wyodrębnionego tekstu. Ta metoda zapewnia precyzyjną kontrolę nad danymi wyjściowymi, umożliwiając formatowanie tekstu i dodawanie innych elementów w razie potrzeby.

require_once 'vendor/autoload.php';

// Utwórz nowy obiekt parsera PDF
$parser = new \Smalot\PdfParser\Parser();

// Przeanalizuj plik PDF
$pdf = $parser->parseFile('ścieżka/do/twojego/dokumentu.pdf');

// Pobierz wszystkie strony z pliku PDF
$pages = $pdf->getPages();

// Utwórz nowy obiekt PHPWord
$phpWord = new \PhpOffice\PhpWord\PhpWord();

// Dodaj sekcję do dokumentu Word
$section = $phpWord->addSection();

// Przejdź przez każdą stronę pliku PDF
foreach ($pages as $page) {
// Wyodrębnij tekst ze strony
$text = $page->getText();
// Dodaj tekst do dokumentu Word
$section->addText($text);
}

// Zapisz dokument Word
$objWriter = \PhpOffice\PhpWord\IOFactory::createWriter($phpWord, 'Word2007');
$objWriter->save('output.docx');

echo "Treść PDF została pomyślnie wyodrębniona i zapisana w programie Word!";

Spatie PDF-to-Text + PHPWord (Konwersja oparta na tekście)

Jeśli Twoje pliki PDF zawierają głównie zwykły tekst (a nie złożone tabele ani obrazy), możesz połączyć biblioteki open source Spatie PDF-to-Text i PHPWord, aby uzyskać lekki proces konwersji.

Jak to działa?

To najprostsza metoda, jeśli masz dostęp do programu Adobe Acrobat Pro.

Kroki:

  1. Najpierw musisz użyć Spatie\PdfToText API, które wyodrębnia zwykły tekst z plików PDF.
  2. Biblioteka PHPWord służy do generowania dokumentu Word z wyodrębnioną zawartością.
  3. Najlepiej nadaje się do plików PDF zawierających tylko tekst bez skomplikowanego formatowania.

Poniżej znajduje się przykład kodu, który pokazuje, jak wyodrębnić tekst z pliku PDF, a następnie wygenerować dokument Word z wyodrębnioną zawartością za pomocą biblioteki PHPWord.

PdfReader reader = new PdfReader("form.pdf");
FileOutputStream out = new FileOutputStream("data.fdf");
FdfWriter writer = new FdfWriter();
writer.setField("name", "John Doe");
writer.writeTo(out);
reader.close();
out.close();

Gotenberg przez PHP (mikrousługa Dockera Open Source)

Gotenberg to mikrousługa konwersji dokumentów open source, którą można zintegrować z PHP za pomocą żądań HTTP. Jest idealna dla programistów preferujących narzędzia oparte na Dockerze.

Jak to działa?

  • Gotenberg wykorzystuje LibreOffice w zapleczu do konwersji plików PDF.
  • Wysyłasz żądanie POST z plikiem PDF.
  • Serwer zwraca dokument DOCX.
Code Snippet (PHP + Gotenberg)

Aspose.PDF Cloud for PHP (Free Tier)
$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, 'http://localhost:3000/forms/libreoffice/convert');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);

$data = [
    [
        'name'     => 'files',
        'contents' => fopen('input.pdf', 'r'),
        'filename' => 'input.pdf'
    ]
];

curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
$response = curl_exec($ch);
file_put_contents('output.docx', $response);
curl_close($ch);

echo "Conversion done via Gotenberg!";

Aspose.PDF Cloud dla PHP (wersja bezpłatna)

Aspose.PDF Cloud PHP SDK zapewnia zaawansowany pakiet PHP SDK, który umożliwia programistom konwertowanie plików PDF do formatu Word bezpośrednio za pomocą ich chmurowego interfejsu API. Możesz zacząć za darmo z ograniczoną liczbą wywołań API. Oto prosty przykład pokazujący, jak programiści mogą załadować i przekonwertować plik PDF do dokumentów Microsoft Word DOCX za pomocą poleceń PHP.

Przykład kodu:

use Aspose\Pdf\Cloud\PdfApi;
$pdfApi = new PdfApi('YOUR_APP_KEY', 'YOUR_APP_SID');
$pdfApi->putConvertDocument('sample.pdf', ['format' => 'docx']);

Podsumowanie

Konwersja plików PDF do dokumentów Word za pomocą PHP nie musi być skomplikowana ani kosztowna. Dzięki odpowiednim darmowym narzędziom i bibliotekom programiści mogą oferować użytkownikom płynny, edytowalny eksport dokumentów, usprawnić automatyzację dokumentów i poprawić ogólną produktywność. Niezależnie od tego, czy preferujesz lekkie wrappery PHP, czy solidne API w chmurze, mamy rozwiązanie dopasowane do Twoich potrzeb.

FAQ

P: Czy mogę przekonwertować PDF do Worda w PHP bez korzystania z płatnych interfejsów API?

O: Tak, możesz bezpłatnie korzystać z bibliotek open source, takich jak Spatie, PHPWord i LibreOffice CLI.

P: Czy konwersja PDF do Worda w formacie open source obsługuje obrazy i formatowanie?

O: Podstawowe narzędzia nie obsługują, ale korzystanie z LibreOffice lub Gotenberga zachowuje układ i obrazy.

P: Czy można zautomatyzować konwersję PDF do DOCX w aplikacjach internetowych PHP?

O: Oczywiście — te biblioteki można zintegrować z dowolnym przepływem pracy opartym na PHP.

Zobacz także