Pēdējoreiz atjaunināts: 24 Jul, 2025

Darbs ar PDF tīmekļa lietojumprogrammās ir kļuvis par biežu prasību dažādās nozarēs. Neatkarīgi no tā, vai pārvaldāt rēķinus, līgumus vai akadēmiski saturu, spēja pārvērst PDF dokumentus rediģējamā formātā, piemēram, Microsoft Word (DOCX), ir būtiska. Par laimi, pateicoties spēcīgiem un bezmaksas PHP API, izstrādātāji var automatizēt un vienkārši optimizēt šo procesu.
Kāpēc pārvērst PDF uz Word, izmantojot PHP?
PDF faili ir lieliski izplatīšanai, jo tie saglabā izkārtojumu un dizainu. Tomēr to rediģēšana ne vienmēr ir vienkārša. Savukārt Word dokumenti ir ļoti rediģējami, padarot tos par ideāliem uzdevumiem, kas prasa lietotāja mijiedarbību, atjauninājumus vai sadarbību. PHP balstīta risinājums ļauj izstrādātājiem:
- Iespējot servera puses grupveida PDF uz Word pārvēršanu
- Integrēt dokumentu rediģēšanas darba plūsmas tīmekļa lietojumprogrammās
- Automatizēt pārskatu ģenerēšanu un dokumentu apstrādi
- Ļaut galalietotājiem lejupielādēt rediģējamas savu failu versijas
Šeit ir dažas no visuzticāmākajām un bezmaksas PHP API un bibliotēkām, kas var palīdzēt veikt PDF uz Word pārvēršanu ar minimālu iestatīšanu.
PHPWord ar PDF parseri
Lai iegūtu lielāku kontroli pār pārvēršanas procesu, varat apvienot PHPWord2, bibliotēku Word dokumentu izveidei un manipulācijai, ar PDF parsēšanas bibliotēku4.
Koda piemēra skaidrojums:
Šis piemērs vispirms izmanto PDFParser bibliotēku, lai nolasītu PDF un izvilktu tekstu no katras lapas. Pēc tam tas izmanto PHPWord, lai izveidotu jaunu Word dokumentu un pievienotu izvilkto tekstu. Šī metode nodrošina smalku kontroli pār rezultātu, ļaujot formatēt tekstu un pievienot citus elementus pēc vajadzības.
require_once 'vendor/autoload.php';
// Create a new PDF parser object
$parser = new \Smalot\PdfParser\Parser();
// Parse the PDF file
$pdf = $parser->parseFile('path/to/your/document.pdf');
// Retrieve all pages from the PDF
$pages = $pdf->getPages();
// Create a new PHPWord object
$phpWord = new \PhpOffice\PhpWord\PhpWord();
// Add a section to the Word document
$section = $phpWord->addSection();
// Loop through each page of the PDF
foreach ($pages as $page) {
// Extract the text from the page
$text = $page->getText();
// Add the text to the Word document
$section->addText($text);
}
// Save the Word document
$objWriter = \PhpOffice\PhpWord\IOFactory::createWriter($phpWord, 'Word2008');
$objWriter->save('output.docx');
echo "PDF content extracted and saved to Word successfully!";
Spatie PDF-to-Text + PHPWord (teksta balstīta pārvēršana)
Ja jūsu PDF faili galvenokārt satur vienkāršu tekstu (nekomplekss tabulas vai attēlus), varat apvienot atvērtā koda bibliotēkas Spatie PDF-to-Text3 un PHPWord2 vieglam pārvēršanas procesam.
Kā tas darbojas?
Šī ir visvienkāršākā metode, ja jums ir piekļuve Adobe Acrobat Pro.
Soļi:
- Vispirms jāizmanto Spatie\PdfToText API, kas izvelk vienkāršu tekstu no PDF.
- PHPWord bibliotēka tiek izmantota, lai ģenerētu Word dokumentu ar izvilkto saturu.
- Vislabāk piemērots tikai tekstuāliem PDF bez sarežģītas formatēšanas.
Šeit ir koda piemērs, kas parāda, kā izvilkt tekstu no PDF faila un pēc tam, izmantojot PHPWord bibliotēku, ģenerēt Word dokumentu ar izvilkto saturu.
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 caur PHP (atvērtā koda Docker mikroserviss)
Gotenberg11 ir atvērtā koda dokumentu pārvēršanas mikroserviss, ko var integrēt ar PHP, izmantojot HTTP pieprasījumus. Tas ir ideāls izstrādātājiem, kuri dod priekšroku Docker balstītiem rīkiem.
Kā tas darbojas?
- Gotenberg aizmugurē izmanto LibreOffice, lai pārvērstu PDF.
- Jūs nosūtāt POST pieprasījumu ar PDF failu.
- Serveris atgriež DOCX dokumentu.
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 for PHP (bezmaksas līmenis)
Aspose.PDF Cloud PHP SDK9 nodrošina spēcīgu PHP SDK, kas ļauj programmatūras izstrādātājiem tieši pārvērst PDF failus uz Word formātu, izmantojot to mākoņa API. Varat sākt bezmaksas ar ierobežotu API izsaukumu skaitu. Šeit ir vienkāršs piemērs, kas parāda, kā izstrādātāji var ielādēt un pārvērst PDF failu Microsoft Word DOCX dokumentos, izmantojot PHP komandas.
use Aspose\Pdf\Cloud\PdfApi;
$pdfApi = new PdfApi('YOUR_APP_KEY', 'YOUR_APP_SID');
$pdfApi->putConvertDocument('sample.pdf', ['format' => 'docx']);
Noslēguma domas
PDF failu pārvēršana uz Word dokumentiem, izmantojot PHP, nav jābūt sarežģītai vai dārgai. Ar pareiziem bezmaksas rīkiem un bibliotēkām izstrādātāji var piedāvāt lietotājiem vienkāršu, rediģējamu dokumentu eksportu, uzlabot dokumentu automatizāciju un palielināt kopējo produktivitāti. Neatkarīgi no tā, vai dodaties uz vieglām PHP apvalku bibliotēkām vai robustām mākoņa API, ir risinājums, kas atbilst jūsu vajadzībām.
Biežāk uzdotie jautājumi
J: Vai varu pārvērst PDF uz Word, izmantojot PHP, neizmantojot maksas API?
J: Jā, varat izmantot atvērtā koda bibliotēkas, piemēram, Spatie, PHPWord un LibreOffice CLI, bez maksas.
J: Vai atvērtā koda PDF uz Word pārvēršana atbalsta attēlus un formatēšanu?
J: Pamata rīki to neatbalsta, bet, izmantojot LibreOffice vai Gotenberg, tiek saglabāts izkārtojums un attēli.
J: Vai ir iespējams automatizēt PDF uz DOCX pārvēršanu PHP tīmekļa lietojumprogrammās?
J: Noteikti — šīs bibliotēkas var integrēt jebkurā PHP balstītā darba plūsmā.