PHP: imageloadfont - Manual

downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

imagepalettecopy imageline

Last updated: Sat, 27 Jan 2007

view this page in

# imageloadfont

(PHP 3, PHP 4, PHP 5)

imageloadfont -- Load a new font

## Описание

int imageloadfont ( string file )

imageloadfont() loads a user-defined bitmap and returns its identifier.

## Список параметров

`file`

  The font file format is currently binary and architecture dependent. This means you should generate the font files on the same type of CPU as the machine you are running PHP on.

  Таблица 1. Font file format

  byte position | C data type | description
  --- | --- | ---
  byte 0-3 | int | number of characters in the font
  byte 4-7 | int | value of first character in the font (often 32 for space)
  byte 8-11 | int | pixel width of each character
  byte 12-15 | int | pixel height of each character
  byte 16- | char | array with character data, one byte per pixel in each character, for a total of (nchars*width*height) bytes.

## Возвращаемые значения

The font identifier which is always biigger than 5 to avoid conflicts with built-in fonts or `FALSE` on errors.

## Примеры

Пример 1. Using imageloadfont

`<?php
header("Content-type: image/png");
$im = imagecreatetruecolor(50, 20);
$black = imagecolorallocate($im, 0, 0, 0);
$white = imagecolorallocate($im, 255, 255, 255);
imagefilledrectangle($im, 0, 0, 49, 19, $white);
$font = imageloadfont("04b.gdf");
imagestring($im, $font, 0, 0, "Hello", $black);
imagepng($im);
?>`

## Смотрите также

imagefontwidth()
imagefontheight()

add a note User Contributed Notes
imageloadfont
dave [at] wedwick.com
08-Jan-2007 06:55
`I created a Windows program to convert Windows fonts to PHP fonts. It shows a preview as well as allows sample text to be entered.
http://www.wedwick.com/wftopf.exe`
siker at norwinter dot com
28-Aug-2005 06:37
`Working under the assumption that the only 'architecture dependant' part of the font files is endianness, I wrote a quick and dirty Python script to convert between the two. It has only been tested on a single font on a single machine so don't bet your life on it working. All it does is swap the byte order of the first four ints.
#!/usr/bin/env python
f = open("myfont.gdf", "rb");
d = open("myconvertedfont.gdf", "wb");
for i in xrange(4):
b = [f.read(1) for j in xrange(4)];
b.reverse();
d.write(''.join(b));
d.write(f.read());
I successfully used this script to convert anonymous.gdf, from one of the font links below, into something useable on Mac OS X.`
matthew at exanimo dot com
15-Aug-2005 10:28
`Remember - GD fonts aren't antialiased. If you're planning on using a pre-existing (TrueType) font, you may want to consider using imagettftext() instead of phillip's function.`
alex at bestgames dot ro
02-Jul-2005 05:01
`Confirmation code generation for preventing automated registrations on a website.
Function arguments are:
$code - the code that you shall random generate
$location - relative location of the image that shall be generated
$fonts_dir - relative location for the GDF fonts directory
This function will create an image with the code given by you and will save it in the directory specified with the name formed by MD5 hash of the code.
You may insert as many font types in the fonts directory as you wish, with random names.
<?php
function generate_image($code, $location, $fonts_dir)
{
$image = imagecreate(150, 60);
imagecolorallocate($image, rand(0, 100), rand(100, 150), rand(150, 250));
$fonts = scandir($fonts_dir);
$max = count($fonts) - 2;
$width = 10;
for ($i = 0; $i <= strlen($code); $i++)
{
$textcolor = imagecolorallocate($image, 255, 255, 255);
$rand = rand(2, $max);
$font = imageloadfont($fonts_dir."/".$fonts[$rand]);
$fh = imagefontheight($font);
$fw = imagefontwidth($font);
imagechar($image, $font, $width, rand(10, 50 - $fh), $code[$i], $textcolor);
$width = $width + $fw;
}
imagejpeg($image, $location."/".md5($code).".jpg", 100);
imagedestroy($image);
return $code;
}
?>`
puremango dot co dot uk at gmail dot com
22-Apr-2005 05:54
`I've written an online tool in PHP that allows you to create GD fonts from PNG images.
much usefulness for custom font creation, I feel.
see the tool@
http://puremango.co.uk/cm_fontmaker_114.php
(source available online)`
null at phpmix dot com
22-Dec-2004 09:59
`Sometime ago I wrote a small tutorial on how to create dynamic signatures using gd_fonts. I also uploaded some gd_fonts...
You can check it out here, if you wish:
http://www.phpmix.com/phpBB2/viewtopic.php?t=328
Hope that helps`
widget at oneblacksheep dot com
05-Jun-2004 05:41
`After noting the gd fonts page from dryes58 above was down I contacted the him and have put the pages up at http://www.widgnet.com/gdf_fonts/ hows about that then =)`
angryziber at mail dot com
23-Aug-2000 07:23
`You all should look at the GD image library site for information on extra fonts, it can be found at http://www.boutell.com/gd/`
add a note
imagepalettecopy imageline

Last updated: Sat, 27 Jan 2007
show source | credits | stats | sitemap | contact | advertising | mirror sites
Copyright © 2001-2007 The PHP Group
All rights reserved.
This mirror generously provided by: Yahoo! Inc.
Last updated: Sat Mar 10 09:32:46 2007 PST