FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» Logiciel de planétarium.
Tester rapidement les polices de caractères Emptypar Pedro Aujourd'hui à 8:08

» Un autre pense-bête...
Tester rapidement les polices de caractères Emptypar Froggy One Jeu 21 Nov 2024 - 15:54

» Récupération du contenu d'une page html.
Tester rapidement les polices de caractères Emptypar Pedro Sam 16 Nov 2024 - 14:04

» Décompilation
Tester rapidement les polices de caractères Emptypar JL35 Mar 12 Nov 2024 - 19:57

» Un album photos comme du temps des grands-mères
Tester rapidement les polices de caractères Emptypar jjn4 Mar 12 Nov 2024 - 17:23

» traitement d'une feuille excel
Tester rapidement les polices de caractères Emptypar jjn4 Jeu 7 Nov 2024 - 3:52

» Aide-mémoire mensuel
Tester rapidement les polices de caractères Emptypar jjn4 Lun 4 Nov 2024 - 18:56

» Des incomprèhension avec Timer
Tester rapidement les polices de caractères Emptypar Klaus Mer 30 Oct 2024 - 18:26

» KGF_dll - nouvelles versions
Tester rapidement les polices de caractères Emptypar Klaus Mar 29 Oct 2024 - 17:58

» instructions panoramic
Tester rapidement les polices de caractères Emptypar maelilou Lun 28 Oct 2024 - 19:51

» Figures fractales
Tester rapidement les polices de caractères Emptypar Marc Ven 25 Oct 2024 - 12:18

» Panoramic et Scanette
Tester rapidement les polices de caractères Emptypar Yannick Mer 25 Sep 2024 - 22:16

» Editeur d étiquette avec QR évolutif
Tester rapidement les polices de caractères Emptypar JL35 Lun 23 Sep 2024 - 22:40

» BUG QR Code DelphiZXingQRCode
Tester rapidement les polices de caractères Emptypar Yannick Dim 22 Sep 2024 - 11:40

» fichier.exe
Tester rapidement les polices de caractères Emptypar leclode Ven 20 Sep 2024 - 19:02

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Novembre 2024
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
252627282930 
CalendrierCalendrier
Le Deal du moment : -28%
-28% Machine à café avec broyeur ...
Voir le deal
229.99 €

 

 Tester rapidement les polices de caractères

Aller en bas 
2 participants
AuteurMessage
Marc

Marc


Nombre de messages : 2466
Age : 63
Localisation : TOURS (37)
Date d'inscription : 17/03/2014

Tester rapidement les polices de caractères Empty
MessageSujet: Tester rapidement les polices de caractères   Tester rapidement les polices de caractères EmptyMer 12 Juin 2024 - 18:01

Bonjour à tous !

Voici un petit utilitaire pour tester rapidement les différentes polices de caractères disponibles dans le langage Panoramic.


Tester rapidement les polices de caractères Font_b10

Autre capture d'écran avec le COMBO déroulé :
Tester rapidement les polices de caractères Tmp_bm10



Le COMBO contient la liste des noms de police.
Le MEMO permet de saisir un texte personnalisé.
Les cases à cocher (CHECK) donnent accès aux différents styles d’écriture.

La partie droite du programme affiche le rendu du texte dans différentes tailles de caractères.


Code:
' Choix de la police de caracères
' Marc - Juin 2024
' Ecrit en langage PANORAMIC 9.9.29i9

dim titre$, texte$, start%, police$, i%

label afficherListePolices, choisirPolice, effacerMEMO, actualiserTexte
label gras, italique, souligne, barre

inactive 0

interfaceUtilisateur()

active 0

end
' ------------------------------------------------------------------------------
sub interfaceUtilisateur()
    
    ' dimension de la fenêtre pricipale FORM 0
    width 0,width(0) - width_client(0) + 800
    height 0,height(0) - height_client(0) + 700
    
    ' couleur de fond de la fenêtre principale FORM 0
    color 0,255,255,255
    
    ' Titre du bandeau de la fenêtre principale FORM 0
    caption 0,"Panoramic"

    ' définir le message par défaut
    texte$ ="PANORAMIC est un langage" + chr$(13) + "simple et façile" + chr$(13)

    ' center la fenêtre principale FORM 0
    top 0,(screen_y - height(0)) / 2
    left 0,(screen_x - width(0)) / 2
    
    ' Titre
    titre$ = "Les polices de caractères en Panoramic"
    alpha 10
    font_name 10,"Segoe UI"
    font_size 10,20
    caption 10,titre$
    top 10,20

    ' centrage automatique du titre
    left 10,(width_client(0)- text_width(titre$,10)) / 2
    
    ' MEMO pour un texte personnalisé    
    memo_rich 30
    top 30,230
    left 30,70
    font_color 30,127,127,127
    font_size 30,10
    text 30,texte$
    on_click 30,effacerMEMO
    
    alpha 31
    top 31,215
    left 31,75
    caption 31,"Tapez votre texte :"
    
    check 32
    top 32,350
    left 32,90
    caption 32,"Gras"
    on_click 32,gras
    
    check 33
    top 33,400
    left 33,90
    caption 33,"Italique"
    on_click 33,italique
    
    check 34
    top 34,350
    left 34,170
    caption 34,"Souligné"
    on_click 34,souligne
    
    check 35
    top 35,400
    left 35,170
    caption 35,"Barré"
    on_click 35, barre
    
    
    ' créer combo contenant les noms des polices de caractères disponibles
    comboFont(70,140,250,12)

    ' créer les zones de rendu texte
    alpha 11
    left 11,400
    font_size 11,6
    
    alpha 12
    left 12,400
    font_size 12,7
    
    alpha 13
    left 13,400
    font_size 13,8
    
    alpha 14
    left 14,400
    font_size 14,9
    
    alpha 15
    left 15,400
    font_size 15,10
    
    alpha 16
    left 16,400
    font_size 16,11
    
    alpha 17
    left 17,400
    font_size 17,12
    
    alpha 18
    left 18,400
    font_size 18,13
    
    alpha 19
    left 19,400
    font_size 19,14
    
    alpha 20
    left 20,400
    font_size 20,15
    
    alpha 21
    left 21,400
    font_size 21,16
    
    ' Dessin
    picture 22
    width 22,167
    height 22,137
    top 22,500
    left 22,115
    color 22,255,255,255
    2d_target_is 22
    2d_pen_color 220,200,200
    2d_fill_off
    2d_rectangle 0,0,167,108
    2d_rectangle 9,9,158,99
    2d_flood 3,3,220,200,200
    2d_fill_color 220,200,200
    2d_rectangle 71,108,96,127
    2d_rectangle 47,127,120,137
    ' signe "inférieur"
    2d_line 33,50,69,34
    2d_line 68,35,68,45
    2d_line 68,44,42,54
    2d_line 42,54,69,66
    2d_line 68,65,68,74
    2d_line 33,58,69,74
    2d_line 33,50,33,59
    2d_flood 37,53,220,200,200
    ' slash
    2d_line 86,27,93,27
    2d_line 86,27,72,82
    2d_line 73,81,80,81
    2d_line 92,27,79,82
    2d_flood 88,30,220,200,200
    ' signe "supérieur"
    2d_line 98,35,134,50
    2d_line 133,50,133,59
    2d_line 98,73,134,58
    2d_line 98,65,98,74
    2d_line 98,65,124,54
    2d_line 98,43,124,54
    2d_line 98,35,98,44
    2d_flood 101,40,220,200,200

    afficherLesRendus()
  
end_sub
' ------------------------------------------------------------------------------
effacerMEMO:
    off_click 30

    if start% = 0
        clear 30 :' effacer MEMO
        font_color 30,0,0,0
        start% = 1
        on_change 30,actualiserTexte
    end_if
return
' ------------------------------------------------------------------------------
actualiserTexte:
    off_change 30
    texte$ = text$(30) + chr$(13)
    afficherLesRendus()
    on_change 30,actualiserTexte
return
' ------------------------------------------------------------------------------
sub afficherLesRendus()
    dim_local y_position%, hauteur%
    
    y_position% = 100
    top 11,y_position%
    font_name 11,police$
    caption 11,"Taille 6 : " + texte$
    
    hauteur% = height(11)
    y_position% = y_position% + hauteur%
    top 12,y_position%
    font_name 12,police$
    caption 12,"Taille 7 : " + texte$

    hauteur% = height(12)
    y_position% = y_position% + hauteur%
    top 13,y_position%
    font_name 13,police$
    caption 13,"Taille 8 : " + texte$

    ' calcul position suivante
    hauteur% = height(13)
    y_position% = y_position% + hauteur%
    top 14,y_position%
    font_name 14,police$
    caption 14,"Taille 9 : " + texte$

    ' calcul position suivante
    hauteur% = height(14)
    y_position% = y_position% + hauteur%
    top 15,y_position%
    font_name 15,police$
    caption 15,"Taille 10 : " + texte$
  
    ' calcul position suivante
    hauteur% = height(15)
    y_position% = y_position% + hauteur%
    top 16,y_position%
    font_name 16,police$
    caption 16,"Taille 11 : " + texte$

    ' calcul position suivante
    hauteur% = height(16)
    y_position% = y_position% + hauteur%
    top 17,y_position%
    font_name 17,police$
    caption 17,"Taille 12 : " + texte$

    ' calcul position suivante
    hauteur% = height(17)
    y_position% = y_position% + hauteur%
    top 18,y_position%
    font_name 18,police$
    caption 18,"Taille 13 : " + texte$

    ' calcul position suivante
    hauteur% = height(18)
    y_position% = y_position% + hauteur%
    top 19,y_position%
    font_name 19,police$
    caption 19,"Taille 14 : " + texte$

    ' calcul position suivante
    hauteur% = height(19)
    y_position% = y_position% + hauteur%
    top 20,y_position%
    font_name 20,police$
    caption 20,"Taille 15 : " + texte$

    ' calcul position suivante
    hauteur% = height(20)
    y_position% = y_position% + hauteur%
    top 21,y_position%
    font_name 21,police$
    caption 21,"Taille 16 : " + texte$

end_sub
' ------------------------------------------------------------------------------
sub comboFont(x%,y%,l%,h%)
    ' comboFont(position en x, position en y, largeur combo, hauteur combo)

    dim_local i%, a$, trameRTF$

    edit 1
    left 1,x%
    top 1,y%
    width 1,l%
    font_size 1,h%
    cursor_point 1
    on_click 1,afficherListePolices

    memo_rich 2
    left 2,x%
    top 2,y%+height(1)
    width 2,l%
    height 2,250
    font_size 2,h%
    bar_vertical 2
    on_click 2,choisirPolice
    cursor_point 2
    hide 2
    
    dlist 3
    font_names_load 3

    panel 4
    top 4,y%+2
    left 4,x%+width(1)-19
    height 4,height(1)-4
    width 4,17
    
    picture 5
    parent 5,4
    top 5,0
    left 5,0
    width 5,width(4)
    height 5,height(4)
    cursor_point 5
    color 5,240,240,240
    2d_target_is 5
    2d_pen_color 227,227,227
    2d_line 0,0,0,height(5)
    2d_line 0,0,16,0
    2d_pen_color 105,105,105
    2d_line 16,0,16,height(4)
    2d_line 0,height(4)-1,width(4),height(4)-1
    2d_pen_color 255,255,255
    2d_line 1,1,1,height(4)-2
    2d_line 1,1,15,1
    2d_pen_color 160,160,160
    2d_line 15,1,15,height(4)-2
    2d_line 1,height(4)-2,16,height(4)-2
    2d_pen_color 0,0,0
    2d_line 5,int(height(4)/2)-1,12,int(height(4)/2)-1
    2d_line 6,int(height(4)/2),11,int(height(4)/2)
    2d_line 7,int(height(4)/2)+1,10,int(height(4)/2)+1
    2d_point 8,int(height(4)/2)+2
    on_click 5,afficherListePolices
    
    ' suppression des noms de polices indésirables
    dlist 6
    for i% = 1 to count(3)
        a$=item_read$(3,i%)
        if left$(a$,1) <> "@"
            item_add 6,a$
        end_if
    next i%
  
    ' remplir Memo_rich
    trameRTF$ = "{\rtf1\ansi\deff0{\fonttbl"
  
    for i% = 1 to count(6)
        a$ = item_read$(6,i%)
        trameRTF$ = trameRTF$ + "{\f" + str$(i%)+" "+ a$ + ";}"
    next i%

    trameRTF$ = trameRTF$ + "}"

    for i% = 1 to count(6)
       trameRTF$ = trameRTF$ + "\f" + str$(i%) + " " + item_read$(6,i%) + "\par"
    next i%

    trameRTF$ = trameRTF$ + "}"
    text 2,trameRTF$
    
    ' initaliser la police par défaut
    police$ = "Default"
    text 1,police$

    ' Caption du combo
    alpha 7
    left 7,x% + 5
    top 7,y% - 15
    caption 7,"Choix de la Police :"
    
end_sub
' ------------------------------------------------------------------------------
afficherListePolices:
    if hide(2) = 1
        show 2
        set_focus 2
    else
        hide 2
    end_if
return
' ------------------------------------------------------------------------------
choisirPolice:
    font_name 1,item_read$(2,caret_y_position(2))
    text 1,item_read$(2,caret_y_position(2))
    ajusterHauteur()
    hide 2
    police$ = text$(1)
    afficherLesRendus()  
return
' ------------------------------------------------------------------------------
sub ajusterHauteur()
    height 4,height(1)-4
    width 4,17
    
    width 5,width(4)
    height 5,height(4)
    color 5,240,240,240
    2d_target_is 5
    2d_pen_color 227,227,227
    2d_line 0,0,0,height(5)
    2d_line 0,0,16,0
    2d_pen_color 105,105,105
    2d_line 16,0,16,height(4)
    2d_line 0,height(4)-1,width(4),height(4)-1
    2d_pen_color 255,255,255
    2d_line 1,1,1,height(4)-2
    2d_line 1,1,15,1
    2d_pen_color 160,160,160
    2d_line 15,1,15,height(4)-2
    2d_line 1,height(4)-2,16,height(4)-2
    2d_pen_color 0,0,0
    2d_line 5,int(height(4)/2)-1,12,int(height(4)/2)-1
    2d_line 6,int(height(4)/2),11,int(height(4)/2)
    2d_line 7,int(height(4)/2)+1,10,int(height(4)/2)+1
    2d_point 8,int(height(4)/2)+2
end_sub
' ------------------------------------------------------------------------------
gras:
    if checked(32) = 1
        for i% = 11 to 21
            font_bold i%    
        next i%
    else
        for i% = 11 to 21
            font_bold_off i%    
        next i%
    end_if
return
' ------------------------------------------------------------------------------
italique:
    if checked(33) = 1
        for i% = 11 to 21
            font_italic i%    
        next i%
    else
        for i% = 11 to 21
            font_italic_off i%    
        next i%
    end_if
return
' ------------------------------------------------------------------------------
souligne:
    if checked(34) = 1
        for i% = 11 to 21
            font_underline i%    
        next i%
    else
        for i% = 11 to 21
            font_underline_off i%    
        next i%
    end_if
return
' ------------------------------------------------------------------------------
barre:
    if checked(35) = 1
        for i% = 11 to 21
            font_strike i%    
        next i%
    else
        for i% = 11 to 21
            font_strike_off i%    
        next i%
    end_if
return

Bonne programmation à tous !


Dernière édition par Marc le Jeu 13 Juin 2024 - 11:57, édité 1 fois
Revenir en haut Aller en bas
jjn4

jjn4


Nombre de messages : 2747
Date d'inscription : 13/09/2009

Tester rapidement les polices de caractères Empty
MessageSujet: Re: Tester rapidement les polices de caractères   Tester rapidement les polices de caractères EmptyMer 12 Juin 2024 - 18:22

Eh, bien !
Voilà un utilitaire toujours utile !
A mettre soigneusement de côté !
Merci Marc !
cheers
Revenir en haut Aller en bas
http://jjn4.e-monsite.com
Marc

Marc


Nombre de messages : 2466
Age : 63
Localisation : TOURS (37)
Date d'inscription : 17/03/2014

Tester rapidement les polices de caractères Empty
MessageSujet: Re: Tester rapidement les polices de caractères   Tester rapidement les polices de caractères EmptyJeu 13 Juin 2024 - 11:59

Merci JJN4 !

J'ai ajouté ci-dessus une deuxième capture d'écran avec le COMBO déroulé.

Bonne journée à tous !

Revenir en haut Aller en bas
Contenu sponsorisé





Tester rapidement les polices de caractères Empty
MessageSujet: Re: Tester rapidement les polices de caractères   Tester rapidement les polices de caractères Empty

Revenir en haut Aller en bas
 
Tester rapidement les polices de caractères
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Aperçu des polices de caractères
» Visualisation des polices de caractères installées
» Editeur de polices avec typographie
» Un petit comparateur de polices
» Polices fixes installées

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Vos sources, vos utilitaires à partager-
Sauter vers: