Mai 2024 | Lun | Mar | Mer | Jeu | Ven | Sam | Dim |
---|
| | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | | | Calendrier |
|
| | Print_Locate, Text_Width | |
| | Auteur | Message |
---|
JL35
Nombre de messages : 7095 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Print_Locate, Text_Width Lun 10 Oct 2011 - 15:28 | |
| Après expérimentation des fonctions Text_Width et Text_Height je constate ceci: - Le résultat donné par Text_Width est systématiquement déficitaire de 2 pixels, quelle que soit la longueur du texte (1 seul caractère, ou un string). - Le Print_Locate positionne l'affichage du texte 1 pixel avant la position demandée. Dans l'exemple ci-dessus, le pixel noir en haut à gauche a été dessiné en x,y (2D_POINT x,y), et l'affichage du texte en x+1, y (PRINT_LOCATE x+1,y), pour alignement sur les règles. Et on voit que la largeur réelle est de 84 pixels, alors que la largeur donnée par TEXT_WIDTH est 82 pixels. Le positionnement vertical par PRINT_LOCATE et la hauteur donnée par TEXT_HEIGHT sont corrects. | |
| | | Jicehel
Nombre de messages : 5947 Age : 51 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: Print_Locate, Text_Width Lun 10 Oct 2011 - 15:44 | |
| Beau test JL35 et Cosmos70 Ca ce sont des tests qui vont faire gagner du temps à Jack... (Il a gagné un équipe de choc de debuggueurs !! ^^ ). Bon ben Jack, ils ont fait le plus dur, plus qu'à corriger maintenant ... (PS: Bon courage quand même ) | |
| | | Invité Invité
| Sujet: Re: Print_Locate, Text_Width Ven 18 Nov 2011 - 14:34 | |
| petite remarque sans plus: - Code:
-
alpha 1:font_size 1,16 caption 1,"on fait un essai" message width(1)
caption 1,"bonjour" message width(1)
caption 1,"o" message width(1) |
| | | Yannick
Nombre de messages : 8611 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Ven 18 Nov 2011 - 17:50 | |
| @jl35 As tu fais le test avec différentes Polices ? ( Je sais , je suis un casse c....... ) | |
| | | JL35
Nombre de messages : 7095 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Print_Locate, Text_Width Ven 18 Nov 2011 - 18:25 | |
| C'est toi qui l'as dit ! Bon, je sais plus, je pense, et aussi différents enrichissements, mais je ne peux pas le jurer, et puis j'ai perdu mon programme de test, alors il faut tout recommencer ? Edit: j'ai essayé avec différentes polices et tailles, j'ai toujours exactement le même résultat que ci-dessus. Si tu veux essayer toi-même: - Code:
-
DIM a$, p$, sz, xp, yp, x, y, w, h PICTURE 1: WIDTH 1, 150: HEIGHT 1, 70 COLOR 1, 0,0,255 2D_TARGET_IS 1: 2D_FILL_COLOR 255,255,255 PRINT_TARGET_IS 1 a$ = "ABC" p$ = "Arial": ' Police sz = 24: ' Taille
FONT_NAME 1, p$: FONT_SIZE 1, sz xp = 10: yp = 10 PRINT_LOCATE xp, yp PRINT a$ 2D_PEN_COLOR 255,255,0 2D_LINE xp,yp,xp,yp-10: 2D_LINE xp,yp,xp-10,yp: ' axes du print_locate FOR x = xp TO xp+100 STEP 2 2D_POINT x,yp-2 NEXT x FOR x = xp-1 TO xp+100 step 10 2D_POINT x,yp-3 NEXT x FOR y = yp to yp+50 step 2 2D_POINT xp-3,y NEXT y FOR y = yp-1 to yp+50 step 10 2D_POINT xp-4,y NEXT y 2D_PEN_COLOR 255,0,0: 2D_POINT xp,yp: ' emplacement du print_locate w = TEXT_WIDTH(a$, 1) h = TEXT_HEIGHT(a$, 1) PRINT_TARGET_IS 0 PRINT_LOCATE 5,70: PRINT p$+" "+STR$(sz) PRINT "width=" + STR$(w) + " height=" + STR$(h) END l'axe dessiné en haut est la position xp, yp du print_locate, le point rouge l'emplacement exact. L'image correspondante: | |
| | | Invité Invité
| Sujet: Re: Print_Locate, Text_Width Ven 18 Nov 2011 - 23:06 | |
| Lorsque j'ai constaté ceci, j'ai été surpris, vu que normalement un ALPHA est dimensionné au départ: largeur 65, et hauteur 17, et j'ai jamais pensé que le dimensionnement été automatique. J'ai publié aussitôt mais sans faire de teste, et c'est après que je me suis dis qu'il aurait fallu faire des essais, mais c'était trop tard, et j'ai continué le travail en cours qui était plus important, vu qu'on a TEXT_WIDTH et TEXT_HEIGHT pour cela. - Citation :
- j'ai essayé avec différentes polices et tailles, j'ai toujours exactement le même résultat que ci-dessus.
Je ne comprend pas, à chaque changement de taille, de texte,d'enrichissement, les résultats sont les même qu'avec les deux dernières instructions. Toujours est-il que si on avait pensé cela plus tôt, il y aurait pu s'en servir avant. Moi j'ai des résultats différents, et là je ne comprend pas. J'ai utilisé Arial, MS Sans Serif, Bitstream Vera Sans Mono, Times, bold ou non, size différents, et les résultats sont appropriés avec TEXT_... |
| | | Nardo26
Nombre de messages : 2294 Age : 55 Localisation : Valence Date d'inscription : 02/07/2010
| Sujet: Re: Print_Locate, Text_Width Sam 19 Nov 2011 - 1:13 | |
| Je crois que c'est lié à la fonte. A mon avis, par convention, toutes les fontes font que les caractères ont un espace de 2 pixels... sinon les lettres seraient "collées" entre-elles... Au lieu de faire le test avec le caractère "A", essaye avec par exemple le "t" minuscule. Je sais pas vous, mais moi à mon écran si je mets 3 t -> ttt les barres des t sont collées. Cela vaudrait le coup de faire un zoom sur ce 't' pour voir la largeur réelle du caractère... | |
| | | Invité Invité
| Sujet: Re: Print_Locate, Text_Width Sam 19 Nov 2011 - 1:49 | |
| En relisant le post que j'ai mis tout à l'heure, je me rend compte que ce que j'ai mis est l'inverse de ce que je voulais dire. En disant : je ne comprend pas, c'était par rapport à ce que disait JL35, il ne voyait pas de changement, alors que moi je voyais le contraire. Chaque modification était mesurée, d'une lettre, d'une police, etc... les valeurs étaient différentes, et correspondaient à TEXT_WIDTH. Ah lala lala! il faut que j'explique tout de travers |
| | | Yannick
Nombre de messages : 8611 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Sam 19 Nov 2011 - 2:59 | |
| @ jl35 Je te crois sur parole.... (Ce qui me faisait penser à la Police d'écriture c'est qu'en fait les lettres ne sont que des dessins dans des cadres pour certaines et donc la taille du cadre par rapport a la taille du dessin aurait pu créer un écart. ) | |
| | | JL35
Nombre de messages : 7095 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Print_Locate, Text_Width Sam 19 Nov 2011 - 13:31 | |
| Qu'on le prenne comme on voudra, la zone occupée par le print fait toujours 2 pixels de plus que ce qui est annoncé par le TEXT_WIDTH. Pour Nardo: la zone blanche, créée par le Print occupe bien 29 pixels pour 27 annoncés. Et le print_locate est en retrait de 1 pixel par rapport à ce qui est demandé. Je sais bien qu'il doit y avoir un espace entre les caractères pour qu'ils ne soient pas collés, mais il est évident que le TEXT_WIDTH doit en tenir compte, sinon ça ne veut plus rien dire. Vous allez me dire que je pinaille... | |
| | | Contenu sponsorisé
| Sujet: Re: Print_Locate, Text_Width | |
| |
| | | | Print_Locate, Text_Width | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |