Files
doc-fr/reference/image/functions/imagettftext.xml
2021-05-31 18:42:02 +01:00

240 lines
7.7 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 593ea510e853ff034e03f78a4be0daa41661c9d4 Maintainer: yannick Status: ready -->
<!-- Reviewed: no -->
<refentry xml:id="function.imagettftext" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>imagettftext</refname>
<refpurpose>Dessine un texte avec une police TrueType</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type class="union"><type>array</type><type>false</type></type><methodname>imagettftext</methodname>
<methodparam><type>GdImage</type><parameter>image</parameter></methodparam>
<methodparam><type>float</type><parameter>size</parameter></methodparam>
<methodparam><type>float</type><parameter>angle</parameter></methodparam>
<methodparam><type>int</type><parameter>x</parameter></methodparam>
<methodparam><type>int</type><parameter>y</parameter></methodparam>
<methodparam><type>int</type><parameter>color</parameter></methodparam>
<methodparam><type>string</type><parameter>font_filename</parameter></methodparam>
<methodparam><type>string</type><parameter>text</parameter></methodparam>
<methodparam choice="opt"><type>array</type><parameter>options</parameter><initializer>[]</initializer></methodparam>
</methodsynopsis>
<para>
<function>imagettftext</function> dessine le texte <parameter>text</parameter>
avec la police TrueType <parameter>fontfile</parameter>.
</para>
<note>
<para>
Antérieur à PHP 8.0.0, <function>imagefttext</function> était une variante
étendue de <function>imagettftext</function> qui en plus supporte
<parameter>extrainfo</parameter>.
À partir de PHP 8.0.0, <function>imagefttext</function> est un alias de
<function>imagefttext</function>.
</para>
</note>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
&gd.image.description;
<varlistentry>
<term><parameter>size</parameter></term>
<listitem>
<para>&gd.font.size;</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>angle</parameter></term>
<listitem>
<para>
L'angle, en degrés ; 0 degré correspond à la lecture du texte
de gauche à droite. Les valeurs positives représentent une rotation
dans le sens contraire des aiguilles d'une montre. Par exemple,
une valeur de 90 correspondra à une lecture du texte de bas en haut.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>x</parameter></term>
<listitem>
<para>
Les coordonnées données par <parameter>x</parameter> et
<parameter>y</parameter> définiront la position du premier caractère
(le coin bas-gauche du caractère). Cela est différent de la fonction
<function>imagestring</function>, où
<parameter>x</parameter> et <parameter>y</parameter> définissent
le coin haut-gauche du premier caractère. Par exemple, "haut gauche"
correspond à 0, 0.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>y</parameter></term>
<listitem>
<para>
L'ordonnée Y. Cela définit la position de la ligne de base
de la police, et non pas le bas des caractères.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>color</parameter></term>
<listitem>
<para>
L'index de la couleur. Utiliser un index de couleur négatif désactivera
l'antialiasing. Voir la fonction <function>imagecolorallocate</function>.
</para>
</listitem>
</varlistentry>
&gd.ttf.fontfile;
<varlistentry>
<term><parameter>text</parameter></term>
<listitem>
<para>
La chaîne de texte, en UTF-8.
</para>
<para>
Peut inclure des références à des caractères numériques,
décimales (sous la forme : &amp;#8364; ) pour accéder aux caractères
d'une police au delà du premier 127. Les chaînes de caractères
encodées en UTF-8 peuvent être passées directement.
</para>
<para>
Les entités nommées, comme &amp;copy;, ne sont pas supportées. Utilisez la
fonction <function>html_entity_decode</function> pour encoder ces entités
nommées en chaîne UTF-8.
</para>
<para>
Si un caractère est utilisé dans une chaîne qui n'est pas supportée
par la police, un rectangle creux remplacera le caractère.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Retourne un tableau de 8 éléments représentant quatre points
marquants les limites du texte. L'ordre des points est : inférieur
gauche, inférieur droit, supérieur droit, supérieur gauche. Les
points sont relatifs au texte par rapport à l'angle, donc, "supérieur
gauche" signifie dans le coin en haut à gauche lorsque vous
regardez le texte horizontalement.
Retourne &false; si une erreur survient.
</para>
</refsect1>
<refsect1 role="changelog">
&reftitle.changelog;
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>8.0.0</entry>
<entry>
Le paramètre <parameter>options</parameter> a été ajouté.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Exemple avec <function>imagettftext</function></title>
<para>
Cet exemple produira une image PNG blanche de 400x30 pixels,
avec le texte <literal>"Test..."</literal> en noir, avec une ombre
grise, utilisant la police Arial.
</para>
<programlisting role="php">
<![CDATA[
<?php
// Définition du content-type
header('Content-Type: image/png');
// Création de l'image
$im = imagecreatetruecolor(400, 30);
// Création de quelques couleurs
$white = imagecolorallocate($im, 255, 255, 255);
$grey = imagecolorallocate($im, 128, 128, 128);
$black = imagecolorallocate($im, 0, 0, 0);
imagefilledrectangle($im, 0, 0, 399, 29, $white);
// Le texte à dessiner
$text = 'Test...';
// Remplacez le chemin par votre propre chemin de police
$font = 'arial.ttf';
// Ajout d'ombres au texte
imagettftext($im, 20, 0, 11, 21, $grey, $font, $text);
// Ajout du texte
imagettftext($im, 20, 0, 10, 20, $black, $font, $text);
// Utiliser imagepng() donnera un texte plus claire,
// comparé à l'utilisation de la fonction imagejpeg()
imagepng($im);
imagedestroy($im);
?>
]]>
</programlisting>
&example.outputs.similar;
<mediaobject>
<alt>Affichage de l'exemple : imagettftext()</alt>
<imageobject>
<imagedata fileref="en/reference/image/figures/imagettftext.png"/>
</imageobject>
</mediaobject>
</example>
</para>
</refsect1>
<refsect1 role="notes">
&reftitle.notes;
&note.freetype;
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<simplelist>
<member><function>imagettfbbox</function></member>
<member><function>imagefttext</function></member>
</simplelist>
</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
-->