Donnez votre avis..
INTERFACE GAMBAS
LOGICIELS GAMBAS 3
TUTORIELS
=Bibliothèque
|
Impression avec Gambas - imprimer depuis une textedit
Imprimer à partir d'une TextEdit
Il existe une solution simple pour imprimer une TextEdit. Le texte étant du code HTML, il suffit de copier le fichier dans un contrôle WebBrowser et de mettre une commande d'impression Javascript.
Dans votre projet, ajouter:
Une TextArea Un WebBrowser (vous devez avoir le composant gb.qt.kde.html coché dans votre projet).
Ces deux objets ont la propriété Visible à FALSE et la propriété Javascript du WebBrowser à TRUE.
Créer votre bouton d'impression et ajouter ceci:
TextArea1.Clear fichierimprimer = Application.Path & "/temp.print" IF Exist(fichierimprimer) THEN KILL fichierimprimer TextArea1.Text = TextEdit1.Text changercode(TextArea1.Text) TextArea1.Text = Textcode TextArea1.Text = Replace(TextArea1.Text, "
hFile = OPEN fichierimprimer FOR WRITE CREATE PRINT #hFile, TextArea1.Text CLOSE #hFile webPrint.Path = Trim(fichierimprimer)
Explications:
Nous effaçons le contenu de la TextArea:
TextArea1.Clear
Nous nommons un fichier qui sera imprimé grâce au contrôle WebBrowser:
fichierimprimer = Application.Path & "/temp.print"
S'il existe, nous l'effaçons:
IF Exist(fichierimprimer) THEN KILL fichierimprimer Nous copions le contenu de la TextEdit dans la TextArea:
TextArea1.Text = TextEdit1.Text
Nous transformons tous les caractères particuliers ou avec accent (Restons Français) en équivalents html:
changercode(TextArea1.Text) TextArea1.Text = Textcode
Nous écrivons le code d'impression Javascript: body onload='window.print()'
TextArea1.Text = Replace(TextArea1.Text, "
Nous créons le fichier à imprimer:
hFile = OPEN fichierimprimer FOR WRITE CREATE PRINT #hFile, TextArea1.Text CLOSE #hFile
Nous importons le fichier dans le WebBrowser qui déclenche automatiquement l'impression:
webPrint.Path = Trim(fichierimprimer)
Il ne faut pas oublier de mettre nos variables au début de notre commande ou au début de notre Form:
fichierimprimer AS String hfile AS File
Et enfin inclure dans notre Form.Class, la fonction changercode():
PRIVATE SUB changercode(mettre AS String)
'Les A '------- mettre = Replace(mettre, "À", "À") mettre = Replace(mettre, "Á", "Á") mettre = Replace(mettre, "Â", "Â") mettre = Replace(mettre, "Ã", "Ã") mettre = Replace(mettre, "Ä", "Ä") mettre = Replace(mettre, "Å", "Å") mettre = Replace(mettre, "Æ", "Æ") mettre = Replace(mettre, "à", "à") mettre = Replace(mettre, "á", "á") mettre = Replace(mettre, "â", "â") mettre = Replace(mettre, "ã", "ã") mettre = Replace(mettre, "æ", "æ")
'Les C '------- mettre = Replace(mettre, "¢", "¢") mettre = Replace(mettre, "Ç", "Ç") mettre = Replace(mettre, "ç", "ç")
'Les E '------- mettre = Replace(mettre, "È", "È") mettre = Replace(mettre, "É", "É") mettre = Replace(mettre, "Ê", "Ê") mettre = Replace(mettre, "Ë", "Ë") mettre = Replace(mettre, "è", "è") mettre = Replace(mettre, "é", "é") mettre = Replace(mettre, "ê", "ê") mettre = Replace(mettre, "ë", "ë")
'Les I '------ mettre = Replace(mettre, "Ì", "Ì") mettre = Replace(mettre, "Í", "Í") mettre = Replace(mettre, "Î", "Î") mettre = Replace(mettre, "Ï", "Ï") mettre = Replace(mettre, "ì", "ì") mettre = Replace(mettre, "í", "í") mettre = Replace(mettre, "î", "î") mettre = Replace(mettre, "ï", "ï")
'Les O '------ mettre = Replace(mettre, "Ò", "Ò") mettre = Replace(mettre, "Ó", "Ó") mettre = Replace(mettre, "Ô", "Ô") mettre = Replace(mettre, "Õ", "Õ") mettre = Replace(mettre, "Ö", "Ö") mettre = Replace(mettre, "Ø", "Ø") mettre = Replace(mettre, "ò", "ò") mettre = Replace(mettre, "ó", "ó") mettre = Replace(mettre, "ô", "ô") mettre = Replace(mettre, "õ", "õ") mettre = Replace(mettre, "ö", "ö") mettre = Replace(mettre, "ø", "ø")
'Les U '------- mettre = Replace(mettre, "Ù", "Ù") mettre = Replace(mettre, "Ú", "Ú") mettre = Replace(mettre, "Û", "Û") mettre = Replace(mettre, "Ü", "Ü") mettre = Replace(mettre, "ù", "ù") mettre = Replace(mettre, "ú", "ú") mettre = Replace(mettre, "û", "û") mettre = Replace(mettre, "ü", "ü")
'Les fractions '---------------- mettre = Replace(mettre, "¼", "¼") mettre = Replace(mettre, "½", "½") mettre = Replace(mettre, "¾", "¾")
'TM, COPYRIGHT, REG '-------------------------- mettre = Replace(mettre, "™", "™") mettre = Replace(mettre, "©", "©") mettre = Replace(mettre, "®", "®")
'Divers '-------- mettre = Replace(mettre, "ƒ", "&nfnof;") mettre = Replace(mettre, "… ", "…") mettre = Replace(mettre, "† ", "†") mettre = Replace(mettre, "‡", "‡") mettre = Replace(mettre, "ˆ", "ˆ") mettre = Replace(mettre, "‰", "‰") mettre = Replace(mettre, "Š", "Š") mettre = Replace(mettre, "š", "š") mettre = Replace(mettre, "Œ", "Œ") mettre = Replace(mettre, "œ", "œ") mettre = Replace(mettre, "•", "•") mettre = Replace(mettre, "–", "–") mettre = Replace(mettre, "˜", "˜") mettre = Replace(mettre, "¡", "¡") mettre = Replace(mettre, "£", "£") mettre = Replace(mettre, "¤", "¤") mettre = Replace(mettre, "¥", "¥") mettre = Replace(mettre, "¦", "¦") mettre = Replace(mettre, "§", "§") mettre = Replace(mettre, "¨", "¨") mettre = Replace(mettre, "ª", "ª") mettre = Replace(mettre, "¬", "¬") mettre = Replace(mettre, "¯", "¯") mettre = Replace(mettre, "°", "°") mettre = Replace(mettre, "±", "±") mettre = Replace(mettre, "¹", "¹") mettre = Replace(mettre, "²", "²") mettre = Replace(mettre, "³", "³") mettre = Replace(mettre, "´", "´") mettre = Replace(mettre, "µ", "µ") mettre = Replace(mettre, "·", "·") mettre = Replace(mettre, "¸", "¸") mettre = Replace(mettre, "º", "º") mettre = Replace(mettre, "»", "»") mettre = Replace(mettre, "¿", "¿")
Textcode = mettre
END
Si vous avez bien tout copié, vous devez avoir un écran d'impression lorsque vous cliquez sur votre bouton Imprimer:
Pour imprimer en couleur et imprimer les images, configurez ici:
Vous avez également la possibilité de créer directement un fichier PDF.
Fait le 25/09/09 par taoteblues Date de création : 11/10/2009 @ 15:03 Réactions à cet article
| ACCES RAPIDE
RECHERCHE
LES INSTRUCTIONS
LES COMPOSANTS
Divers
INSTRUCTIONS
Où ça, qui ça?
VISITES
visiteurs visiteurs en ligne ARCHIVES GAMBAS 1/2
|