1 | |
Auteur | Messages |
---|---|
Jappy49 | #1 Posté le 27/10/2012 à 16:17:40 |
Bonjour à tous! Après beaucoup de recherches et d'essais avec des exemples de Gambas 3.3.90 version svn à jour, je viens demander de l'aide sur ce forum. Avec Gambas 2.24, je n'ai pas de problèmes d'impression. "Imprimer etiquettes casier sur 3 colonnes et 9 étiquettes format 30X70 mm sur A4" Voici la version GB3 qui ne fonctionne pas. Elle m'imprime une page vide. : Public Sub Button2_Click() Dim $hImage As Image Dim hReport As New Report 'Nouvelle instance de report Dim hRepImg As New ReportImage(hReport) 'On ajoute une image hreport.Padding = ReportPadding["2 cm"] 'Je met un espace entre les éléments du conteneur (report) hReport.Spacing = "1 cm" $hImage = hImage 'ici l'image créée avec les données d'une base SQL misent en forme hRepImg.Expand = True 'Je dit as reportimage de prendre toute la place restante sur la page hRepImg.Image = $hImage 'J 'indique a reportimage que je ne veux que l'image soit étirée mais pas déformée hRepImg.Stretch = Report.Proportional 'on demande au report d'afficher le résultat dans la boite de prévisualisation/impression hReport.Preview End Avec Gambas 2.24 voici une partie du programme : Public Sub Imprimer() 'Imprimer etiquettes casier sur 3 colonnes et 9 étiquettes format 30X70 mm sur A4 hImage = New Image(800, 600, Color.White) xp1 = 145 + valpos2 y1 = 59 + valpos1 total = 0 ' Creation de l'image Mdat = "select article,titre,auteur,editions,best_seller FROM selautres where best_seller = 1 order by article" If Printer1.Configure() Then Return 'MonImprimante = New Printer As "MonImprimante" Paint.Begin(Printer1) With mglobalrequetes .rs = .db.exec(Mdat) If .rs.count <> 0 Then i = 0 iLen = -1 While i < .rs.count 'print all data here iLen = iLen + 1 content2(CStr(.rs!article), CStr(.rs!titre), CStr(.rs!auteur), CStr(.rs!editions)) NewFont.Bold = False NewFont.Size = 10 NewFont.Name = "Sans" Paint.Font = NewFont Paint.Text(Trim(vard[lignEdit, 1]), xp1, y1 + 1, 50, 500, Align.Left) NewFont.Bold = False NewFont.Size = 10 NewFont.Name = "Sans" Paint.Font = NewFont Paint.Text(Trim(vard[lignEdit, 2]), xp1, y1 + 120, 40, 600, Align.Left) NewFont.Size = 5 Paint.Font = NewFont Paint.Text(Trim(vard[lignEdit, 4]), xp1, y1 + 250, 10, 820, Align.Left) If lignEdit = 2 Then y1 = y1 + 709 '=30 mm total = total + 1 Endif If total = 9 Then MonImprimante.NewPage NewFont.Size = 10 NewFont.Name = "Sans" Paint.Font = NewFont hImage = New Image(800, 600, Color.White) xp1 = 145 + valpos2 y1 = 65 + valpos1 total = 0 Endif i = i + 1 .rs.MoveNext Wend 'show the report ! Endif End With Paint.End End Merci par avance de vos suggestions de Gambasiens avertis! Bonne fin de semaine. OpenSuse 11.4 (Celadon) Gnome 2.32.1 Jappy49 | |
gambix | #2 Posté le 29/10/2012 à 22:43:05 |
Faire simple ! | Je te répond demain... En faite tu devrais même utiliser le chargement dynamique. Moins de texte dans une signature c'est agrandir son espace. |
gambix | #3 Posté le 30/10/2012 à 17:09:24 |
Faire simple ! | Dit moi tu peux me mailer un pdf avec ce que tu optenais en gb2 ? (gambasDOTfrATgmailDOTcom) Moins de texte dans une signature c'est agrandir son espace. |
gambix | #4 Posté le 30/10/2012 à 17:30:23 |
Faire simple ! | ça sert a quoi content 2 ??? a quoi sert hImage ? Moins de texte dans une signature c'est agrandir son espace. |
gambix | #5 Posté le 30/10/2012 à 17:32:30 |
Faire simple ! | il me faudrait les marge et l'espace entre etiquette aussi. de plus c'est quoi le contenu ?? Moins de texte dans une signature c'est agrandir son espace. |
Jappy49 | #6 Posté le 30/10/2012 à 19:41:45 |
Bonsoir, Question: ça sert a quoi content 2 ??? a quoi sert hImage ? content2 est la fonction qui extrait les données d'une base MysQL. hImage c'est : hImage = New Image(800, 600, Color.White) '(DrawingArea1) Le format est A4 3 colonnes de 7 cm et 9 étiquettes par colonne. Le contenu est 3 ou 4 lignes de texte. Je vous envoie une copie d'écran, car je n'ai pas de bon résultat en scannant et enregistré en pdf. Merci pour tout. Jappy49 | |
Jappy49 | #7 Posté le 31/10/2012 à 18:09:50 |
Bonjour à tous, La question reste ouverte pour le moment. Je vais attendre qu'il y ai plus d'exemples pour continuer avec Gambas 3. Merci pour ceux qui travaillent au développement de cet outil. Jappy49 | |
gambix | #8 Posté le 31/10/2012 à 18:16:40 |
Faire simple ! | IL n'y aura pas de meilleur réponse que la mienne ... j'en ai bien peur. Néanmoins il reste aussi la possibilité d'utiliser directement l'imprimante via la classe paint. Mais la encore attention il s'agit de dessin vectoriel. Moins de texte dans une signature c'est agrandir son espace. |
1 |