4/5 (6 avis)
Snippet vu 18 610 fois - Téléchargée 29 fois
'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
21 janv. 2008 à 16:26
2 mai 2007 à 16:20
5 oct. 2006 à 18:47
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
25 juin 2006 à 10:52
19 janv. 2006 à 15:31
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.