PHPCon Poland 2024


(PECL imagick 2, PECL imagick 3)

ImagickDraw::setFontSizeEstablece el tamaño de punto de la fuente para usarlo cuando se escribe texto


public ImagickDraw::setFontSize(float $pointsize): bool

Esta función no está documentada actualmente, solamente se encuentra disponible la lista de parámetros.

Establece el tamaño de punto de la fuente para usarlo cuando se escribe texto.



el tamaño del punto

Valores devueltos

No devuelve ningún valor.


Ejemplo #1 Ejemplo de ImagickDraw::setFontSize()

function setFontSize($fillColor, $strokeColor, $backgroundColor) {

$draw = new \ImagickDraw();


$sizes = [24, 36, 48, 60, 72];

foreach (
$sizes as $size) {
$draw->annotation(50, ($size * $size / 16), "Lorem Ipsum!");

$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);

header("Content-Type: image/png");


add a note

User Contributed Notes 2 notes

hmkrox at gmail dot com
14 years ago
The font size taken in parameter is not the size in point (1 point = 1/72 inch) but the font's height in pixel.
Therefore you should do a conversion to have the correct font size if you want to modify a document destined to print.
For example, if your document's resolution is 300ppi, you should add a 25/6 multiplying factor to your fontsize in order to have a correct behaviour of the font.
jgsujith at in dot com
14 years ago
$textWrite='God is Great';

$colorPix=new ImagickPixel ($fontColor);
$image=new Imagick ($sourceFile);
$draw=new ImagickDraw();

$draw->setFontSize($fontSize);//Sets the font pointsize to use when annotating with text

$draw->setFillColor($colorPix);//Sets the fill color to be used for drawing filled objects

$image->annotateImage($draw,$x,$y,0,$textWrite);//Annotates an image with text

$image->writeImage('out.jpg');//Writes an image to the specified filename
To Top