imageftbbox

(PHP 4 >= 4.0.7, PHP 5, PHP 7, PHP 8)

imageftbboxBir FreeType2 yazı tipi ile yazılacak bir metnin çerçevesini hesaplar

Açıklama

imageftbbox(
    float $boyut,
    float $açı,
    string $yazıtipi,
    string $metin,
    array $seçenekler = []
): array|false

Bu işlev, bir FreeType2 yazı tipi ile yazılacak bir metnin çerçevesini hesaplar.

Bilginize:

PHP 8.0.0 öncesinde imageftbbox() işlevi imagettfbbox() işlevinin geliştirilmişi olup ek olarak seçenekler bağımsız değişkenine sahipti. PHP 8.0.0 ve sonrasında imagettfbbox() işlevi imageftbbox() işlevinin takma adıdır.

Bağımsız Değişkenler

boyut

Punto cinsinden yazıtipi boyutu.

açı

Metnin yazım açısı.

yazıtipi

FreeType2 yazı tipi dosyasının ismi. Bir URL olarak belirtilebilir. PHP'nin kullandığı GD kütüphanesinin sürümüne bağlı olarak, / ile başlamayan bir FreeType2 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.

seçenekler

seçenekler için olası dizi indisleri
Anahtar Türü Anlamı
linespacing float Satırlar arasındaki boşluğu tanımlar.

Dönen Değerler

Metin çerçevesinin dört köşesinin koordinatlarını içeren 8 elemanlı bir dizi ile döner:

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 bakarken sol üst köşe kastedilmektedir.

Başarısızlık durumunda, false döner.

Örnekler

Örnek 1 - imageftbbox() örneği

<?php
// Tuvalimizi 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);

// Yazı tipi dosyamızın yolu
$font = './arial.ttf';

// Metin çerçevesini hesaplatalım
$bbox = imageftbbox(10, 0, $font, 'The PHP Documentation Group');

// Metnin yazılmaya başlanacağı koordinatlar
$x = $bbox[0] + (imagesx($im) / 2) - ($bbox[4] / 2) - 5;
$y = $bbox[1] + (imagesy($im) / 2) - ($bbox[5] / 2) - 5;

imagefttext($im, 10, 0, $x, $y, $black, $font, 'The PHP Documentation Group');

// Görüntüyü çıktılayalım
header('Content-Type: image/png');

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

Notlar

Bilginize: Bu işlev sadece, PHP, freetype desteği (--with-freetype-dir=DİZİN seçeneği) ile derlenmişse kullanılabilir.

Ayrıca Bakınız

  • imagefttext() - Bir metni bir görüntüye bir FreeType 2 yazı tipini kullanarak yazar
  • imagettfbbox() - TrueType yazıtipi kullanılan bir metnin çerçevesini döndürür