Announcement

Collapse
No announcement yet.

TIFFs drucken

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • TIFFs drucken

    Ich kann zwar verschiedene Dokumente drucken, indem ich per Process.Start() und dem Verb "Print" einen Prozess starte, bei TIFFs scheint dies aber daneben zu gehen, der Image Viewer wird geöffnet, ohne das Bild auf den Standarddrucker zu schicken.

    Eine Suche im Intenet führte mich zu folgendem Code:
    Code:
    ....
           Dim m_pd As New Printing.PrintDocument()
           AddHandler m_pd.PrintPage, AddressOf PrintMe
           m_pd.DocumentName = filename
           Me.PrintFileName = filename
           m_pd.Print()
    ....
    
    Private Sub PrintMe(ByVal sender As Object, ByVal e As PrintPageEventArgs)
            Dim gr As Graphics = e.Graphics
    
            ' Verweis auf das Bild festlegen
            Dim oImage As Image = Image.FromFile(PrintFileName)
    
            ' Rechteck für den Ausdruck festlegen
            ' Position + Originalgröße
            Dim p As New Point(e.MarginBounds.Left, e.MarginBounds.Top)
            Dim r As New Rectangle(p.X, p.Y, oImage.Width, oImage.Height)
    
            ' Bild drucken im angegebenen Rechteck drucken
            gr.DrawImage(oImage, r)
    
            gr.Dispose()
    
    End Sub
    Jetzt habe ich aber das Problem, dass das Bild über die Grenzen des Papiers hinausragt (obwohl es ursprünglich als A4-Dokument eingescannt wurde, passt nur das rechte obere Viertel auf den Ausdruck), und es wird auch nur eine Seite gedruckt, was selbst nach einer Skalierung fatal wäre, wenn das TIFF-Dokument mehrere Seiten umfasst.

    Wie skaliere ich das Bild für den Ausdruck auf auf Papiergröße? Wie drucke ich alle Seiten? Und sind Druckereinstellungen, die ich verändere permanent, müsste ich also die alten Einstellungen sichern, um sie wieder zurückzuschreiben, und wie mache ich das?

    Gruß
    Martin
Working...
X