The t1lib-5.0.0 source includes 5 different encoding files under Fonts/enc/. For my text with German umlauts, using IsoLatin1.enc did not work, but PSLatin1.enc did the trick.
(PHP 4, PHP 5)
imagepsencodefont — フォントの文字エンコーディングベクトルを変更する
この機能は PHP 7.0.0 で 削除 されました。
$font_index
, string $encodingfile
) : boolファイルから文字エンコーディングベクトルを読み込み、 フォントのエンコーディングベクトルを変更します。 PostScriptフォントのデフォルトベクトルは、 127以降の殆どの文字について、デフォルトのベクトルが欠けています。 英語以外の言語を使う場合、エンコーディングベクトルを直接変更したいはずです。
この関数を常に使っているのなら、 設定ファイル の ps.default_encoding を正しいエンコーディングファイルを指すように指定することで、 エンコーディングを定義する方が良いやり方です。 そうすれば読み込む全てのフォントに自動的にそのエンコーディングが適用されます。
font_index
imagepsloadfont() により返されるフォントリソース
encodingfile
このファイルの正確なフォーマットは T1libs のドキュメントで説明されています。 T1lib はふたつの既に使えるファイルからなります。 IsoLatin1.enc と IsoLatin2.enc です。
成功した場合に TRUE
を、失敗した場合に FALSE
を返します。
バージョン | 説明 |
---|---|
7.0.0 | PHP から T1Lib サポートが削除されたため、この関数は削除されました。 |
例1 imagepsencodefont() の例
<?php
// Load a .pfb font file
$font = imagepsloadfont('./px3l.pfb');
// Tell T1lib to use ISO Latin 1 encoding
imagepsencode($font, './IsoLatin1.enc');
// Do any operations with the font here
// Free the font from memory
imagepsfreefont($font);
?>
注意: この関数は、PHP が --with-t1lib を指定してコンパイルされている場合のみ使用可能です。
The t1lib-5.0.0 source includes 5 different encoding files under Fonts/enc/. For my text with German umlauts, using IsoLatin1.enc did not work, but PSLatin1.enc did the trick.
Because I have had problems with this function to find out that there is no result to store in a variable, a short example how to use:
$font = imagepsloadfont( "/home/www/font/Arial.pfb" );
imagepsencodefont( $font, "/home/www/font/IsoLatin1.enc" );
afterwards you can use the resource $font in each other ps function like imagepstext() or imagepsbbox().