PHP Velho Oeste 2024

imagepsencodefont

(PHP 4, PHP 5)

imagepsencodefontフォントの文字エンコーディングベクトルを変更する

警告

この機能は PHP 7.0.0 で 削除 されました。

説明

imagepsencodefont ( resource $font_index , string $encodingfile ) : bool

ファイルから文字エンコーディングベクトルを読み込み、 フォントのエンコーディングベクトルを変更します。 PostScriptフォントのデフォルトベクトルは、 127以降の殆どの文字について、デフォルトのベクトルが欠けています。 英語以外の言語を使う場合、エンコーディングベクトルを直接変更したいはずです。

この関数を常に使っているのなら、 設定ファイル の ps.default_encoding を正しいエンコーディングファイルを指すように指定することで、 エンコーディングを定義する方が良いやり方です。 そうすれば読み込む全てのフォントに自動的にそのエンコーディングが適用されます。

パラメータ

font_index

imagepsloadfont() により返されるフォントリソース

encodingfile

このファイルの正確なフォーマットは T1libs のドキュメントで説明されています。 T1lib はふたつの既に使えるファイルからなります。 IsoLatin1.encIsoLatin2.enc です。

返り値

成功した場合に TRUE を、失敗した場合に FALSE を返します。

変更履歴

バージョン 説明
7.0.0PHP から 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 を指定してコンパイルされている場合のみ使用可能です。

add a note add a note

User Contributed Notes 2 notes

up
1
Scott Hanson
20 years ago
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.
up
1
alex_marquarth at yahoo dot de
21 years ago
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().
To Top