2011-01-09 14 views
5

私は問題を知っていませんが、私は$ _POST関数から文字を呼び出すたびにそれは私のfpdfとしてそれを置く..任意のアイデアなぜ?間違った記号がfpdf ...にエクスポートされました。

+0

これは文字セットの問題です。詳細を追加する必要があります:あなたのデータがどこから来るのですか(データベースフォーム?)、どのようにコード化されますか –

+0

データベースフォーム..しかし、人々はñを書いて、それらのシンボルとしてfpdfで終わります。私はそれが – NORM

答えて

5

文字列のエンコーディングが間違っています。これは、UTF-8ですが、私はあなたがラテン-1ほどが必要だと思う。..

あなたの文字列に)utf8_decodeを(使用することができます。

echo utf8_decode("ñ"); // prints ñ 
+0

ちょっとね!私はそれをエコーするのですか? ..以下のように、何の後に? – NORM

+0

文字列をPDFに書き込む前にそれを使用する必要があります: '$ your_string = utf8_decode($ your_string);'。実際には$ _POSTを読んだ直後に '$ your_string = utf8_decode($ _ POST ['your_string']);' – Floern

+0

これは私の投稿です:$ pdf-> Write(0、 "" $ person ["CA"]);私はこれをしなければなりません:$ pdf-> Write $ your_string = utf8_decode(0、 ""。$ person ["CA"]); ???? – NORM

1

私たちは、一度問題を抱えていたと

utf8_decode("foo bar"); 

を使用して問題を解決した(データはユーザから来ている場合は、もちろん、データベースに依存します...)。ファイルをUTF-8でユーザに配信することを忘れないでください。

header("Content-type: application/pdf; charset=utf-8"); 
+0

ヘッダーに何を設定したいですか? – NORM

+0

@NORM私の編集をご覧ください。 – DrColossos

+0

thnx !!!!!!!!!!! – NORM

2

代替ソリューションは、UnicodeでFPDFを拡張することです(UTF- 8)サポート。 http://acko.net/node/56

+0

thnx! ..それはどうやってインストールするのですか? – NORM

+0

@ノーム:本当に:私は手がかりがありません。しかし、私が集めたことから、通常のFPDFの代わりに使用するだけです。インクルードを変​​更し、 'new UFPDF()'クラスをインスタンス化します。 – mario

+0

thnx !!!!!!!!!!! – NORM

2

私もあまりにも時間を費やしてこれを動作させようとしており、以下の説明が他の人に役立つかもしれないと思っていました。

唯一の問題が£/€またはそれに類する文字の場合、複雑な関数を書く必要はありません。

ここで(ネット上でこのスレッドなどから取られた)私が使用しているものです: -

$pdf->SetY(220); // set the y co-ord before output // 
$monthlyRent = utf8_decode("£" . number_format($monthlyRent, 2)); // 2 dec places // 
// previously $monthlyRent is pulled from the MySql db as $array['_monthlyRent']; 
$pdf->Write(5,'Gross monthly rent: ' . $monthlyRent); // outputs £980 or whatever. // 

が御馳走を動作しますが、utf8_decode();またはそれと同じ行にnumber_format($yourval, 2)を行うにはを覚えていますかねじアップ!

これは、私のような貧しい息子に役立つことを願って、数時間苦労しています!

関連する問題