begin process at 2010 02 09 22:47:16
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Imprimante

 > MODULE D'IMPRESSION FORM, TEXTE, IMAGE

MODULE D'IMPRESSION FORM, TEXTE, IMAGE


 Information sur la source

Note :
8,33 / 10 - par 9 personnes
8,33 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Imprimante Niveau :Débutant Date de création :06/01/2004 Vu :13 903

Auteur : pcpunch

Ecrire un message privé
Site perso
Commentaire sur cette source (6)
Ajouter un commentaire et/ou une note

 Description

Slt je suis a fond dans l'impression lol, en fait c un petit module pour les newbees qui se demande comment imprimer du texte, une image, ou une form

Pour le texte avec la fonction imprimeTxt rien de bien fantastique mise a part qu'il faut pas a chaque fois se taper plusieurs lignes pour le placement (currentX,Y) ou pour les autres options!! ici tous en une ligne.

Pour les images la function imprime image à l'avantage d'imprimer directement l'image sans passez par un picturebox (Objet StdForm)

Pour la form!! la fonction ImprimeForm a l'avantage par rapport au PrintForm de pouvoir positioner la form a un endoirt precis et de choisir la hauteur et largeur de sortie!!!

ModeImpression c'est idem que Printer.scalemode=xxxxx
LanceImpression c'est simplement printer.endDoc

Source

  • 'Dans un module
  • Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
  • Const VK_SNAPSHOT As Byte = &H2C
  • Enum Enum_Param
  • Milimétres = 0
  • Centimétres
  • End Enum
  • Public Function ImprimeTXT(Texte As String, AxeX As Integer, AxeY As Integer, Optional Couleur As ColorConstants, Optional Police As String = "Arial", Optional Taille As Integer = 12, Optional Gras As Boolean = False, Optional Italique As Boolean = False)
  • Printer.CurrentX = AxeX
  • Printer.CurrentY = AxeY
  • Printer.Font = Police
  • Printer.FontSize = Taille
  • Printer.FontBold = Gras
  • Printer.FontItalic = Italique
  • Printer.ForeColor = Couleur
  • Printer.Print Texte
  • End Function
  • Public Sub LanceImpression()
  • Printer.EndDoc
  • End Sub
  • Public Function ImprimeImage(Source As String, AxeX As Integer, AxeY As Integer, Largeur As Integer, Hauteur As Integer)
  • Dim Im As StdPicture
  • Set Im = LoadPicture(Source)
  • Printer.PaintPicture Im, AxeX, AxeY, Largeur, Hauteur
  • End Function
  • Function ModeImpression(Value As Enum_Param)
  • If Value = 0 Then Mode% = vbMillimeters Else Mode% = vbCentimeters
  • Printer.ScaleMode = Mode%
  • End Function
  • Function ImprimeForm(Feuille As Form, AxeX As Integer, AxeY As Integer, Largeur As Integer, Hauteur As Integer)
  • Dim Im As StdPicture
  • Call keybd_event(VK_SNAPSHOT, 1&, 0&, 0&)
  • DoEvents
  • Set Im = Clipboard.GetData
  • Printer.PaintPicture Im, AxeX, AxeY, Largeur, Hauteur
  • End Function
  • '-------------------------------------------------------------------------------------
  • 'UTILISATION DES FONCTIONS DANS UNE FORM
  • 'determine les position en mm (Scalemode)
  • ModeImpression Milimétres
  • 'Impression de texte
  • 'imprimetxt [Texte,AxeX,AxeY,couleur,police,taille,gras,italique]
  • 'Texte : le texte a imprimer
  • 'AxeX : coordonée a partir de la gauche de la feuille
  • 'AxeY : Coordonée a partir de la droite de la feuille
  • '-[optionnel]-
  • 'couleur :couleur d'impression
  • 'police : police d 'impression
  • 'Taille: taille d'impression (size)
  • 'Gras : gras(bold)
  • 'Italique : Italique
  • ImprimeTXT "Times news roman 10,10 taille 16 gras italique", 10, 10, , "times", "16", True, True
  • ImprimeTXT "Times news roman 10,20 taille 12", 10, 20, , "arial", "12"
  • LanceImpression
  • 'IMPRESSION IMAGE
  • 'ImprimeImage [Source, AxeX, AxeY, Largeur, Hauteur]
  • 'Source : Chemin de l'image
  • 'AxeX : coordonée a partir de la gauche de la feuille
  • 'AxeY : Coordonée a partir de la droite de la feuille
  • 'Largeur : largeur d'impression de l'image
  • 'Hauteur : Hauteur d'impression de l'image
  • ImprimeImage "c:\\image.jpg", 10, 10, 100, 120
  • LanceImpression
  • 'IMPRESSION D'UNE FORM
  • 'ImprimeForm Feuille, AxeX, AxeY, Largeur, Hauteur
  • 'Feuille : La form a imprimer
  • 'AxeX : coordonée a partir de la gauche de la feuille d'imprimante
  • 'AxeY : Coordonée a partir de la droite de la feuille d'imprimante
  • 'Largeur : largeur d'impression de la form
  • 'Hauteur : Hauteur d'impression de la form
  • ImprimeForm Form1, 0, 0, 200, 280
  • LanceImpression
'Dans un module
Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
Const VK_SNAPSHOT As Byte = &H2C
Enum Enum_Param
Milimétres = 0
Centimétres
End Enum

Public Function ImprimeTXT(Texte As String, AxeX As Integer, AxeY As Integer, Optional Couleur As ColorConstants, Optional Police As String = "Arial", Optional Taille As Integer = 12, Optional Gras As Boolean = False, Optional Italique As Boolean = False)
Printer.CurrentX = AxeX
Printer.CurrentY = AxeY
Printer.Font = Police
Printer.FontSize = Taille
Printer.FontBold = Gras
Printer.FontItalic = Italique
Printer.ForeColor = Couleur
Printer.Print Texte
End Function

Public Sub LanceImpression()
Printer.EndDoc
End Sub

Public Function ImprimeImage(Source As String, AxeX As Integer, AxeY As Integer, Largeur As Integer, Hauteur As Integer)
Dim Im As StdPicture
Set Im = LoadPicture(Source)
Printer.PaintPicture Im, AxeX, AxeY, Largeur, Hauteur
End Function

Function ModeImpression(Value As Enum_Param)
If Value = 0 Then Mode% = vbMillimeters Else Mode% = vbCentimeters
Printer.ScaleMode = Mode%
End Function

Function ImprimeForm(Feuille As Form, AxeX As Integer, AxeY As Integer, Largeur As Integer, Hauteur As Integer)
Dim Im As StdPicture
Call keybd_event(VK_SNAPSHOT, 1&, 0&, 0&)
DoEvents
Set Im = Clipboard.GetData
Printer.PaintPicture Im, AxeX, AxeY, Largeur, Hauteur
End Function

'-------------------------------------------------------------------------------------
'UTILISATION DES FONCTIONS DANS UNE FORM

'determine les position en mm (Scalemode)
ModeImpression Milimétres

'Impression de texte
'imprimetxt [Texte,AxeX,AxeY,couleur,police,taille,gras,italique]
'Texte : le texte a imprimer
'AxeX : coordonée a partir de la gauche de la feuille
'AxeY : Coordonée a partir de la droite de la feuille
'-[optionnel]-
'couleur :couleur d'impression
'police : police d 'impression
'Taille: taille d'impression (size)
'Gras : gras(bold)
'Italique : Italique

ImprimeTXT "Times news roman 10,10 taille 16 gras italique", 10, 10, , "times", "16", True, True
ImprimeTXT "Times news roman 10,20 taille 12", 10, 20, , "arial", "12"
LanceImpression

'IMPRESSION IMAGE
'ImprimeImage [Source, AxeX, AxeY, Largeur, Hauteur]
'Source : Chemin de l'image
'AxeX : coordonée a partir de la gauche de la feuille
'AxeY : Coordonée a partir de la droite de la feuille
'Largeur : largeur d'impression de l'image
'Hauteur : Hauteur d'impression de l'image
ImprimeImage "c:\\image.jpg", 10, 10, 100, 120
LanceImpression


'IMPRESSION D'UNE FORM
'ImprimeForm Feuille, AxeX, AxeY, Largeur, Hauteur
'Feuille : La form a imprimer
'AxeX : coordonée a partir de la gauche de la feuille d'imprimante
'AxeY : Coordonée a partir de la droite de la feuille d'imprimante
'Largeur : largeur d'impression de la form
'Hauteur : Hauteur d'impression de la form
ImprimeForm Form1, 0, 0, 200, 280
LanceImpression

 Conclusion

Ps: cette source n'est pas destiné au initié de vb, simplement au debutant qui veulent se familiariser avec l'impression en vb, ou trouver une solution simple pour l'impression!!!!


 Sources du même auteur

Source avec Zip Source avec une capture SIMON EN VB
Source avec Zip Source avec une capture GRAVURE CD AVEC NEROCMD DEPUIS APPLI VB
Source avec Zip Source avec une capture RADIO SUR INTERNET
Source avec Zip Source avec une capture AFFICHE DES TITULAIRES FOOTBALL (MCFOOTMANAGER)
Source avec Zip Source avec une capture IMPRESSION LABEL DVD

 Sources de la même categorie

Source avec Zip Source .NET (Dotnet) IMPRESSION FACILE EN ÉVITANT LES BUGS DU FRAMEWORK par circular
Source avec Zip Source .NET (Dotnet) CLASSE POUR AJOUTER/CONNECTER/DECONNECTER UNE IMPRIMANTE RÉS... par radcur
Source avec Zip Source avec une capture IMPRESSION AU FIL DE L'EAU VERS IMPRIMANTE MATRICIELLE par rimas10
Source avec Zip Source avec une capture IMPRIMER CODE BARE par StetechCove
Source avec Zip Source avec une capture Source .NET (Dotnet) IMPRESSION D'UNE LISTVIEW EN GÉNÉRANT UN FICHIER EXCEL par fauve

Commentaires et avis

Commentaire de econs le 12/01/2006 13:11:07 administrateur CS

Juste une question : pourquoi passer Feuille en paramètre dans la fonction ImprimeForm si tu n'utilises pas cette variable ?

Commentaire de anton8338 le 19/01/2006 15:31:51

ca marche pas ton truc ma form ne veut ni ce mettre dans un .txt ni s imprimer il me fait juste des .mdi où y a rien marqué dessus alors que quand je faisais avec PrintForm dans le .mdi il y avait ma form dessus mais ma form est trop grande pour tenir sur la page .mdi

Commentaire de Kite37 le 25/06/2006 10:52:18

humm en Vb.Net sa donne quoi? non car loadpicture n'existe plus, et StdPicture non plus aparrament ..

Commentaire de AsselusBorealiss le 05/10/2006 18:47:52

salut a tous
chez moi j'ai bien le fichier sur c:\test.jpg
et quand je lance le prog il imprime une page blanche

si tu a une soluce

merci

Commentaire de gloupi le 02/05/2007 16:20:49

Et bien moi.. Je dis merci ! ça m'a bien servi ! :p

Commentaire de orkedia le 21/01/2008 16:26:15

je veut un code de l'impression d'un form , fuielle qu'est simple et qui donne un resultat rapide

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,123 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales