<?xml version="1.0" encoding="utf-8"?> <!-- $Revision$ --> <!-- splitted from ./en/functions/ps.xml, last change in rev 1.12 --> <refentry xml:id="function.ps-findfont" xmlns="http://docbook.org/ns/docbook"> <refnamediv> <refname>ps_findfont</refname> <refpurpose>Loads a font</refpurpose> </refnamediv> <refsect1 role="description"> &reftitle.description; <methodsynopsis> <type>int</type><methodname>ps_findfont</methodname> <methodparam><type>resource</type><parameter>psdoc</parameter></methodparam> <methodparam><type>string</type><parameter>fontname</parameter></methodparam> <methodparam><type>string</type><parameter>encoding</parameter></methodparam> <methodparam choice="opt"><type>bool</type><parameter>embed</parameter><initializer>false</initializer></methodparam> </methodsynopsis> <para> Loads a font for later use. Before text is output with a loaded font it must be set with <function>ps_setfont</function>. This function needs the adobe font metric file in order to calculate the space used up by the characters. A font which is loaded within a page will only be available on that page. Fonts which are to be used in the complete document have to be loaded before the first call of <function>ps_begin_page</function>. Calling <function>ps_findfont</function> between pages will make that font available for all following pages. </para> <para> The name of the afm file must be <parameter>fontname</parameter><literal>.afm</literal>. If the font shall be embedded the file <parameter>fontname</parameter><literal>.pfb</literal> containing the font outline must be present as well. </para> <para> Calling <function>ps_findfont</function> before the first page requires to output the postscript header which includes the BoundingBox for the whole document. Usually the BoundingBox is set with the first call of <function>ps_begin_page</function> which now comes after <function>ps_findfont</function>. Consequently the BoundingBox has not been set and a warning will be issued when <function>ps_findfont</function> is called. In order to prevent this situation, one should call <function>ps_set_parameter</function> to set the BoundingBox before <function>ps_findfont</function> is called. </para> </refsect1> <refsect1 role="parameters"> &reftitle.parameters; <para> <variablelist> <varlistentry> <term><parameter>psdoc</parameter></term> <listitem> <para> Resource identifier of the postscript file as returned by <function>ps_new</function>. </para> </listitem> </varlistentry> <varlistentry> <term><parameter>fontname</parameter></term> <listitem> <para> The name of the font. </para> </listitem> </varlistentry> <varlistentry> <term><parameter>encoding</parameter></term> <listitem> <para> <function>ps_findfont</function> will try to load the file passed in the parameter <parameter>encoding</parameter>. Encoding files are of the same syntax as those used by <command>dvips(1)</command>. They contain a font encoding vector (which is currently not used but must be present) and a list of extra ligatures to extend the list of ligatures derived from the afm file. </para> <para> <parameter>encoding</parameter> can be &null; or the empty string if the default encoding (TeXBase1) shall be used. </para> <para> If the encoding is set to <literal>builtin</literal> then there will be no reencoding and the font specific encoding will be used. This is very useful with symbol fonts. </para> </listitem> </varlistentry> <varlistentry> <term><parameter>embed</parameter></term> <listitem> <para> If set to a value >0 the font will be embedded into the document. This requires the font outline (.pfb file) to be present. </para> </listitem> </varlistentry> </variablelist> </para> </refsect1> <refsect1 role="returnvalues"> &reftitle.returnvalues; <para> Returns the identifier of the font or zero in case of an error. The identifier is a positive number. </para> </refsect1> <refsect1 role="seealso"> &reftitle.seealso; <para> <simplelist> <member><function>ps_begin_page</function></member> <member><function>ps_setfont</function></member> </simplelist> </para> </refsect1> </refentry> <!-- Keep this comment at the end of the file Local variables: mode: sgml sgml-omittag:t sgml-shorttag:t sgml-minimize-attributes:nil sgml-always-quote-attributes:t sgml-indent-step:1 sgml-indent-data:t indent-tabs-mode:nil sgml-parent-document:nil sgml-default-dtd-file:"~/.phpdoc/manual.ced" sgml-exposed-tags:nil sgml-local-catalogs:nil sgml-local-ecat-files:nil End: vim600: syn=xml fen fdm=syntax fdl=2 si vim: et tw=78 syn=sgml vi: ts=1 sw=1 -->