AccueilAccueil  FAQFAQ  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  Connexion  
Le deal à ne pas rater :
Cartes Pokémon 151 : où trouver le coffret Collection Alakazam-ex ?
Voir le deal

 

 [résolu] Limitation des caractères affichés.

Aller en bas 
AuteurMessage
hofmeister
Bavard



Messages : 109

[résolu] Limitation des caractères affichés. Empty
MessageSujet: [résolu] Limitation des caractères affichés.   [résolu] Limitation des caractères affichés. EmptyVen 11 Oct 2013 - 16:34

Bonjour tout le monde, j'ai un problème avec de l'affichage de texte à l'écran.
Le principe est de lire un fichier texte, l'enregistrer en pages puis de l'afficher en deux colonnes.
Dans un des 'livres' créés, la dernière page ne s'affiche pas. Je me demande si c'est à cause d'une erreur ou d'une limitation de l'analyse des fichiers...
Je vais citer le code, ça sera peut-être plus clair.
script d'analyse et d'enregistrement:
Code:
{
last_object=id;
if file_exists(string(object_get_name(object_index))+".txt")
    {
    current=file_text_open_read(string(object_get_name(object_index))+".txt");
    l_cott=0;
    while!(file_text_eof(current))
        {
        lig[l_cott]=file_text_read_string(current)+"#";
        file_text_readln(current);
        l_cott+=1;
        }
    file_text_close(current);
    }
strih=0;
l_page_ref=0;l_pages[0]="";lacop="";finreste="";tpcopieu="";
coplapage="";
for(nb=0;nb<l_cott;nb+=1)
    {
    lacop+=lig[nb];
    finreste=lacop;
    nb_pts=string_count(".",lacop);
    if string_height_ext(lacop,20,350) >500
        {
        for(grr=0;grr<nb_pts;grr+=1)
            {
            posb=string_pos(".",finreste);
            morceau=string_copy(finreste,1,posb);
            stl=string_length(finreste)-posb;
            tothei=string_height_ext(coplapage+morceau,20,350);
            finreste=string_copy(finreste,posb+1,stl);
            
            
        
            if tothei<500
                {
                coplapage+=morceau;
                if grr==nb_pts-1
                    {
                    l_pages[l_page_ref]=coplapage;
                    lacop="";
                    finreste="";
                    }
                }
            
            else
                {
                l_pages[l_page_ref]=coplapage;
                l_page_ref+=1;
                lacop=finreste;
                coplapage=morceau;
                strih=0;
                l_pages[l_page_ref]="";
                }
            }
        }
    else
        {
        finreste="";
        l_pages[l_page_ref]=lacop;
        if nb==l_cott-1
            {
            l_pages[l_page_ref]=lacop;
            }
        }
    if nb==l_cott-1
        {
        l_pages[l_page_ref+1]="";
        }
    }
room_goto(r_drawing);
}
Le script d'affichage:
Code:
{
draw_sprite(s_bouquin,-1,100,60);
draw_text_ext(120,80,l_pages[rpager],20,350);
draw_text_ext(530,80,l_pages[rpager+1],20,350);
}
Edit: quand je supprime une phrase dans le fichier texte avant ce qui est effacé, la fin s'affiche.
Le problème est résolu, c'était une histoire de variable assignée à vide dans un cas particulier.
Nb: pour pas faire de post trop inutile, vous pouvez utiliser ce script qui enregistre des colonnes de texte
de 350*500 (en draw_text_ext, sep 20) tirées d'un fichier texte, dans un tableau global l_pages de taille
l_page_ref. Bon, il faudra quelques retouches, et puis...
Merci d'avance.


Dernière édition par hofmeister le Ven 11 Oct 2013 - 17:38, édité 1 fois (Raison : resolu)
Revenir en haut Aller en bas
 
[résolu] Limitation des caractères affichés.
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Concaténation dans une chaîne de caractères [résolu]
» Marzipan poly limitation ....
» Limitation d'un string celons un champs
» [Résolu] get_save_filename('','')
» supprimer des caractères dans un string

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Forum Le CBNA :: Développement :: Entraide confirmés-
Sauter vers: