Rumah >pembangunan bahagian belakang >masalah PHP >Bagaimana untuk menukar perkataan kepada pdf dalam php

Bagaimana untuk menukar perkataan kepada pdf dalam php

PHPz
PHPzasal
2023-04-04 10:39:513564semak imbas

PHP Tukar Word kepada PDF

Dalam kerja harian kita, kita mungkin sering menghadapi keperluan untuk menukar dokumen Word kepada PDF. Artikel ini akan memperkenalkan dari perspektif praktikal cara menggunakan PHP untuk menukar dokumen Word kepada format PDF.

1. Gunakan perpustakaan PHPWord untuk mencipta dokumen Word

Pertama, kita perlu menggunakan perpustakaan PHPWord untuk mencipta dokumen Word. PHPWord ialah perpustakaan PHP untuk mencipta dokumen Word, membaca dan menulis dokumen Microsoft Office Word. Ia membolehkan kami membuat, membaca dan mengubah suai dokumen Microsoft Office Word dengan cara yang mudah.

Kami boleh memuat turun pustaka pada GitHub dan menggunakan ia ke projek kami dengan mengikuti panduan pemasangan. Kita boleh menggunakan kod berikut untuk mencipta dokumen Word yang mudah.

require_once '../PHPWord/src/PhpWord/Autoloader.php';
\PhpOffice\PhpWord\Autoloader::register();

$phpWord = new \PhpOffice\PhpWord\PhpWord();
$section = $phpWord->addSection();
$section->addText('Hello World!');

$objWriter = \PhpOffice\PhpWord\IOFactory::createWriter($phpWord, 'Word2007');
$objWriter->save('helloWorld.docx');

Melalui kod di atas, kami telah berjaya menghasilkan dokumen Word "helloWorld.docx" yang mengandungi "Hello World!".

2. Gunakan unoconv untuk menukar dokumen Word kepada format PDF

Seterusnya, kita perlu menggunakan unoconv untuk menukar dokumen Word yang dijana dalam langkah sebelumnya kepada format PDF. Unoconv ialah alat baris arahan untuk menukar dokumen dalam format yang berbeza, menyokong hampir semua format fail.

Kami mula-mula boleh memasang unoconv pada pelayan dan menggunakan kod berikut untuk menukar dokumen Word kepada format PDF.

$command = "unoconv -f pdf helloWorld.docx";
exec($command, $output);

if (empty($output)) {
    echo '生成PDF文件成功!';
} else {
    echo '生成PDF文件失败!';
}

Dengan kod di atas, kami telah berjaya menukar "helloWorld.docx" kepada fail PDF "helloWorld.pdf" yang mengandungi kandungan yang sama.

3. Meningkatkan proses penukaran

Mengikut keperluan yang berbeza, kita perlu menambah baik proses di atas. Sebagai contoh, apabila menjana dokumen Word, kita boleh menetapkan tajuk, gaya, fon dan maklumat lain dokumen melalui API yang disediakan oleh PHPWord apabila menukar dokumen Word kepada PDF, kita boleh menggunakan beberapa pilihan untuk mengawal penjanaan PDF; , seperti menetapkan atribut Keselamatan PDF, menetapkan saiz halaman PDF, dsb.

Sebagai contoh, kod berikut menggunakan API PHPWord untuk menjana dokumen Word yang lebih kompleks dan menukarnya kepada format PDF melalui unoconv.

require_once '../PHPWord/src/PhpWord/Autoloader.php';
\PhpOffice\PhpWord\Autoloader::register();

$phpWord = new \PhpOffice\PhpWord\PhpWord();
$section = $phpWord->addSection();
$section->addText('This is a title', array('size' => 20, 'bold' => true));
$section->addTextBreak(1);
$section->addText('This is a paragraph', array('size' => 12, 'color' => '000000', 'bold' => false));
$section->addTextBreak(1);
$table = $section->addTable();
$table->addRow();
$table->addCell(3000)->addText('Field A');
$table->addCell(3000)->addText('Field B');
$table->addCell(3000)->addText('Field C');
$table->addRow();
$table->addCell(3000)->addText('Value A');
$table->addCell(3000)->addText('Value B');
$table->addCell(3000)->addText('Value C');

$objWriter = \PhpOffice\PhpWord\IOFactory::createWriter($phpWord, 'Word2007');
$objWriter->save('document.docx');

$command = "unoconv --format=pdf --output=pdffile.pdf document.docx";
exec($command, $output);

if (empty($output)) {
    echo '生成PDF文件成功!';
} else {
    echo '生成PDF文件失败!';
}

Melalui kod di atas, kami telah berjaya menghasilkan dokumen Word "document.docx" yang mengandungi tajuk, perenggan dan jadual serta menukarnya menjadi fail PDF "pdfFile.pdf" melalui unoconv.

Ringkasan

Menggunakan kaedah di atas, kita boleh mencipta dokumen Word berdasarkan PHP dan menukarnya kepada format PDF melalui unoconv. Bukan itu sahaja, kami juga boleh menjana dokumen Word yang lebih kompleks melalui API yang disediakan oleh PHPWord, dan mengawal fail PDF yang dijana melalui pilihan yang disediakan oleh unoconv. Kaedah ini mudah dan cepat, dan boleh memastikan keindahan dokumen, dan sangat sesuai untuk aplikasi dalam kerja sebenar.

Atas ialah kandungan terperinci Bagaimana untuk menukar perkataan kepada pdf dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn