PHP 8.4.1 Released!

ImagickDraw::setFont

(PECL imagick 2, PECL imagick 3)

ImagickDraw::setFontSets the fully-specified font to use when annotating with text

Description

public ImagickDraw::setFont(string $font_name): bool
Warning

This function is currently not documented; only its argument list is available.

Sets the fully-specified font to use when annotating with text.

Parameters

font_name

Return Values

Returns true on success.

Examples

Example #1 ImagickDraw::setFont() example

<?php
function setFont($fillColor, $strokeColor, $backgroundColor) {

$draw = new \ImagickDraw();

$draw->setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);

$draw->setStrokeWidth(2);
$draw->setFontSize(36);

$draw->setFont("../fonts/Arial.ttf");
$draw->annotation(50, 50, "Lorem Ipsum!");

$draw->setFont("../fonts/Consolas.ttf");
$draw->annotation(50, 100, "Lorem Ipsum!");

$draw->setFont("../fonts/CANDY.TTF");
$draw->annotation(50, 150, "Lorem Ipsum!");

$draw->setFont("../fonts/Inconsolata-dz.otf");
$draw->annotation(50, 200, "Lorem Ipsum!");

$imagick = new \Imagick();
$imagick->newImage(500, 300, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);

header("Content-Type: image/png");
echo
$imagick->getImageBlob();
}

?>

add a note

User Contributed Notes 3 notes

up
3
zombiebovine at gmail dot com
15 years ago
The only acceptable parameters I've been able to use are the location, relative to site root, of a font file.

e.g,
$draw->setFont("fonts/arial.ttf");
up
3
Anonymous
13 years ago
To get a list of fonts that ImageMagick knows about, enter this from a cmd shell:
convert -list font
up
2
Stefano
7 years ago
if u are looking for the configured/embedded font list
$fontList = \Imagick::queryFonts('*');
foreach ( $fontList as $fontName ) {
echo $fontName . '<br>';
}

http://php.net/manual/en/imagick.queryfonts.php
To Top