<?xml version="1.0" encoding="UTF-8"?>
<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
          xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML"
          xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org"
          xml:lang="fr" xml:id="xstring">
    <refnamediv>
        <refname>xstring</refname>
        <refpurpose>dessine des chaînes de caractères  </refpurpose>
    </refnamediv>
    <refsynopsisdiv>
        <title>Séquence d'appel</title>
        <synopsis>
          xstring(x, y, str)
          xstring(x, y, str, angle)
          xstring(x, y, str, angle, box)
        </synopsis>
    </refsynopsisdiv>
    <refsection>
        <title>Paramètres</title>
        <variablelist>
            <varlistentry>
                <term>x, y</term>
                <listitem>
                    <para>vecteurs ou scalaires réel, coordonnées du point en bas à gauche des chaînes de caractères.</para>
                </listitem>
            </varlistentry>
            <varlistentry>
                <term>str</term>
                <listitem>
                    <para>matrice de chaînes de caractères.</para>
                    <para>
                        A partir de la version Scilab 5.2, il est possible d'utiliser les expressions <link linkend="math_rendering_features_in_graphic">LaTeX ou MathML</link>
                    </para>
                </listitem>
            </varlistentry>
            <varlistentry>
                <term>angle  </term>
                <listitem>
                    <para>vecteur ou scalaire réel, angle en degrés dans le sens horaire (0 par défaut).</para>
                </listitem>
            </varlistentry>
            <varlistentry>
                <term>box  </term>
                <listitem>
                    <para>vecteur ou scalaire entier, 0 par défaut.</para>
                </listitem>
            </varlistentry>
        </variablelist>
    </refsection>
    <refsection>
        <title>Description</title>
        <para>
            Si <literal>x</literal> est un scalaire, il est considéré comme un vecteur de la taille de <literal>y</literal> dont les éléments ont pour valeur <literal>x</literal>.
        </para>
        <para>
            Si <literal>y</literal> est un scalaire, il est considéré comme un vecteur de la taille de <literal>x</literal> dont les éléments ont pour valeur <literal>y</literal>.
        </para>
        <para>
            <literal>xstring</literal> dessine n chaînes de caractères à la position <literal>(x[i], y[i])</literal> dans l'échelle graphique courante.
        </para>
        <para>
            Si <literal>str</literal> contient n élément, ces n éléments sont les n chaînes de caractères dessinées.
        </para>
        <para>Sinon, chaque ligne de la matrice correspond à une ligne de texte et les éléments d'une ligne sont considérés comme des mots à séparer par un espace.</para>
        <para>
            Si <literal>angle</literal> est un scalaire, il est considéré comme un vecteur de taille n dont les éléments ont pour valeur <literal>angle</literal>.
        </para>
        <para>
            <literal>angle(i)</literal> définit l'angle en degrés utilisé pour dessiner la chaînes de caractères en position <literal>(x[i], y[i])</literal>.
        </para>
        <para>
            Si <literal>box</literal> est un scalaire, il est considéré comme un vecteur de taille n dont les éléments ont pour valeur <literal>box</literal>.
        </para>
        <para>
            Si <literal>box(i)</literal> vaut 1 et que <literal>angle(i)</literal> vaut 0, une boîte est dessinée autour de la chaîne de caractères en position <literal>(x[i], y[i])</literal>.
        </para>
    </refsection>
    <refsection>
        <title>Exemples</title>
        <programlisting role="example"><![CDATA[
plot2d([0;1],[0;1],0)
xstring(0.5,0.5,["$\overbrace{Scilab}$" "n''est ";"pas" "$\underbrace{Matlab}$"])
// Rendu LaTeX (>= Scilab 5.2)

// autre exemple
alphabet=["a" "b" "c" "d" "e" "f" "g" ..
          "h" "i" "j" "k" "l" "m" "n" ..
          "o" "p" "q" "r" "s" "t" "u" ..
          "v" "w" "x" "y" "z"];
clf()
plot2d([0;1],[0;2],0)
xstring(0.1,1.8,alphabet)     // alphabet
xstring(0.1,1.6,alphabet,0,1) // alphabet dans une boîte
xstring(0.1,1.4,alphabet,20)  // angle
set(gca(), "font_style", 1, "font_size", 1); // police "symbol"
xstring(0.1,0.1,alphabet)
xstring(0.1,0.3,alphabet)
gce().font_size = 3;          // changement de la taille de police
xstring(0.1,0.6,"a")
gce().font_size = 24;  // un grand alpha
 ]]></programlisting>
        <scilab:image>
            plot2d([0;1],[0;1],0)
            xstring(0.5,0.5,["$\overbrace{Scilab}$" "n''est ";"pas" "$\underbrace{Matlab}$"])
        </scilab:image>

    </refsection>
    <refsection role="see also">
        <title>Voir aussi</title>
        <simplelist type="inline">
            <member>
                <link linkend="text_properties">text_properties</link>
            </member>
            <member>
                <link linkend="math_rendering_features_in_graphic">Math mode in strings</link>
            </member>
          <member>
                <link linkend="xnumb">xnumb</link>
            </member>
            <member>
                <link linkend="xtitle">xtitle</link>
            </member>
            <member>
                <link linkend="titlepage">titlepage</link>
            </member>
        </simplelist>
    </refsection>
</refentry>
