imagettfbbox

(PHP 4, PHP 5, PHP 7)

imagettfbboxTrueType yazıtipi kullanılan bir metnin çerçevesini döndürür

Açıklama

imagettfbbox ( float $boyut , float $açı , string $yazıtipi , string $metin ) : array

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.

Değiştirgeler

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.

Dönen Değerler

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.

Örnekler

Örnek 1 - imagettfbbox() örneği

<?php
// 300x150'lik bir resim oluşturalım
$im imagecreatetruecolor(300150);
$black imagecolorallocate($im000);
$white imagecolorallocate($im255255255);

// Artalan rengi beyaz olsun
imagefilledrectangle($im00299299$white);

// Bu yazı tipi dosyamız olsun
$font './arial.ttf';

// İlk metnimizin çerçevesini oluşturalım
$bbox imagettfbbox(1045$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($im1045$x$y$black$font'Powered by PHP ' phpversion());

// Şimdi ikinci metnin çerçevesini oluşturalım
$bbox imagettfbbox(1045$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($im1045$x$y$black$font'and Zend Engine ' zend_version());

// Tarayıcıya çıktılayalım
header('Content-type: image/png');

imagepng($im);
imagedestroy($im);
?>

Notlar

Bilginize:

Bu işlev hem GD kütüphanesini hem de » FreeType kütüphanesini gerektirir.

Ayrıca Bakınız