Etiketten drucken mit VB.Net
Hallo Administratorengemeinschaft.
Ich arbeite zurzeit an einem Lagerverwalrungsprogramm die mir einen Artikel mit Barcode auf eine Etikette drucken soll. Als Drucker verwende ich ein Brother P-Touch 2700 über eine Netzwerkfreigabe.
Mein Problem dabei ist, dass die Etikette zwar gedruckt wird, aber nicht an der angegebenen Länge (PaperSize) geschnitten wird. Sie werden immer auf die Länge die in den Druckerstandardeinstellungen eingestellt sind geschnitten.
Da ich in einem Arbeitsgang aber verschiedene Etikettenlängen drucken möchte, will ich das aus dem Programm steuern.
Die ausgabe mit printDialog1 zeigt mir die korrekte Länge.
Gibt es dazu eine möglichkeit?
Hier meine Code geschrieben in VB 2008 Express:
Gruss
Ich arbeite zurzeit an einem Lagerverwalrungsprogramm die mir einen Artikel mit Barcode auf eine Etikette drucken soll. Als Drucker verwende ich ein Brother P-Touch 2700 über eine Netzwerkfreigabe.
Mein Problem dabei ist, dass die Etikette zwar gedruckt wird, aber nicht an der angegebenen Länge (PaperSize) geschnitten wird. Sie werden immer auf die Länge die in den Druckerstandardeinstellungen eingestellt sind geschnitten.
Da ich in einem Arbeitsgang aber verschiedene Etikettenlängen drucken möchte, will ich das aus dem Programm steuern.
Die ausgabe mit printDialog1 zeigt mir die korrekte Länge.
Gibt es dazu eine möglichkeit?
Hier meine Code geschrieben in VB 2008 Express:
Private WithEvents doc As New PrintDocument()
Private Sub PrintEtikette()
Dim printDialog1 As New PrintDialog ' This is the dialog to setting the printer options
Try
Dim customsize As New PaperSize("customsize", Math.Round(EtTyp(Etikettenauswahl).EtBreite * 3.935, 0), _
Math.Round(EtTyp(Etikettenauswahl).EtLaenge * 3.935, 0))
doc.DefaultPageSettings.PaperSize = customsize
doc.DocumentName = "Lagerverwaltungs Etikette"
printDialog1.Document = doc
'Test
Dim dlg As New PrintPreviewDialog()
dlg.Document = doc
dlg.AutoSizeMode = Windows.Forms.AutoSizeMode.GrowOnly
dlg.ShowDialog()
'If printDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then
'doc.Print()
'End If
Catch ex As Exception
FormDebug.fout(ex.Message)
End Try
End Sub
Private Sub Druck(ByVal sender As Object, ByVal e As PrintPageEventArgs) Handles doc.PrintPage
Dim TmpBarcodeImage As System.Drawing.Bitmap
Dim etw = Etikettenauswahl
Try
Dim g As Graphics = e.Graphics
g.PageUnit = GraphicsUnit.Millimeter
If EtTyp(etw).ArtNrGrEnabled Then g.DrawString(txtArtNrGr.Text, New Font("Arial", EtTyp(etw).ArtNrGrSchriftGr, FontStyle.Regular), Brushes.Black, EtTyp(etw).ArtNrGrX, EtTyp(etw).ArtNrGrY)
If EtTyp(etw).BauteilEnabled Then g.DrawString(cbBauteil.SelectedValue.ToString, New Font("Arial", EtTyp(etw).BauteilSchriftGr, FontStyle.Regular), Brushes.Black, EtTyp(etw).BauteilX, EtTyp(etw).BauteilY)
If EtTyp(etw).ArtBezeichnungEnabled Then g.DrawString(txtArtBezeichnung.Text, New Font("Arial", EtTyp(etw).ArtBezeichnungSchriftGr, FontStyle.Regular), Brushes.Black, EtTyp(etw).ArtBezeichnungX, EtTyp(etw).ArtBezeichnungY)
Catch ex As Exception
FormDebug.fout(ex.Message)
End Try
End Sub
Gruss
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 147060
Url: https://administrator.de/forum/etiketten-drucken-mit-vb-net-147060.html
Ausgedruckt am: 27.04.2025 um 22:04 Uhr
1 Kommentar