ImageStRingUp () est une fonction de la bibliothèque PHP GD qui dessine du texte vertical sur les images. Semblable à la fonction ImageString () , ImageStRingUp () peut également dessiner du texte vers une position spécifiée dans l'image, mais sa caractéristique est que le texte est disposé verticalement plutôt que horizontalement.
<span><span><span class="hljs-keyword">int</span></span><span> </span><span><span class="hljs-title function_ invoke__">imagestringup</span></span><span> ( resource </span><span><span class="hljs-variable">$image</span></span><span> , </span><span><span class="hljs-keyword">int</span></span><span> </span><span><span class="hljs-variable">$font</span></span><span> , </span><span><span class="hljs-keyword">int</span></span><span> </span><span><span class="hljs-variable">$x</span></span><span> , </span><span><span class="hljs-keyword">int</span></span><span> </span><span><span class="hljs-variable">$y</span></span><span> , </span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-variable">$text</span></span><span> , </span><span><span class="hljs-keyword">int</span></span><span> </span><span><span class="hljs-variable">$color</span></span><span> )
</span></span>
Description du paramètre:
Image : La ressource d'image cible est générée par des fonctions telles que ImageCreate () , ImageCreateFromJPEG () .
Police : taille de police, utilisez des polices prédéfinies dans la bibliothèque GD ou spécifiez la taille d'une police personnalisée.
X : La coordonnée X de la position de départ du texte.
Y : La coordonnée y de la position de départ du texte.
Texte : la chaîne de texte à dessiner.
Couleur : Couleur du texte, généralement générée par la fonction ImageColorAllocate () .
Cette fonction renvoie un entier indiquant si l'opération de dessin est réussie, mais nous n'avons généralement pas besoin de nous soucier de la valeur de retour.
Pour dessiner du texte vertical sur une image, le processus de fonctionnement de base est similaire au dessin de texte horizontalement, sauf que l'imageStrip () est utilisé à la place d'imageString () . Voici les étapes spécifiques pour dessiner du texte vertical:
Créer une ressource d'image.
Allouer des ressources couleur.
Utilisez la fonction ImageStRingUp () pour dessiner du texte sur une image.
Sortez l'image vers le navigateur ou enregistrez-la dans un fichier.
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// Créer une image couleur vraie vierge</span></span><span>
</span><span><span class="hljs-variable">$image</span></span><span> = </span><span><span class="hljs-title function_ invoke__">imagecreate</span></span><span>(</span><span><span class="hljs-number">300</span></span><span>, </span><span><span class="hljs-number">200</span></span><span>);
</span><span><span class="hljs-comment">// Attribuer la couleur de l'arrière-plan et la couleur du texte</span></span><span>
</span><span><span class="hljs-variable">$backgroundColor</span></span><span> = </span><span><span class="hljs-title function_ invoke__">imagecolorallocate</span></span><span>(</span><span><span class="hljs-variable">$image</span></span><span>, </span><span><span class="hljs-number">255</span></span><span>, </span><span><span class="hljs-number">255</span></span><span>, </span><span><span class="hljs-number">255</span></span><span>); </span><span><span class="hljs-comment">// Fond blanc</span></span><span>
</span><span><span class="hljs-variable">$textColor</span></span><span> = </span><span><span class="hljs-title function_ invoke__">imagecolorallocate</span></span><span>(</span><span><span class="hljs-variable">$image</span></span><span>, </span><span><span class="hljs-number">0</span></span><span>, </span><span><span class="hljs-number">0</span></span><span>, </span><span><span class="hljs-number">0</span></span><span>); </span><span><span class="hljs-comment">// Texte noir</span></span><span>
</span><span><span class="hljs-comment">// Définir le texte pour être dessiné</span></span><span>
</span><span><span class="hljs-variable">$text</span></span><span> = </span><span><span class="hljs-string">"Exemple de texte vertical"</span></span><span>;
</span><span><span class="hljs-comment">// Dessiner du texte vertical</span></span><span>
</span><span><span class="hljs-title function_ invoke__">imagestringup</span></span><span>(</span><span><span class="hljs-variable">$image</span></span><span>, </span><span><span class="hljs-number">5</span></span><span>, </span><span><span class="hljs-number">50</span></span><span>, </span><span><span class="hljs-number">50</span></span><span>, </span><span><span class="hljs-variable">$text</span></span><span>, </span><span><span class="hljs-variable">$textColor</span></span><span>);
</span><span><span class="hljs-comment">// Image de sortie au navigateur</span></span><span>
</span><span><span class="hljs-title function_ invoke__">header</span></span><span>(</span><span><span class="hljs-string">"Content-type: image/png"</span></span><span>);
</span><span><span class="hljs-title function_ invoke__">imagepng</span></span><span>(</span><span><span class="hljs-variable">$image</span></span><span>);
</span><span><span class="hljs-comment">// Détruiser les ressources d'image</span></span><span>
</span><span><span class="hljs-title function_ invoke__">imagedestroy</span></span><span>(</span><span><span class="hljs-variable">$image</span></span><span>);
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>
Dans le code ci-dessus, nous créons une image vierge de 300x200 et définissons l'arrière-plan sur le blanc et la couleur du texte en noir. Ensuite, nous appelons la fonction ImageStRingUp () pour dessiner le texte vertical "Exemple de texte vertical" sur l'image. Enfin, l'image est sortie vers le navigateur au format PNG et les ressources d'image sont détruites pour libérer la mémoire.
La taille de la police de la fonction ImageStRingUp () est déterminée par le deuxième paramètre. Cette valeur de paramètre est un nombre qui représente la taille de la police. Plus la taille de la police est grande, plus le texte est épais et le texte est élevé. La taille de la police peut être ajustée en fonction des besoins réels.
Lorsque vous appelez ImageStRingUp () , vous devez fournir les coordonnées de départ du littéral ( X et Y ). Étant donné que le texte est organisé verticalement, la coordonnée X détermine la position horizontale du texte et la coordonnée y détermine le point de départ vertical du texte. Vous pouvez contrôler la position exacte du texte en ajustant ces deux paramètres.
La fonction ImageStRingUp () prend en charge uniquement l'utilisation de polices intégrées (telles que les polices représentées par le numéro 5). Si vous avez besoin de styles de polices plus complexes ou différents, il est recommandé d'utiliser la fonction ImageTtFText () , qui vous permet de dessiner du texte à l'aide de polices TrueType. ImageStRingUp () convient à certains besoins de dessin de texte vertical simples, mais si vous avez besoin de contrôles de police plus complexes, ImageTtFText () sera un meilleur choix.
Pour s'assurer que le texte vertical est clair et lisible, il est recommandé de choisir une couleur qui contraste avec l'arrière-plan. Pour des arrière-plans légers, utilisez du texte sombre et vice versa.
Si vous dessinez du texte trop long ou que la police est grande, elle peut dépasser les limites de l'image. Vous pouvez calculer la largeur et la hauteur du texte avant de dessiner pour vous assurer que la taille de l'image est suffisante pour s'adapter à tout le texte.