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.
1.92.du 25 Février 2013 - extension de PrinterFunction Emptypar Pedro Aujourd'hui à 10:37

» Un autre pense-bête...
1.92.du 25 Février 2013 - extension de PrinterFunction Emptypar Froggy One Jeu 21 Nov 2024 - 15:54

» Récupération du contenu d'une page html.
1.92.du 25 Février 2013 - extension de PrinterFunction Emptypar Pedro Sam 16 Nov 2024 - 14:04

» Décompilation
1.92.du 25 Février 2013 - extension de PrinterFunction Emptypar JL35 Mar 12 Nov 2024 - 19:57

» Un album photos comme du temps des grands-mères
1.92.du 25 Février 2013 - extension de PrinterFunction Emptypar jjn4 Mar 12 Nov 2024 - 17:23

» traitement d'une feuille excel
1.92.du 25 Février 2013 - extension de PrinterFunction Emptypar jjn4 Jeu 7 Nov 2024 - 3:52

» Aide-mémoire mensuel
1.92.du 25 Février 2013 - extension de PrinterFunction Emptypar jjn4 Lun 4 Nov 2024 - 18:56

» Des incomprèhension avec Timer
1.92.du 25 Février 2013 - extension de PrinterFunction Emptypar Klaus Mer 30 Oct 2024 - 18:26

» KGF_dll - nouvelles versions
1.92.du 25 Février 2013 - extension de PrinterFunction Emptypar Klaus Mar 29 Oct 2024 - 17:58

» instructions panoramic
1.92.du 25 Février 2013 - extension de PrinterFunction Emptypar maelilou Lun 28 Oct 2024 - 19:51

» Figures fractales
1.92.du 25 Février 2013 - extension de PrinterFunction Emptypar Marc Ven 25 Oct 2024 - 12:18

» Panoramic et Scanette
1.92.du 25 Février 2013 - extension de PrinterFunction Emptypar Yannick Mer 25 Sep 2024 - 22:16

» Editeur d étiquette avec QR évolutif
1.92.du 25 Février 2013 - extension de PrinterFunction Emptypar JL35 Lun 23 Sep 2024 - 22:40

» BUG QR Code DelphiZXingQRCode
1.92.du 25 Février 2013 - extension de PrinterFunction Emptypar Yannick Dim 22 Sep 2024 - 11:40

» fichier.exe
1.92.du 25 Février 2013 - extension de PrinterFunction 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
-25%
Le deal à ne pas rater :
PC Portable Gamer 16,1” HP Victus 16 – 16 Go /512 Go
749.99 € 999.99 €
Voir le deal

 

 1.92.du 25 Février 2013 - extension de PrinterFunction

Aller en bas 
AuteurMessage
Klaus

Klaus


Nombre de messages : 12331
Age : 75
Localisation : Ile de France
Date d'inscription : 29/12/2009

1.92.du 25 Février 2013 - extension de PrinterFunction Empty
MessageSujet: 1.92.du 25 Février 2013 - extension de PrinterFunction   1.92.du 25 Février 2013 - extension de PrinterFunction EmptyLun 25 Fév 2013 - 15:18

Nouvelle version:
KGF.dll V1.92 du 25 Février 2013

Cette version ajoute le code 11 à PrinterFunction:
11 = imprimer le texte txt$ dans un rectangle, avec renvoi à la ligne
opt1% = adr(txt$)
opt2% = len(txt$)
opt3% = (largeur*32768 + hauteur)*2 + option de fond
option de fond
0 = fond opaque
1 = fond transparent
Ceci marche comme le code 10, sauf que le code 10 tronque tout ce qui dépasse, à droite et en bas.

Et voici le programme de démo adapté à cela:
Code:
' demo_PrintTextInRectangle.bas

label imprimer

dim txt$
dlist 1

option 11 : top 11,20 : left 11,20 : width 11,400
  caption 11,"Le texte à imprimer est dans un DLIST/LIST/MEMO"
option 12 : top 12,50 : left 12,20 : width 12,400
  caption 12,"Le texte à imprimer est dans un string, imprimer ligne par ligne"
option 13 : top 13,80 : left 13,20 : width 13,400
  caption 13,"Le texte à imprimer est dans string, imprimer avec renvoi à la ligne"
button 14 : top 14,110 : left 14,100 : caption 14,"Imprimer"
  on_click 14,imprimer
mark_on 11

KGF_initialize("KGF.dll")

end

imprimer:
SelectWindowsPrinter()
PrinterManagerStartDoc()

if checked(11)=1
  creer("a")
  PrinterFunctionStyle("Arial",10,0,0,0,0,0,0,0)
  PrintTextInRectangleFromDList(1,10,10,750,640)
  creer("b")
  PrinterFunctionStyle("Arial",10,255,0,0,0,0,0,0)
  PrintTextInRectangleFromDList(1,1650,250,750,800)
  creer("c")
  PrinterFunctionStyle("Arial",10,0,255,0,0,0,0,0)
  PrintTextInRectangleFromDList(1,820,380,750,1500)
  creer("d")
  PrinterFunctionStyle("Arial",10,0,0,255,0,0,0,0)
  PrintTextInRectangleFromDList(1,450,410,750,405)
else
  if checked(12)=1
    creer("a")
    PrinterFunctionStyle("Arial",10,0,0,0,0,0,0,0)
    PrintTextInRectangleFromString(txt$,10,10,750,640)
    creer("b")
    PrinterFunctionStyle("Arial",10,255,0,0,0,0,0,0)
    PrintTextInRectangleFromString(txt$,1650,250,750,800)
    creer("c")
    PrinterFunctionStyle("Arial",10,0,255,0,0,0,0,0)
    PrintTextInRectangleFromString(txt$,820,380,750,1500)
    creer("d")
    PrinterFunctionStyle("Arial",10,0,0,255,0,0,0,0)
    PrintTextInRectangleFromString(txt$,450,410,750,405)
  else
    creer("a")
    PrinterFunctionStyle("Arial",10,0,0,0,0,0,0,0)
    PrintTextInRectangleFromStringWrap(txt$,10,10,750,640)
    creer("b")
    PrinterFunctionStyle("Arial",10,255,0,0,0,0,0,0)
    PrintTextInRectangleFromStringWrap(txt$,1650,250,750,800)
    creer("c")
    PrinterFunctionStyle("Arial",10,0,255,0,0,0,0,0)
    PrintTextInRectangleFromStringWrap(txt$,820,380,750,1500)
    creer("d")
    PrinterFunctionStyle("Arial",10,0,0,255,0,0,0,0)
    PrintTextInRectangleFromStringWrap(txt$,450,410,750,405)
  end_if
end_if

PrinterManagerEndDoc()

message "Terminé."
return

sub creer(x$)
  dim_local i%, s$, s1$
  s$ = ""
  txt$ = ""
  clear 1
  if x$="c"
    s$ = "Gallia est omnis divisa in partes tres, quarum unam "
    item_add 1,s$
    s1$ = "incolunt Belgae, aliam Aquitani, tertiam qui ipsorum "
    item_add 1,s1$
    s$ = s$ + s1$
    s1$ = "lingua Celtae, nostra Galli appellantur. Hi omnes "
    item_add 1,s1$
    s$ = s$ + s1$
    s1$ = "lingua, institutis, legibus inter se differunt. Gallos "
    item_add 1,s1$
    s$ = s$ + s1$
    s1$ = "ab Aquitanis Garumna flumen, a Belgis Matrona et Sequana "
    item_add 1,s1$
    s$ = s$ + s1$
    s1$ = "dividit. Horum omnium fortissimi sunt Belgae, propterea "
    item_add 1,s1$
    s$ = s$ + s1$
    s1$ = "quod a cultu atque humanitate provinciae longissime absunt, "
    item_add 1,s1$
    s$ = s$ + s1$
    s1$ = "minimeque ad eos mercatores saepe commeant atque ea quae "
    item_add 1,s1$
    s$ = s$ + s1$
    s1$ = "ad effeminandos animos pertinent important, proximique "
    item_add 1,s1$
    s$ = s$ + s1$
    s1$ = "sunt Germanis, qui trans Rhenum incolunt, quibuscum "
    item_add 1,s1$
    s$ = s$ + s1$
    s1$ = "continenter bellum gerunt. Qua de causa Helvetii quoque "
    item_add 1,s1$
    s$ = s$ + s1$
    s1$ = "reliquos Gallos virtute praecedunt, quod fere cotidianis "
    item_add 1,s1$
    s$ = s$ + s1$
    s1$ = "proeliis cum Germanis contendunt, cum aut suis finibus "
    item_add 1,s1$
    s$ = s$ + s1$
    s1$ = "eos prohibent aut ipsi in eorum finibus bellum gerunt. "
    item_add 1,s1$
    s$ = s$ + s1$
    s1$ = "Eorum una, pars, quam Gallos obtinere dictum est, initium "
    item_add 1,s1$
    s$ = s$ + s1$
    s1$ = "capit a flumine Rhodano, continetur Garumna flumine, "
    item_add 1,s1$
    s$ = s$ + s1$
    s1$ = "Oceano, finibus Belgarum, attingit etiam ab Sequanis et "
    item_add 1,s1$
    s$ = s$ + s1$
    s1$ = "Helvetiis flumen Rhenum, vergit ad septentriones. Belgae "
    item_add 1,s1$
    s$ = s$ + s1$
    s1$ = "ab extremis Galliae finibus oriuntur, pertinent ad "
    item_add 1,s1$
    s$ = s$ + s1$
    s1$ = "inferiorem partem fluminis Rheni, spectant in septentrionem "
    item_add 1,s1$
    s$ = s$ + s1$
    s1$ = "et orientem solem. Aquitania a Garumna flumine ad Pyrenaeos "
    item_add 1,s1$
    s$ = s$ + s1$
    s1$ = "montes et eam partem Oceani quae est ad Hispaniam pertinet; "
    item_add 1,s1$
    s$ = s$ + s1$
    s1$ = "spectat inter occasum solis et septentriones."
    item_add 1,s1$
    s$ = s$ + s1$
    txt$ = s$
  else
    for i%=1 to 20
      s$ = s$ + x$ + str$(i%) + " ": ' string$(5,x$)
      item_add 1,s$
      txt$ = txt$ + s$ + chr$(13) + chr$(10)
    next i%
  end_if
end_sub

#INCLUDE "KGF_SUB.bas"

J'imprime toujours les 4 rectangles de texte. Mais chaque rectangle a maintenant une autre couleur de texte, et le rectangle 3 (prévu pour la lettre c) a été remplacé par le texte complet du tome 1 "De Bello Gallico" de Cesar. On y voit parfaitement le traitement de troncature (clipping) et renvoi à la ligne (word-wrap).

Et l'exemple suivant montre l'écriture dans un rectangle avec renvoi à la ligne dans les 4 cas, avec le même texte en latin pour chaque rectangle, mais avec des couleurs, positions et dimensions différentes. Le texte vert montre le texte en sa totalité, les autres sont tronqués par les dimensions des rectangles:
Code:
' demo_PrintTextInRectangle_WordWrap.bas

label imprimer

dim txt$

button 14 : top 14,110 : left 14,100 : caption 14,"Imprimer"
  on_click 14,imprimer

KGF_initialize("KGF.dll")
creer()

end

imprimer:
SelectWindowsPrinter()
PrinterManagerStartDoc()

    PrinterFunctionStyle("Arial",10,0,0,0,0,0,0,0)
    PrintTextInRectangleFromStringWrap(txt$,10,10,750,640)
    PrinterFunctionStyle("Arial",10,255,0,0,0,0,0,0)
    PrintTextInRectangleFromStringWrap(txt$,2400,250,1200,800)
    PrinterFunctionStyle("Arial",10,0,255,0,0,0,0,0)
    PrintTextInRectangleFromStringWrap(txt$,1200,380,2300,2500)
    PrinterFunctionStyle("Arial",10,0,0,255,0,0,0,0)
    PrintTextInRectangleFromStringWrap(txt$,450,410,750,405)

PrinterManagerEndDoc()

message "Terminé."
return

sub creer()
  dim_local s$, s1$
  s$ = ""
  txt$ = ""
    s$ = "Gallia est omnis divisa in partes tres, quarum unam "
    s1$ = "incolunt Belgae, aliam Aquitani, tertiam qui ipsorum "
    s$ = s$ + s1$
    s1$ = "lingua Celtae, nostra Galli appellantur. Hi omnes "
    s$ = s$ + s1$
    s1$ = "lingua, institutis, legibus inter se differunt. Gallos "
    s$ = s$ + s1$
    s1$ = "ab Aquitanis Garumna flumen, a Belgis Matrona et Sequana "
    s$ = s$ + s1$
    s1$ = "dividit. Horum omnium fortissimi sunt Belgae, propterea "
    s$ = s$ + s1$
    s1$ = "quod a cultu atque humanitate provinciae longissime absunt, "
    s$ = s$ + s1$
    s1$ = "minimeque ad eos mercatores saepe commeant atque ea quae "
    s$ = s$ + s1$
    s1$ = "ad effeminandos animos pertinent important, proximique "
    s$ = s$ + s1$
    s1$ = "sunt Germanis, qui trans Rhenum incolunt, quibuscum "
    s$ = s$ + s1$
    s1$ = "continenter bellum gerunt. Qua de causa Helvetii quoque "
    s$ = s$ + s1$
    s1$ = "reliquos Gallos virtute praecedunt, quod fere cotidianis "
    s$ = s$ + s1$
    s1$ = "proeliis cum Germanis contendunt, cum aut suis finibus "
    s$ = s$ + s1$
    s1$ = "eos prohibent aut ipsi in eorum finibus bellum gerunt. "
    s$ = s$ + s1$
    s1$ = "Eorum una, pars, quam Gallos obtinere dictum est, initium "
    s$ = s$ + s1$
    s1$ = "capit a flumine Rhodano, continetur Garumna flumine, "
    s$ = s$ + s1$
    s1$ = "Oceano, finibus Belgarum, attingit etiam ab Sequanis et "
    s$ = s$ + s1$
    s1$ = "Helvetiis flumen Rhenum, vergit ad septentriones. Belgae "
    s$ = s$ + s1$
    s1$ = "ab extremis Galliae finibus oriuntur, pertinent ad "
    s$ = s$ + s1$
    s1$ = "inferiorem partem fluminis Rheni, spectant in septentrionem "
    s$ = s$ + s1$
    s1$ = "et orientem solem. Aquitania a Garumna flumine ad Pyrenaeos "
    s$ = s$ + s1$
    s1$ = "montes et eam partem Oceani quae est ad Hispaniam pertinet; "
    s$ = s$ + s1$
    s1$ = "spectat inter occasum solis et septentriones."
    s$ = s$ + s1$
    txt$ = s$
end_sub

#INCLUDE "KGF_SUB.bas"
Revenir en haut Aller en bas
http://klauspanoramic.comxa.com/index.html
 
1.92.du 25 Février 2013 - extension de PrinterFunction
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» 1.91 du 24 Février 2013: extension de PrinterFunction
» 2.07 du 16 Mars 2013: extension des possibilités pour Excel
» 1.94 du 26 Février 2013: ajout ReplaceStringInBinaryFile
» 1.95 du 27 Février 2013: fonction ReadBlockFromBinaryFile...
» 1.96 du 27 Février 2013: ajout ReadBlockFromBinaryFile

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: Activité des sites créés par les Panoramiciens. :: Le site de Klaus-
Sauter vers: