PHP 8.4.1 Released!

ImagickDraw::setTextUnderColor

(PECL imagick 2, PECL imagick 3)

ImagickDraw::setTextUnderColorEspecifica el color de un rectángulo de fondo

Descripción

public ImagickDraw::setTextUnderColor(ImagickPixel $under_color): bool
Advertencia

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

Especifica el color de un rectángulo de fondo para colocarlo bajo anotaciones de texto.

Parámetros

under_color

el color de debajo

Valores devueltos

No devuelve ningún valor.

Ejemplos

Ejemplo #1 Ejemplo de ImagickDraw::setTextUnderColor()

<?php
function setTextUnderColor($strokeColor, $fillColor, $backgroundColor, $textUnderColor) {
$draw = new \ImagickDraw();

$draw->setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(2);
$draw->setFontSize(72);
$draw->annotation(50, 75, "Lorem Ipsum!");
$draw->setTextUnderColor($textUnderColor);
$draw->annotation(50, 175, "Lorem Ipsum!");

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

$imagick->drawImage($draw);

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

?>

add a note

User Contributed Notes 1 note

up
0
www dot query at gmail dot com
13 years ago
When wishing to print some text on a photograph and make that text sufficiently contrasting to the background image, use a 4 byte code for colour and transparency.

It is the same 4 byte code using by the parameter '-undercolor' in ImageMagick's command lime instruction 'convert'.

The first 3 bytes are the RGB colour code and the fourth byte is the transparency byte.

<?php

$draw
= new ImagickDraw();
$draw->setFillColor('#ffff00');
$draw->setFont('Eurostile');
$draw->setFontSize(21);
$draw->setTextUnderColor('#ff000088');
$picin->annotateImage($draw,40,$height-10,0,"Hallo");

?>

The example code produces yellow text on a semi-transparent red background.
To Top