Zum Inhalt springen

Mehrseitiges Drucken???


Net-srac

Empfohlene Beiträge

Hi Freaks ,

**EDIT** ES GEHT UM VISUAL C++ 6.0 **/EDIT**

also, ich hab jetzt mal eine Verständnissfrage zum Thema mehrseitiges

Drucken.

Also bis jetzt habe ich einfach mit dem Assistent eine Anwendung erstellt.

Der hat mir dann auch die standard klassen eingebaut.

So, nun habe ich meinen Code immer in OnPrint() geschrieben. Allerdings

kommt er da drin nicht klar mit mehreren Seiten. Wenn ich drucken will

schreibt er mir dann alles auf die erste Seite und überschreibt sie. (also

er schreibt dann über den unteren rand) trotzdem ich mit startpage und

endpage neue Seiten anlege wenn die Zeilen sie Blattgröße überschreiten.

Nun hab ich in der MSDN gelesen wie man es machen soll. Allerdings komm ich

damit nicht richtig klar. Also sie schreiben da, das in OnPrepareDC()

festgelegt wird was auf die Seiten gedruckt wird,

damit mein Drucker z.B. weiß wie viele Seiten er drucken muß.

Kann mir einer von euch das nochmal erklären? Ich versteh das absolut nicht,

und sitze schon seid letzten Donnerstag dran.:(

Danke für eure Hilfe.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Vielleicht kann ich dir ja helfen.

Das Drucken hat mir der Funktion OnPaint() erstmal nicht zu tun. Die Gemeinsamkeit besteht darin, das beides Drucken und OnPaint() über ein Device Context laufen.

That's it.

Zum Drucken mußt du in einer Funktion ein DC mit einem der folgenden Funktionen erstellen:

CPageSetupDialog::CreatePrinterDC(...), CPrintDialog::CreatePrinterDC(...) oder CWinApp::CreatePrinterDC(...).

In Views sollte man zum Drucken die Funktion OnDraw(...) verwenden.

Einen Druck startet man mit dem Aufruf der Funktion CDC::StartDoc(...).

Eine Seite startet man mit der Funktion CDC::StartPage (...).

Der Aufruf von StartPage(...) ist nur notwendig, wenn man mehrere Seiten drucken will.

Nun wird ganz normal wie in OnPaint(...) auf dem Drucker ausgegeben, z.B. mit CDC::LineTo(...).

Die Seite wird mit CDC::EndPage(...) beendet. Sollen weitere Seite muß wieder CDC::StartDoc(...) aufgerufen werden. u.s.w.

Der Druck wird beendet mit der Funktion CDC::EndDoc(...).

Ich hoffe das ich dir helfen konnte, auch wenn ich nicht auf die Parameter der Funktionen eingegangen bin.

Aber mit der MSDN sollte das nun kein Problem sein.

Gruß

mst

Link zu diesem Kommentar
Auf anderen Seiten teilen

Also das ist dann doch schon ziemlich komplex,

weil

1. Ich hab keinen Drucker nur den Treiber von dem Drucker installiert auf dem es später laufen soll. Aber die Seitenansicht sollte mir ja reichen oder?

2. Werden meine Seiten durch jede Menge Schleifen generiert und ich hab nun keine Ahnung wo (also in welcher funktion) ich was generieren muß.

Vielleicht könnte ich ja meinen Code mal in vereinfachter Form posten und du schreibst wohin welcher teil gehört???

Thnx4Help

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von FaFo

1. Ich hab keinen Drucker nur den Treiber von dem Drucker installiert auf dem es später laufen soll. Aber die Seitenansicht sollte mir ja reichen oder?

Ja, eigentlich sollte die Seitenansicht reichen. Dort wird alles so ausgegeben wie auf dem Drucker

2. Werden meine Seiten durch jede Menge Schleifen generiert und ich hab nun keine Ahnung wo (also in welcher funktion) ich was generieren muß.

Vielleicht könnte ich ja meinen Code mal in vereinfachter Form posten und du schreibst wohin welcher teil gehört???

See PM

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...