Thema: Delphi Drucken

Einzelnen Beitrag anzeigen

Der_Unwissende

Registriert seit: 13. Dez 2003
Ort: Berlin
1.756 Beiträge
 
#5

Re: Drucken

  Alt 14. Okt 2006, 23:03
Zitat von Christophe:
dan habe ich mit TPrinter rumgespielt dort muss aber alles auf das Canvas gezogen werden.
Nun meine Frage. Ist es möglich ohne grosses drum rum dieses formular auszudrucken (langes Formular).
Hi,
da ist wieder mal die Definition von großem Drumrum die große Frage. An sich ist dein Formular nicht mehr als ein Canvas, auf den gezeichnet wird. Dein Drucker wird unter Windows auch als GDI (Graphic Device Interface) behandelt, der Canvas von TPrinter ist halt ein GDI-Device, auf dass du zeichnen kannst. An sich hast du damit schon eine gewisse Einfachheit, da du einfach Dinge wie StretchBlt oder BitBlt mit diesem Canvas verwenden kannst. Wie Klaus dir auch schon zeigte, kannst du so also auch dein Formular kopieren.

Was die Größe angeht, so kannst du mittels StretchBlt oder StretchDraw auch einfach dein Formular auf eine bestimmte Größe stauchen. An sich solltest du es dir beim Drucken aber nicht so einfach machen. Es ist ein bekanntes Problem (vieler Programmiersprachen), dass Drucken nicht trivial ist. Was du beachten musst ist, dass du je nach Drucker unterschiedliche Ergebnisse bekommen würdest (mit dem hier gezeigten Weg). Das liegt dann an der eingestellten Auflösung. Du gibst die Größe deiner Seite letztlich in Pixel an, je nach DPI Wert des Druckers hast du also auf einen Inch unterschiedlich viele Pixel, bei hoher Auflösung würde also nur noch ein Teil der Seite bedruckt...
Deswegen solltest du die Einheit des Druckers erst auf etwas Einheitliches (z.B. millimeter oder zehntel- millimeter) umstellen. Wie man druckt und was man beachten muss verrät dir die DP-Suche

Gruß Der Unwissende
  Mit Zitat antworten Zitat