📅  最后修改于: 2023-12-03 14:45:16.246000             🧑  作者: Mango
queryfonts()
函数是Gmagick的一个内置函数,用于获取系统中可用的字体列表。
public Gmagick::queryfonts ([string $pattern = "*" [, bool $verbose = false ]]] ) : array
pattern
:可选参数,用于过滤字体名称的通配符。verbose
:可选参数,控制是否输出更详细的字体信息。该函数返回一个包含所有系统中可用字体名称的数组。当verbose
参数设置为true
时,数组中每个字体字符串都包含了更详细的信息。
以下为使用queryfonts()
函数获取系统中所有字体的实例:
<?php
$gmagick = new Gmagick();
$fonts = $gmagick->queryfonts();
print_r($fonts);
?>
输出:
Array
(
[0] => AvantGarde-Book
[1] => AvantGarde-BookOblique
[2] => AvantGarde-Demi
[3] => AvantGarde-DemiOblique
[4] => Bookman-Demi
[5] => Bookman-DemiItalic
[6] => Bookman-Light
[7] => Bookman-LightItalic
[8] => Courier
[9] => Courier-Bold
[10] => Courier-BoldOblique
[11] => Courier-Oblique
[12] => ...
)
以下为使用queryfonts()
函数获取系统中所有字体详细信息的实例:
<?php
$gmagick = new Gmagick();
$fonts = $gmagick->queryfonts("*", true);
print_r($fonts);
?>
输出:
Array
(
[0] => Bitstream-Charter-Bold
[1] => Bitstream-Charter-Bold-Italic
[2] => Bitstream-Charter-Italic
[3] => Bitstream-Charter-Roman
[4] => clean
[5] => clean-Bold
[6] => clean-Bold-Italic
[7] => clean-Italic
[8] => DejaVu-Sans-Bold
[9] => DejaVu-Sans-Bold-Oblique
[10] => DejaVu-Sans-Condensed-Bold
[11] => DejaVu-Sans-Condensed-Bold-Oblique
[12] => ...
)
queryfonts()
函数返回的字体名称数组是从Gmagick的缓存中获取的,并不是实时从系统中获取。如果你在使用Gmagick期间安装了新的字体,需要先调用Gmagick::clear()
函数清空缓存,再使用queryfonts()
函数重新获取字体列表。