| |

VB.NET - FortgeschritteneRe: Metafile ? | |  | Autor: rub | Datum: 14.09.05 14:46 |
| Ich habe hier noch ein Problem. Nach dem ich in das Metafile gezeichnet habe, wandle ich es in Byte(), sprich einen Bytearray um und speichere die Daten in meiner Datenbank. Über ein weiteres Tool lade ich die Daten und drucke sie aus. Private Sub printDoc()
currentPrintDocument = New PrintDocument()
currentPrintDocument.DocumentName = "Test"
'Handler für 'Page' wird erzeugt.
AddHandler currentPrintDocument.PrintPage, AddressOf _
Me.PrintPage
DokuId = 1
currentPrintDocument.PrinterSettings.PrinterName = _
"\\FSC01\Lexmark Optra"
'Prüft, ob Drucker funktionsfähig ist.
If currentPrintDocument.PrinterSettings.IsValid Then
currentPrintDocument.Print()
Else
MessageBox.Show("Printer is invalid.")
End If
Catch ex As Exception
End Try
End Sub
Private Sub PrintPage(ByVal sender As Object, ByVal e As PrintPageEventArgs)
Try
Dim metafile1
Dim Storagedb As Stream
Dim dv As New DataView
dv.Table = Me.DS_TerminalService1.Tables( _
"tblTerminalPrinterJobsPages")
dv.RowFilter = " ID =1"
'Umwandlung des Streams in ein Metafile.
Dim bits As Byte() = CType(dv.Item(0).Item("Meta"), Byte())
Storagedb = New MemoryStream(bits)
'Stream wird zurückgesetzt.
Storagedb.Seek(0, SeekOrigin.Begin)
metafile1 = New Metafile(Storagedb)
'Stream wird geschlossen.
Storagedb.Close()
'Grafic wird übergeben.
e.Graphics.DrawImage(metafile1, 60, 10)
'Metafile wird gelöscht.
metafile1.Dispose()
'Nur einzelne Seiten.
e.HasMorePages = False
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub Das funktioniert auch, Jedoch kann ich hier keinen Handler übergeben. Wenn ich das tue bekomme ich einen Fehlr.
Jetzt würde ich aber gerne noch etwas zusätzliches in das Metafile zeichnen. Dass geht aber wohl ohne das Anlegen mit Handler nicht. Wie kann ich denn hier noch zusätzlich etwas hineinzeichnen ?
Wird so : metafile1 = New Metafile(Storagedb) immer ein bereits gefüllter Stream übergeben und kann mit MetaFile1 = New Metafile(MemoryStream1, Handle1)
nur ein leeres, neues Metafile erstellt werden ?
Habe ich hier ein Fehler mit New oder mit Storagedb.Seek(0, SeekOrigin.Begin) , also dem zurücksetzen des Streams, oder was ?
Ich habe schon ettliche Versuche hinter mir und bekomme es nicht hin. |  |
 Metafile ? | 1.174 | rub_ | 14.09.05 10:35 |   Re: Metafile ? | 943 | rub | 14.09.05 14:46 |
 | Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
  |
|
sevISDN 1.0 
Überwachung aller eingehender Anrufe!
Die DLL erkennt alle über die CAPI-Schnittstelle eingehenden Anrufe und teilt Ihnen sogar mit, aus welchem Ortsbereich der Anruf stammt. Weitere Highlights: Online-Rufident, Erkennung der Anrufbehandlung u.v.m. Weitere InfosTipp des Monats Oktober 2025 Matthias KozlowskiUmlaute konvertierenErsetzt die Umlaute in einer Zeichenkette durch die entsprechenden Doppelbuchstaben (aus ä wird ae, usw.) Neu! sevEingabe 3.0 
Einfach stark!
Ein einziges Eingabe-Control für alle benötigten Eingabetypen und -formate, inkl. Kalender-, Taschenrechner und Floskelfunktion, mehrspaltige ComboBox mit DB-Anbindung, ImageComboBox u.v.m. Weitere Infos
|
|
|
Copyright ©2000-2025 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|