Rumah pembangunan bahagian belakang masalah PHP Bagaimana untuk menyelesaikan masalah kacau Cina dalam php fpdf

Bagaimana untuk menyelesaikan masalah kacau Cina dalam php fpdf

Apr 19, 2023 am 09:22 AM

FPDF ialah perpustakaan kelas PHP untuk menjana dokumen PDF, yang membolehkan menjana fail PDF tanpa menggunakan editor dokumen PDF.

Walau bagaimanapun, apabila menggunakan FPDF untuk menjana dokumen PDF Cina, masalah aksara Cina bercelaru mungkin berlaku. Soalan ini juga kerap muncul dalam beberapa forum tapak web. Bagaimana untuk menyelesaikan masalah ini?

Pertama, mari kita fahami isu set aksara fail PDF. Set aksara yang terkandung dalam fail PDF ialah set aksara Unicode dan kod aksara Cina ditukar mengikut pengekodan GB2312 atau UTF-8. Dalam pustaka kelas FPDF, hanya set aksara ISO-8859-1 disokong secara lalai, yang menyebabkan masalah aksara bercelaru PDF Cina. Dalam kes ini, kita boleh menyelesaikannya dengan menukar set aksara atau menukar fon.

Penyelesaian 1: Tukar set aksara

Kita boleh menggunakan fungsi iconv() untuk menukar rentetan Cina yang dikodkan GB2312 atau UTF-8 ke dalam set aksara ISO-8859-1 dan kemudian mengeluarkannya Ini akan menyelesaikan masalah watak Cina yang kacau. Kaedah khusus adalah seperti berikut:

1 Sebelum mencipta fon, gunakan fungsi iconv() untuk menukar rentetan ke set aksara ISO-8859-1

$text = "中文内容";
$text_iso = iconv("UTF-8","ISO-8859-1",$text);
Salin selepas log masuk

2. Gunakan rentetan ISO- 8859-1 yang dijana untuk mencipta objek FPDF

$pdf = new FPDF();
$pdf->AddPage();
$pdf->SetFont('Arial','',14);
$pdf->Cell(0,10,$text_iso);
$pdf->Output();
Salin selepas log masuk

Pada masa ini, dalam dokumen PDF yang dijana, kandungan bahasa Cina tidak akan bercelaru. Walau bagaimanapun, kaedah ini memerlukan penukaran set aksara berulang apabila memproses bahagian besar kandungan Cina, yang tidak cukup mudah.

Penyelesaian 2: Tukar fon

Menukar fon dan menggunakan fon yang menyokong set aksara Cina juga merupakan cara yang berkesan untuk menyelesaikan masalah aksara Cina yang kacau. Kita boleh menggunakan fungsi AddFont() dalam FPDF untuk memuatkan fail fon yang boleh menyokong set aksara Cina dan mencipta fon yang menyokong aksara Cina, dengan itu menyelesaikan masalah aksara Cina yang kacau.

1. Muat turun fon yang menyokong set aksara Cina

Cari di Internet untuk "fon FPDF yang menyokong aksara Cina" dan anda boleh menemui banyak pautan muat turun, seperti fon Pengasas, fon Yahei, dsb. . Letakkan fail fon yang dimuat turun dalam direktori "font" FPDF.

2. Muatkan fail fon

Gunakan fungsi AddFont() FPDF untuk memuatkan fail fon yang menyokong aksara Cina.

require('fpdf.php');
$pdf = new FPDF();
$pdf->AddPage();
$pdf->AddFont('MSYH', '', 'msyh.ttf', true); 
$pdf->SetFont('MSYH', '', 14);
$pdf->Cell(0,10, "中文内容");
$pdf->Output();
Salin selepas log masuk

Antaranya, fungsi AddFont() mempunyai 4 parameter iaitu: nama fon, gaya fon, nama fail fon, dan sama ada fon "trueType". Antaranya, gaya fon mempunyai empat pilihan: '', 'B', 'I' dan 'U', yang masing-masing mewakili normal, tebal, condong dan garis bawah. Antara fon yang menyokong aksara Cina, biasanya terdapat gaya biasa sahaja.

Perhatikan bahawa apabila menggunakan fungsi AddFont(), fail fon mesti disimpan dalam direktori fon dan mesti mempunyai akhiran .ttf.

Selepas menggunakan fon yang menyokong set aksara Cina, kandungan Cina dalam dokumen PDF yang dijana telah dipaparkan seperti biasa.

Ringkasan

Apabila menggunakan FPDF untuk menjana dokumen PDF Cina, anda boleh menggunakan dua kaedah di atas untuk menyelesaikan masalah aksara Cina yang kacau.

Kaedah pertama memerlukan penukaran set aksara berulang, yang tidak cukup mudah. Kaedah kedua memerlukan memuat turun fail fon yang menyokong set aksara Cina dan meletakkannya dalam direktori "fon" FPDF. Ia lebih mudah digunakan daripada kaedah pertama. Pada masa yang sama, perlu diingatkan juga bahawa tetapan huruf Cina dalam dokumen PDF boleh menyebabkan masalah disebabkan saiz fon dan isu lain, jadi sebaiknya anda menguji sebelum menggunakan kandungan Cina.

Atas ialah kandungan terperinci Bagaimana untuk menyelesaikan masalah kacau Cina dalam php fpdf. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Akan R.E.P.O. Ada Crossplay?
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

PHP 8 JIT (Just-in-Time) Penyusunan: Bagaimana ia meningkatkan prestasi. PHP 8 JIT (Just-in-Time) Penyusunan: Bagaimana ia meningkatkan prestasi. Mar 25, 2025 am 10:37 AM

Kompilasi JIT Php 8 meningkatkan prestasi dengan menyusun kod yang sering dilaksanakan ke dalam kod mesin, memberi manfaat kepada aplikasi dengan pengiraan berat dan mengurangkan masa pelaksanaan.

OWASP Top 10 PHP: Huraikan dan mengurangkan kelemahan umum. OWASP Top 10 PHP: Huraikan dan mengurangkan kelemahan umum. Mar 26, 2025 pm 04:13 PM

Artikel ini membincangkan kelemahan OWASP 10 dalam strategi PHP dan mitigasi. Isu -isu utama termasuk suntikan, pengesahan yang rosak, dan XSS, dengan alat yang disyorkan untuk memantau dan mendapatkan aplikasi PHP.

PHP Secure File Muat naik: Mencegah kelemahan berkaitan fail. PHP Secure File Muat naik: Mencegah kelemahan berkaitan fail. Mar 26, 2025 pm 04:18 PM

Artikel ini membincangkan mendapatkan muat naik fail PHP untuk mengelakkan kelemahan seperti suntikan kod. Ia memberi tumpuan kepada pengesahan jenis fail, penyimpanan selamat, dan pengendalian ralat untuk meningkatkan keselamatan aplikasi.

Penyulitan PHP: Penyulitan simetri vs asimetrik. Penyulitan PHP: Penyulitan simetri vs asimetrik. Mar 25, 2025 pm 03:12 PM

Artikel ini membincangkan penyulitan simetri dan asimetrik dalam PHP, membandingkan kesesuaian, prestasi, dan perbezaan keselamatan mereka. Penyulitan simetri lebih cepat dan sesuai untuk data pukal, manakala asimetrik digunakan untuk pertukaran utama yang selamat.

Pengesahan PHP & amp; Kebenaran: Pelaksanaan selamat. Pengesahan PHP & amp; Kebenaran: Pelaksanaan selamat. Mar 25, 2025 pm 03:06 PM

Artikel ini membincangkan pelaksanaan pengesahan dan kebenaran yang mantap dalam PHP untuk mencegah akses yang tidak dibenarkan, memperincikan amalan terbaik dan mengesyorkan alat peningkatan keselamatan.

Apakah tujuan mysqli_query () dan mysqli_fetch_assoc ()? Apakah tujuan mysqli_query () dan mysqli_fetch_assoc ()? Mar 20, 2025 pm 04:55 PM

Artikel ini membincangkan fungsi mysqli_query () dan mysqli_fetch_assoc () dalam PHP untuk interaksi pangkalan data MySQL. Ia menerangkan peranan, perbezaan, dan memberikan contoh praktikal penggunaannya. Hujah utama memberi tumpuan kepada manfaat usin

Bagaimana anda mengambil data dari pangkalan data menggunakan PHP? Bagaimana anda mengambil data dari pangkalan data menggunakan PHP? Mar 20, 2025 pm 04:57 PM

Artikel membincangkan mendapatkan data dari pangkalan data menggunakan PHP, meliputi langkah, langkah keselamatan, teknik pengoptimuman, dan kesilapan umum dengan penyelesaian.

PHP CSRF Perlindungan: Bagaimana untuk mencegah serangan CSRF. PHP CSRF Perlindungan: Bagaimana untuk mencegah serangan CSRF. Mar 25, 2025 pm 03:05 PM

Artikel ini membincangkan strategi untuk mencegah serangan CSRF di PHP, termasuk menggunakan token CSRF, kuki tapak yang sama, dan pengurusan sesi yang betul.

See all articles