AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Printers.Canvas auf TImage ausgeben

Printers.Canvas auf TImage ausgeben

Ein Thema von hedie · begonnen am 28. Jan 2011 · letzter Beitrag vom 28. Jan 2011
Antwort Antwort
hedie

Registriert seit: 12. Dez 2005
Ort: Schweiz
1.024 Beiträge
 
Delphi XE6 Starter
 
#1

Printers.Canvas auf TImage ausgeben

  Alt 28. Jan 2011, 09:28
Hallo zusammen

Ich erstelle mir mittels Printer.Canvas eine zu druckende Seite...

Also vorschau würde ich nun gerne die Canvas auf einem TImage ausgeben...

Mein erster gedanke war, Canvas.Bitmap übergeben, aber da Canvas dies nicht kennt benötige ich nun hife...

Ich hoffe jemand kennt eine lösung... Danke schonmal
Claudio
Tu was du nicht lassen kannst
- http://endasmedia.ch
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.557 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Printers.Canvas auf TImage ausgeben

  Alt 28. Jan 2011, 09:34
Könntest Du nicht einfach eine Zeichenroutine schreiben, der Du den entsprechenden Canvas als Parameter übergibst? Wobei bei einer Bitmap natürlich dann die Abmessungen des Printer.Canvas zu berücksichtigen wären (Höhe, Breite, Seitenränder, Skalierung, etc.). Auf der anderen Seite kannst Du natürlich auch gleich entsprechende PrintPreview-Komponenten verwenden, z.B. die von DelphiArea.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#3

AW: Printers.Canvas auf TImage ausgeben

  Alt 28. Jan 2011, 09:35
Du mußt vorher eingreifen und in Deinen Ausgaberoutinen statt Printer.Canvas ein Klassenlokales oder per Parameter übergebenes Canvas verwenden, diese kannst Du dann mit Printer.Canvas oder auch mit Image.canvas belegen.
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
hedie

Registriert seit: 12. Dez 2005
Ort: Schweiz
1.024 Beiträge
 
Delphi XE6 Starter
 
#4

AW: Printers.Canvas auf TImage ausgeben

  Alt 28. Jan 2011, 09:38
Du mußt vorher eingreifen und in Deinen Ausgaberoutinen statt Printer.Canvas ein Klassenlokales oder per Parameter übergebenes Canvas verwenden, diese kannst Du dann mit Printer.Canvas oder auch mit Image.canvas belegen.
Klingt sehr spannend und hilfreich.... ist jedoch estwas zu hoch... Könntest du mir das ein wenig genauer erklären?
Vielleicht mit einem Codeschnipsel?

Also ich vermute du meinst ein neues Canvas vom typ TCanvas anlegen und da rein zeichnen..
Dieses dann zum Drucken an Printer.Canvas übergeben oder zum darstellen an Image.Canvas übergeben...

stimmt das?
Claudio
Tu was du nicht lassen kannst
- http://endasmedia.ch
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.557 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Printers.Canvas auf TImage ausgeben

  Alt 28. Jan 2011, 09:39
procedure Zeichnen(aCanvas: TCanvas); Hier kannst Du entweder Printer.Canvas oder Bitmap.Canvas oder oder oder... übergeben.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#6

AW: Printers.Canvas auf TImage ausgeben

  Alt 28. Jan 2011, 09:42
Die billigste Variante, Deine Ausgaberoutinen z.B. Umschreiben auf
Delphi-Quellcode:
FCanvas.TextRect(......);
Fcanvas.Fillrect(....);
und vor dem Druck FCanvas das Zielcanvas zuweisen..
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:51 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz