Utilizzo di example from php.net Viene visualizzato un avviso e l'immagine non viene visualizzata correttamente. Io fornisco un percorso completo del file TTF in questo modo: /var/www/public/myfont.ttf
imagettftext non può aprire il file di font
PHP Warning: imagettftext() [<a href='function.imagettftext'>function.imagettftext</a>]: Could not find/open font in <phpfile>
Sto usando un custom .ttf carattere trovato here. Posso aprire il file bene in Ubuntu come file di font valido. Ho anche provato altri caratteri, con lo stesso risultato.
Sto usando Ubuntu 10.04 LTS a 32 bit, con apache2, php5, freetype6 e php5-gd installati. Ho anche provato a chmod 777 file e cartelle con file ttf, con lo stesso risultato.
Come posso ottenere l'esempio di lavoro utilizzando un file di font ttf personalizzato?
* Modifica: Il codice che sto usando:
<?php
// File is: /var/www/public/test.php
// Apart from $font variable, it's copy-pasted from php.net
// Set the content-type
header('Content-Type: image/png');
// Create the image
$im = imagecreatetruecolor(400, 30);
// Create some colors
$white = imagecolorallocate($im, 255, 255, 255);
$grey = imagecolorallocate($im, 128, 128, 128);
$black = imagecolorallocate($im, 0, 0, 0);
imagefilledrectangle($im, 0, 0, 399, 29, $white);
// The text to draw
$text = 'Testing...';
// Replace path by your own font path
$font = '/var/www/public/UnmaskedBB.ttf';
// Add some shadow to the text
imagettftext($im, 20, 0, 11, 21, $grey, $font, $text);
// Add the text
imagettftext($im, 20, 0, 10, 20, $black, $font, $text);
// Using imagepng() results in clearer text compared with imagejpeg()
imagepng($im);
imagedestroy($im);
?>
uscita da phpinfo();
[gd]
GD Support enabled
GD Version 2.0
FreeType Support enabled
FreeType Linkage with freetype
FreeType Version 2.3.11
T1Lib Support enabled
GIF Read Support enabled
GIF Create Support enabled
JPEG Support enabled
libJPEG Version 6b
PNG Support enabled
libPNG Version 1.2.42
WBMP Support enabled
Testing is_file
e is_readable
:
$font = realpath('./').'/UnmaskedBB.ttf';
echo "Font: ".$font; // /var/www/public/UnmaskedBB.ttf
echo "Is file? ".is_file($font); // 1
echo "Is readable? ".is_readable($font); // 1
Puoi mostrare il codice esatto? Non riesco a vedere nulla di sbagliato ma per completezza –
Sei sicuro al 100% che sia il percorso esatto del font? Prendendo in considerazione la case sensitive? –
E sembra esserci un errore di battitura: 'tff' –