Skip to main content

French characters are not properly displayed in PDF created using PHP FPDF class



Problem in displaying French characters or other language characters that uses latin scripts  on PDF files generated using FPDF class

I am using FPDF class Version 1.6 to generate a pdf file which have french characters in it. But on the PDF file the french characters are either discarded or displayed as some other unfamiliar characters.

Solution:

I tried the below given script to fix the issue.

===============


function change_encoding($str){
return( iconv("UTF-8", "CP1250//TRANSLIT", $str) );
}

===============

The function given above will accept a string and generate the french character friendly encded string.

string iconv ( string $in_charset , string $out_charset , string $str )

the function iconv converts a string to requested character encoding. It performs a character set conversion on the string "$str" from "in_charset" to "out_charset".

Use of TRANSLIT and IGNORE

Appending "//TRANSLIT" to out_charset transliteration is activated. This means that when a character can't be represented in the target charset, it can be approximated through one or several similarly looking characters.

Appending "//IGNORE", characters that cannot be represented in the target charset are silently discarded.

Otherwise, $str is cut from the first illegal character and an E_NOTICE is generated.
{source.php.net}


So Indorder to write a french string on to a Cell in the PDF file call the function like this:

==============

$pdf->Cell(35,5, change_encoding($YourFrenchString),0,1,'',0,'');

==============

References:

* FPDF is a PHP class which allows to generate PDF files with pure PHP, that is to say without using the PDFlib library. F from FPDF stands for Free: you may use it for any kind of usage and modify it to suit your needs.
Read more from http://www.fpdf.org/

* ICONV is a php builtin function that converts a string to requested character encoding
Read more from http://in3.php.net/manual/en/function.iconv.php



for similar Bugs and fixes, click here.

Comments

Popular posts from this blog

Payback Points - How to redeem - How to merge multiple payback accounts - Block Payback card - Payback customer care

Your SBI Debit card ending with XX0000 is deactivated only for Internet txn.

SBI account holders may have received an SMS with following message, supposed to be from State Bank of India (SBI).

Your SBI Debit card ending with XX0000  is deactivated only for Internet txn. To activate send SMS "SWON ECOM 0000" to 09223966666. No change for ATM/POS usage
** Replace the four Zeros with last 4 digits of your debit card number

Recently many of the SBI account holder has losed their money due to a hi-tech ATM robbery which happened in Thiruvananthapuram, capital city of Kerala.

How to turn off BSNL Buzz services - Steps to deactivate BSNL Buzz messages

BSNL Buzz is a service from BSNL for mobile customers, in which when your phone is in idle mode, teasers or small buzz messages related to topics like entertainment, lifestyle, sports, business, fun, polls, daily news updates are delivered to your mobile. When you activate a BSNL SIM card, through which BSNL BUZZ is available, you automatically accept the terms and conditions for teaser delivery.

Recently, I bought a new BSNL SIM card. After the activation, when ever I unlock the phone, I was getting lots of buzz message one after another. I have to click on cancel / back button multiple time to view the home screen. Some times when some call arrives, it was difficult to attend calls due to this teaser popups. So I decided to deactivate the BSNL buzz. Here are the steps to Deactivate or Turn Off BSNL Buzz.


Urgent Openings for PHP trainees, Andriod / IOS developers and PHP developers in Kochi Trivandrum Calicut and Bangalore. Please Send Your updated resumes to recruit.vo@gmail.com   Read more »
Member
Search This Blog