(PHP 4, PHP 5)
imagettfbbox — TrueType yazıtipi kullanılan bir metnin çerçevesini döndürür
$boyut
, float $açı
, string $yazıtipi
, string $metin
)Bir TrueType metin için yazıyı çevreleyen kutunun sınırlarını piksel cinsinden hesaplar ve sonucu bir dizi içinde döndürür.
boyut
Yazıtipi yüksekliği. Kullandığınız GD sürümüne bağlı olarak piksel (GD1) veya punto (GD2) olarak belirtilmelidir.
açı
Belirtilen metnin yazım açısı.
yazıtipi
Kullanılacak TrueType yazıtipinin dosya yolu (URL olabilir).
PHP'nin kullandığı GD kütüphanesi sürümüne bağlı olarak, / ile başlamayan bir dosya ismine .ttf uzantısı eklenir ve kütüphane bu dosya ismini kütüphanede tanımlı dizinlerde arar.
metin
Çerçevesi hesaplanacak metin.
Bir hata durumunda FALSE
yoksa metin çerçevesinin dört köşesinin
koordinatlarını içeren 8 elemanlı bir dizi döner:
anahtar | içeriği |
---|---|
0 | Sol alt köşenin X konumu |
1 | Sol alt köşenin Y konumu |
2 | Sağ alt köşenin X konumu |
3 | Sağ alt köşenin Y konumu |
4 | Sağ üst köşenin X konumu |
5 | Sağ üst köşenin Y konumu |
6 | Sol üst köşenin X konumu |
7 | Sol üst köşenin Y konumu |
Noktalar açıdan bağımsız olarak metne görelidir. Yani, "sol üst" denince metne yatay olarak bakarkenki sol üst köşe kastedilmektedir.
Örnek 1 - imagettfbbox() örneği
<?php
// 300x150'lik bir resim oluşturalım
$im = imagecreatetruecolor(300, 150);
$black = imagecolorallocate($im, 0, 0, 0);
$white = imagecolorallocate($im, 255, 255, 255);
// Artalan rengi beyaz olsun
imagefilledrectangle($im, 0, 0, 299, 299, $white);
// Bu yazı tipi dosyamız olsun
$font = './arial.ttf';
// İlk metnimizin çerçevesini oluşturalım
$bbox = imagettfbbox(10, 45, $font, 'Powered by PHP ' . phpversion());
// Bunlar bizim X ve Y koordinatlarımız olsun
$x = $bbox[0] + (imagesx($im) / 2) - ($bbox[4] / 2) - 25;
$y = $bbox[1] + (imagesy($im) / 2) - ($bbox[5] / 2) - 5;
// Metni yazalım
imagettftext($im, 10, 45, $x, $y, $black, $font, 'Powered by PHP ' . phpversion());
// Şimdi ikinci metnin çerçevesini oluşturalım
$bbox = imagettfbbox(10, 45, $font, 'and Zend Engine ' . zend_version());
// Bu metin ilkinin altında olsun
$x = $bbox[0] + (imagesx($im) / 2) - ($bbox[4] / 2) + 10;
$y = $bbox[1] + (imagesy($im) / 2) - ($bbox[5] / 2) - 5;
// Metni yazalım
imagettftext($im, 10, 45, $x, $y, $black, $font, 'and Zend Engine ' . zend_version());
// Tarayıcıya çıktılayalım
header('Content-type: image/png');
imagepng($im);
imagedestroy($im);
?>
Bilginize:
Bu işlev hem GD kütüphanesini hem de » FreeType kütüphanesini gerektirir.