Utilizzo di cookies
Script GD libray con PHP Modelli Creare immagine Colore e trasparenza Disegnare Pennelli Misurare Filtri Testo Copy Salvare Miscellanea
GD library con PHP
imagettfbbox() immagine su misura del teso
legge le coordinate che delimitano un testo


e-book
cartaceo
imagettfbbox() crea immagine per testo obliquo
Dimensione font: Inclinazione: Testo:
Cambiare i valori e premere
imagettfbbox crea immagine per testo obliquo
Calcola e restituisce, in pixel o punti, il rettangolo di selezione di un testo disegnato con la funzione imagettftext() 
L'array restituito è di otto elementi, per le coordinate x,y del rettangolo che racchiude il testo.


Gli elementi della matrice sono disposti come mostrato nella tabella seguente.
0: in basso a sinistra, posizione x 1: in basso a sinistra, posizione y
2: in basso a destra, posizione x 3: in basso a destra, posizione y
4: in alto a destra, posizione x 5: alto a destra, posizione y
6: in alto a sinistra, posizione x 7: in alto a sinistra, posizione y
array imagettfbbox ( float $size , float $angle , string $fontfile , string $text )


Parametri
$size: Dimensione del carattere.
In GD 1, questa viene misurata in pixel. In GD 2, questa viene misurata in punti.

angle: Angolo di rotazione del testo espresso in gradi.
$fontfile: nome del file di font TrueType (compresa eventuale URL). 
$text: Stringa della quale verranno rese le coordinate delimitanti.

Questa funzione è adatta quando occorre creare un'immagine che contenga perfettamente  il testo nelle sue dimensioni, ad es. quando si desidera utilizzare font con dimensioni ed obliquità non standard.

Il carattere usato è arial.ttf  che si trova nella sotto cartella font.

Free Software Foundation https://fsfe.org/index.it.html  ha una serie di font gratuiti scaricabili dal loro sito.


<?php
// parametri della stringa
$FontDim = 25; // Dimensione font
$Angolo = 45;
$FontNome = 'font/arial.ttf';
$Testo = 'esempio di immagine creata per questo testo';


// Recupera riquadro di selezione
$Vertici = imagettfbbox($FontDim, $Angolo, $FontNome, $Testo);


// Determina larghezza e altezza in valori assoluti
$Imma_larga = abs($Vertici[4] - $Vertici[0]);
$Imma_alta = abs($Vertici[5] - $Vertici[1]);


// Crea immagine con sfondo nero
$Immagine = imagecreatetruecolor($Imma_larga + $FontDim*1.5, $Imma_alta);
$Bianco = imagecolorallocate($Immagine, 255, 255, 255); // colore del testo


// Punto x,y inizio stringa
// occorre tenere presente che in obliquo le dimensioni necessarie aumentano
// in rapporto alle dimensioni ed al tipo di font
$x = $FontDim/2; $y = $Imma_alta;


// scrive la stringa di testo
imagettftext($Immagine, $FontDim, $Angolo, $x, $y, $Bianco, $FontNome, $Testo);


header('Content-type: image/jpeg');
imagejpeg($Immagine,"NomeFile.jpg");//salva
imagejpeg($Immagine);// al browser
imagedestroy($Immagine); // libera memoria
?> Risultato: