AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Canvas an Drucker senden und drucken
Thema durchsuchen
Ansicht
Themen-Optionen

Canvas an Drucker senden und drucken

Ein Thema von daniel8520 · begonnen am 3. Jun 2004 · letzter Beitrag vom 15. Jul 2004
Antwort Antwort
Seite 2 von 2     12   
mytar

Registriert seit: 30. Mai 2004
Ort: Zermatt
411 Beiträge
 
Delphi 6 Enterprise
 
#11

Re: Canvas an Drucker senden und drucken

  Alt 15. Jul 2004, 16:15
@shmia:
Zitat:
begin
Printer.BeginDoc;
MeinTImage.PaintTo(Printer.Canvas.Handle, 100, 100);
// da aber die Pixels deines Images auf dem Drucker 1 zu 1 umgesetzt werden
// wird dein Bild recht klein werden
Printer.EndDoc;
end;
Ich denke bei TImage gibt es keine PaintTo-Methode, oder doch?
Francis Obikwelu
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#12

Re: Canvas an Drucker senden und drucken

  Alt 15. Jul 2004, 16:52
Zitat von mytar:
Ich denke bei TImage gibt es keine PaintTo-Methode, oder doch?
Hey, du hat ja recht.
Die Methode PaintTo gibt es nur bei WinControls. Und da TImage von TGraphicControl abgeleitet ist,
muss man dort mit TGraphicControl.Canvas arbeiten.
Damit habe ich eine Procedure gebaut, die jedes Control zeichnen kann:
Delphi-Quellcode:
type
  TGC_cracker = class(TGraphicControl) // Hilfsklasse, wg. Zugriff auf protected Properties
  end;

procedure PaintControlToCanvas(control:TControl; Canvas:TCanvas; x,y:Integer);
var
   dest, src : TRect;
begin
   Assert(Assigned(control));
   Assert(Assigned(canvas));
   if control is TWinControl then
      TWinControl(control).PaintTo(Canvas.Handle, x, y)
   else if control is TGraphicControl then
   begin
      src := control.ClientRect;
      dst := src;
      OffsetRect(dest, x, y);
      Canvas.CopyRect(dest, TGC_cracker(control).Canvas, src);
   end
   else
      Assert(False, 'PaintControlToCanvas(: Control-Class not supported');
end;
Andreas
  Mit Zitat antworten Zitat
mytar

Registriert seit: 30. Mai 2004
Ort: Zermatt
411 Beiträge
 
Delphi 6 Enterprise
 
#13

Re: Canvas an Drucker senden und drucken

  Alt 15. Jul 2004, 16:54
Super, ich werds gleich testen

mytar
Francis Obikwelu
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 11:39 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