This translation is community contributed and may not be up to date. We only maintain the English version of the documentation. Read this manual in English
Defold prend en charge un type spécifique de nœud d’interface graphique qui permet d’afficher du texte dans une scène d’interface graphique. Toute ressource de police ajoutée à un projet peut être utilisée pour le rendu des nœuds de texte.
L’aperçu de l’éditeur prend en charge la mise en forme des glyphes et la mise en page de droite à gauche grâce au moteur de rendu des polices du moteur. Consultez Prise en charge de la mise en page du texte pour connaître les paramètres de police et d’App Manifest nécessaires.
Les polices que vous souhaitez utiliser dans les nœuds de texte d’interface graphique doivent être ajoutées au composant (component) d’interface graphique. Faites un clic droit sur le dossier Fonts, utilisez le menu supérieur GUI ou appuyez sur le raccourci clavier correspondant.

Les nœuds de texte possèdent un ensemble de propriétés spécifiques :
Suivez la configuration des polices vectorielles, ajoutez la ressource .font aux Fonts de la scène GUI et sélectionnez-la sur le nœud de texte. Définissez le Material de la ressource de police sur /builtins/fonts/font-vector.material. Utilisez Font Size du nœud pour contrôler la taille affichée.
Pour les émojis en couleur, effectuez également la configuration de la police de repli COLRv1 et de sa mise en bundle. Créez un nœud de texte avec l’identifiant text, laissez son champ Text vide et ajoutez ce qui suit au .gui_script de la scène GUI :
function init(self)
local node = gui.get_node("text")
local text = "Hello 😀 🍎 🚀"
local font_resource = gui.get_font_resource(gui.get_font(node))
-- Add the fallback once for this shared font resource.
font.add_font(font_resource, "/fonts/NotoColorEmoji-Regular.ttf")
font.prewarm_text(font_resource, text, function(self, request_id, result, err)
if result then
gui.set_text(node, text)
else
print("Could not prepare GUI text:", err)
end
end)
end
gui.get_font() renvoie le nom de la police dans la scène GUI ; gui.get_font_resource() résout ce nom en ressource de police utilisable par font.add_font(). Les autres nœuds et labels partageant cette ressource reçoivent aussi la police de repli ; initialisez-la donc une seule fois. Le texte est défini une fois le préchargement terminé avec succès.
En définissant le pivot du nœud, vous pouvez modifier le mode d’alignement du texte.
Center, North ou South, le texte est centré.West, le texte est aligné à gauche.East, le texte est aligné à droite.
Les nœuds de texte répondent à toutes les fonctions génériques de manipulation des nœuds permettant de définir la taille, le pivot, la couleur, etc. Quelques fonctions sont propres aux nœuds de texte :
gui.set_font().gui.set_line_break().gui.set_text().function on_message(self, message_id, message, sender)
if message_id == hash("set_score") then
local s = gui.get_node("score")
gui.set_text(s, message.score)
end
end