Forum PHP 2017

Imagick::queryFonts

(PECL imagick 2.0.0)

Imagick::queryFontsDevuelve las fuentes configuradas

Descripción

array Imagick::queryFonts ([ string $pattern = "*" ] )

Devuelve las fuentes configuradas.

Parámetros

pattern

El patrón de consulta

Valores devueltos

Devuelve un array que contiene las fuentes configuradas.

Errores/Excepciones

Lanza ImagickException en caso de error.

Ejemplos

Ejemplo #1 Imagick::queryFonts()

<?php
        $output 
'';
        
$output .= "Fonts that match 'Helvetica*' are:<br/>";

        
$fontList = \Imagick::queryFonts("Helvetica*");
 
        foreach (
$fontList as $fontName) {
            
$output .= '<li>'$fontName."</li>";
        }

        return 
$output;

?>

add a note add a note

User Contributed Notes 1 note

up
1
Stefano
2 months ago
If you want to create a graphical output of the  configured/embedded fonts

function outputFont( $fontName = 'Courier' ) {
    $image = new Imagick();
    $draw = new ImagickDraw();

    $draw->setGravity( Imagick::GRAVITY_CENTER );
    $draw->setFont( $fontName );
    $draw->setFontSize( 12 );
    $draw->setFillColor( 'black' );

    $image->newImage( 300, 20, new ImagickPixel( 'lightblue' ) );
    $image->annotateImage( $draw, 0, 0, 0, $fontName );
    $image->setImageFormat( 'png' );

    $src = 'data: ' . mime_content_type( $image ) . ';base64,' . base64_encode( $image );
    return '<img src="' . $src . '"> ' . $fontName . '<br>';
}

echo '<style>img{vertical-align: middle; margin-bottom: 1px;}</style>';
$fontList = \Imagick::queryFonts( '*' );
foreach ( $fontList as $fontName ) {
    echo outputFont( $fontName );
}
To Top