Documentation de la bibliothèque MLV-0.5

beginner/4_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;
}