# Documentation de la bibliothèque MLV-0.6.705

- Presentation
- Téléchargement
- Installation
- Compilation
- Exemples
- API
- Liste des fonctions
- bogues
- contacts

# beginner/04_texts_and_boxes.c

Ce programme montre comment il est possible d'utiliser deux types de boîte de texte.

La première est une boîte dont la taille s'adapte à celle du texte. Cette boîte se créé à l'aide de la fonction MLV_draw_adapted_text_box.

La deuxième est une boîte dont la taille est fixée par l'utilisateur. Cette boîte s'obtient à l'aide de la fonction MLV_draw_text_box.

    #include <MLV/MLV_all.h>

    //
    // Attention !
    // Pour pouvoir compiler ce programme sous windows et sous macintosh,
    // il faut, pour la déclaration du main, respecter strictement la syntaxe
    // suivante :
    //
    int main(int argc, char *argv[]){
            //
            // Déclaration et initialisation de la variable qui codera
            // la distance entre deux lignes dans un texte
            //
            int taille_interlinge = 9;

            //
            // Créé et affiche la fenêtre
            //
            MLV_create_window(
                    "beginner - 4 - texts and boxes", "texts and boxes", 640, 480
            );

            //
            // Affiche du texte sans boîte
            //
            MLV_draw_text(
                    10, 10,
                    "Simple texte. Avec draw_text() vous ne devez pas utiliser de retour à la ligne.",
                    MLV_COLOR_MAGENTA
            );

            //
            // Affiche du texte dans une boîte dont la taille s'adapte au texte
            // Le texte est justifié au centre dans la boîte
            //
            MLV_draw_adapted_text_box(
                    10,50,
                    "Exemple de boîte dont le contour\ns'adapte\nà la taille du texte.",
                    taille_interlinge,
                    MLV_COLOR_RED, MLV_COLOR_GREEN, MLV_COLOR_BLACK,
                    MLV_TEXT_CENTER
            );

            //
            // Affiche du texte dans une boîte dont la taille s'adapte au texte
            // Le texte est justifié à gauche dans la boîte
            //
            MLV_draw_adapted_text_box(
                    10,150,
                    "Même chose,\nmais le texte\nest justifié à gauche\nde la fenêtre.",
                    taille_interlinge,
                    MLV_COLOR_RED, MLV_COLOR_GREEN, MLV_COLOR_BLACK,
                    MLV_TEXT_LEFT
            );

            //
            // Affiche du texte dans une boîte de taille fixe.
            // Le texte est justifié à gauche, horizontalement et verticalement
            // centré.
            //
            MLV_draw_text_box(
                    10,280,
                    600,150,
                    "Cette fois-ci,\nla taille de la boîte ne correspond pas à l'espace couvert par le texte.\nLa boîte est ici plus grande.",
                    taille_interlinge,
                    MLV_COLOR_RED, MLV_COLOR_GREEN, MLV_COLOR_BLACK,
                    MLV_TEXT_LEFT,
                    MLV_HORIZONTAL_CENTER, MLV_VERTICAL_CENTER
            );

            //
            // Met à jour l'affichage de la fenêtre.
            //
            MLV_actualise_window();

            //
            // Attend 15 seconde avant la fin du programme.
            //
            MLV_wait_seconds( 15 );

            //
            // Ferme la fenêtre
            //
            MLV_free_window();
            return 0;
    }