8. Typographier - write()

Dans ce chapitre, nous allons voir la composition typographique d’un texte dans un contexte graphique. Nous allons découvrir sa taille, sa couleur, sa police et son alignement. Nous allons voir que :

  • la fonction write() écrit un texte à la position de la tortue,

  • l’option font=(police, taille, style) permet de choisir son style,

  • l’option align='center' permet de choisir son alignement.

Question

La fonction write() écrit un texte dans le canvas de la tortue. Avec des options nous pouvons changer




8.1. La fonction write()

La fonction write() permet d’afficher un texte à la position de la tortue.

Exercice

Déplacez la tortue quelque part et ajoutez un deuxième bout de texte.

8.2. Taille

La fonction write() possède un paramètre optionnel font pour indiquer la police, la taille et le style. La valeur par défaut est ('Arial', 8, 'normal')

Exercice

Essayez de trouvez la taille maxiumum de texte que vous pouvez écrire.

En utilisant une variable taille nous pouvons aussi parcourir un tuple de nombres. A l’intérieur de la boucle nous utilisons cette variable taille trois fois :

  • pour calculer la distance entre les lignes (dans backward())

  • pour l’afficher (dans write())

  • pour choisir la taille (dans l’option font=())

8.3. Police

En typographie, une police d’écriture est un ensemble de signes graphiques (caractères) dont le style est coordonné, afin de former un alphabet. Voici quelques polices notoires :

  • Arial - utilisé sur l’écran

  • Times - utilisé dans des livres, journaux

  • Courier - police mono-espace, utilisée pour du code

  • Didot - police ancienne et élégante

  • Zapfino - police manuscrite

Exercice

Ecrivez un poème de 3-4 lignes en style manuscrit utilsant la police Zapfino.

En utilisant une variable police nous pouvons aussi parcourir un tuple de chaînes de caractères qui représentent des polices. A l’intérieur de la boucle nous utilisons cette variable police deux fois :

  • pour l’afficher (dans write())

  • pour choisir la police (dans l’option font=())

8.4. Style

Le troisième argument présente le style de la police :

  • gras (bold)

  • cursive (italic)

  • gras et cursive (bold italic)

Exercice

Ajoutez un quatrième texte avec le style gras et cursive.

En utilisant une variable style nous pouvons aussi parcourir un tuple de chaînes de caractères qui représentent les 4 styles possibles. A l’intérieur de la boucle nous utilisons cette variable style deux fois :

  • pour l’afficher (dans write())

  • pour choisir le style (dans l’option font=())

8.5. Alignement

Le paramètre optionnel align permet de choisir parmi 3 types d’alignements :

  • gauche ('left')

  • centre ('center')

  • droite ('right')

Exercice

Ecrivez 3-4 lignes de texte en forme de poème qui sont centrées.

8.6. Texte en escalier

Le paramètre optionnel move permet de choisir si la tortue se déplace à la fin du texte. Par défaut ce paramètre est False. Ce programme place chaque mot en escalier.

Exercice

Que se passe-t-il si vous mettez move=False ?

8.7. Texte en couleur

Exercice

Ecrivez les lignes sur la même ligne, en utilisant l’option move=True.

Prudence

Si vous exécutez write() dans ce site avec Skulpt, la couleur du texte est définie par fillcolor(). Quand vous exécutez write() dans un éditeur externe avec Python standard, la couleur du texte est définie par pencolor().

8.8. Texte aligné

Le texte suivant est une phrase celèbre de Star Wars. Les mots sont alignés à gauche, au centre et à droite.

8.9. Sudoku

Le sudoku est un jeu en forme de grille 9x9. Le but du jeu est de remplir la grille avec une série de chiffres, tous différents, qui ne se trouvent jamais plus d’une fois sur une même ligne, dans une même colonne ou dans une même région 3x3, appelé bloc.

8.10. Scrabble

Le Scrabble est un jeu de société et un jeu de lettres où l’objectif est de cumuler des points, sur la base de tirages aléatoires de lettres, en créant des mots sur une grille carrée. Le jeu a été conçu par l’architecte new-yorkais Alfred Mosher Butts pendant la crise de 1929, et publié en 1931.

8.11. WhatsApp

L’application WhatsApp fournit un système de messagerie instantanée chiffrée de bout en bout aussi bien via les réseaux de téléphonie mobile que par Internet.

WhatsApp a remporté un grand succès au tournant des années 2010. L’application est créée en 2009 par Jan Koum et Brian Acton, deux anciens employés de la société américaine Yahoo! avec pour objectif de remplacer le SMS. Elle est utilisée par plus de deux milliards de personnes en 2020.

En 2014, WhatsApp est acquis par Facebook pour un montant d’environ 22 milliards soit environ 350 millions de dollars par employé ou 40 dollars par utilisateur.

Dans le programme ci-dessous nous allons afficher une conversation entre deux personnes dans le style d’une application de messagerie. Nous utilisons la fonctions goto() pour placer la tortue à une position (x, y) et la fonction setx() placer la tortune vers la marge gauche (-280) ou droite (280).

8.12. Exercice

Sudoku

Reproduisez l’image ci-dessous

../_images/sudoku.png

WhatsApp

Créez une conversation WhatsApp fictive. D’abord en mode claire, ensuite en mode sombre (dark mode).

Scrabble

Affichez deux mots qui ont une lettre en commun. Un mot à l’horizontale, le deuxième mot à la verticale.

Nuage de mots-clés

Le nuage de mots-clés, ou nuage de tags (en anglais tag cloud) est une représentation visuelle des mots-clés (tags) très souvent utilisée en web. Généralement, les mots s’affichent dans des tailles et graisses de caractères d’autant plus visibles qu’ils sont utilisés ou populaires.

Choisissez 10 mots et affichez-les avec 10 tailles différentes. La taille la plus grande doit apparaitre au milieu. Les mots ne doivent pas se superposer. Utilisez des tuples avec 10 mots, 10 tailles et 10 positions.