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 — Bir yazı tipinin karakter kodlamasını değiştirir
$yazıtipi
, string $kodlama_dosyası
) : boolBir dosyadan bir karakter kodlaması yöneyi yükler ve yazı tipinin kodlama yöneyini bununla değiştirir. Bir PostScript yazı tipinin öntanımlı yöneyi 127'den büyük karakterleri kapsamadığından İngilizce dışında bir dil kullanacaksanız kodlamayı mutlaka değiştirmelisiniz.
Bu işleve her seferinde yeniden kullanmamak için en iyi yöntem yapılandırma dosyasında
ps.default_encoding
yönergesine doğru kodlama dosyasını
belirtmektir. Böylece yüklediğiniz bütün yazı tipleri özdevinimli olarak
doğru kodlamayı kullanırlar.
yazıtipi
imagepsloadfont() tarafından döndürülen bir yazı tipi özkaynağı.
kodlama_dosyası
Bu dosyanın biçemi T1libs belgelerinde açıklanmaktadır. T1lib iki kullanıma hazır dosya ile gelir: IsoLatin1.enc ve IsoLatin2.enc.
Başarı durumunda TRUE
, başarısızlık durumunda FALSE
döner.
Örnek 1 - imagepsencodefont() örneği
<?php
//Bir .pfb yazı tipi dosyası yükleyelim
$font = imagepsloadfont('./px3l.pfb');
// T1lib'e ISO Latin 1 kodlamasını kullan diyelim
imagepsencode($font, './IsoLatin1.enc');
// Burada yazı tipini kullanıyoruz
// İşimiz bitince yazı tipine ayrılan belleği serbest bırakıyoruz
imagepsfreefont($font);
?>
Bilginize: Bu işlev sadece, PHP, --with-t1lib[=DİZİN] seçeneği ile derlenmişse kullanılabilir.
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().