![]() |
Drucken von Bitmaps / Größenanpassung an Druckercanvas / Wie
Moin, Moin,
also heute habe ich ein Problem, wo ich wirklich gnadenlos hänge: Habe neben Texten auch eine Bitmap auszudrucken. Das ganze wird auf den Druckercanvas ausgegeben. Mit den Texten ist das auch kein Problem. Aber die Bitmap macht mir Probleme. Die Bitmap ist oft höher aufgelöst als der Canvas, muß aber auf eine definierte Größe Reampled werden. Wie groß die Bitmap selbst ist weiß ich eigentlich nicht, da der Benutzer diese selbst auswählen kann. FRAGE: Wo finde ich etwas zum Resampling von Bitmaps zum Ausdruck ? :?: :wiejetzt: Viele Grüße // Martin |
Re: Drucken von Bitmaps / Größenanpassung an Druckercanvas /
schau mal unter
![]() da hab ich eine library für Delphi her, die u.a. Bitmaps resamplen (interpolieren) kann. Roderich |
Re: Drucken von Bitmaps / Größenanpassung an Druckercanvas /
TCanvas.StretchDraw könnte Dir evtl. auch weiterhelfen.
Gruß Stephan |
Re: Drucken von Bitmaps / Größenanpassung an Druckercanvas /
Danke,
arbeite mich da erst mal ein und melde mich nochmal Grüße aus dem sommerlichen ( Ha! Ein Tag unterbrechung der Regenzeit) Hannover // Martin |
Re: Drucken von Bitmaps / Größenanpassung an Druckercanvas /
Zitat:
Die Funktion aus der g32 library kann u.a. interpolieren mit Anti-Aliasing. Gruß roderich |
Re: Drucken von Bitmaps / Größenanpassung an Druckercanvas /
Liste der Anhänge anzeigen (Anzahl: 1)
Moin, moin,
Hier kommt das StretchDraw Beispiel. Ok das ist im weitesten Sinne "HOFFNUNGSLOS". Aber nichts für ungut Steve, hat geholfen eine Möglichkeit zu eleminieren. Eigentlich wollte ich ja nur das SW-Bild ausdrucken. Ok Jetzt brauch ich erstmal ein Beispiel von der G32-Libary.... :gruebel: :gruebel: :gruebel: Viele Grüße // Martin |
Re: Drucken von Bitmaps / Größenanpassung an Druckercanvas /
Moinsen,
ich habe ein ähnliches Problem! Ich möchte ein Bild drucken und dann auf diesem Bild noch ein paar Textfelder... Mit diesem Quellcode druckt er das Bild ohne Problem!
Delphi-Quellcode:
Wenn ich aber jetzt den Code für das Drucken der Textfelder einbinde, wird das Bild nicht mehr gedruckt, und die Textfelder viel zu klein...
Printer.BeginDoc;
With Printer.Canvas Do Begin Rect := Bounds(0, 0, Printer.PageWidth, Printer.PageHeight); StretchDraw(Rect, imgObjekt.Picture.Bitmap); End; Printer.Enddoc; Der code sieht jetzt so aus..... hat jemand eine Ahnung was da falsch läuft?
Delphi-Quellcode:
Printer.BeginDoc;
Printer.Canvas.Font.Name := 'MS Sans Serif'; Printer.Canvas.Font.Height := 8; With Printer.Canvas Do Begin For I := 1 To AnzahlKompos Do Begin Kompo := FindComponent('Kompo' + IntToStr(I)); L := (Kompo As TLabel).Left; O := (Kompo As TLabel).Top; Text := (Kompo As TLabel).Caption; TextOut(L, O, Text); End; Rect := Bounds(0, 0, Printer.PageWidth, Printer.PageHeight); StretchDraw(Rect, imgObjekt.Picture.Bitmap); End; Printer.Enddoc; Grüsse, Ricane |
Re: Drucken von Bitmaps / Größenanpassung an Druckercanvas /
*schieb - schieb*
Kann es vielleicht daran liegen, das man bei den Textfeldern (der "TextOut" Befehl) auch noch eine Art "StretchDraw" ausführen muss, damit diese auch im richtigen Verhältnis stehen, wie das Bild?! Oder ist es generell nicht möglich beides auf das selbe Papier zu bringen; und dabei natürlich auch noch gestreckt?! Hoffe irgend jemand weiss da mehr, denn ich bin bereits stark am verzweifeln :| Ricane |
Re: Drucken von Bitmaps / Größenanpassung an Druckercanvas /
Servus,
die Schrift ist so winzig, weil Du Height statt Size geändert hast. Versuch mal Folgendes: Erst Grafik, dann alles, was mit Text zu tun hat..
Delphi-Quellcode:
Bei mir gings so dann. Warum's andersum nicht ging, ist mir leider auch nicht ganz klar :wiejetzt:
Printer.BeginDoc;
With Printer.Canvas Do Begin StretchDraw(Printer.Canvas.ClipRect, bmp); Font.Name := 'MS Sans Serif'; Font.Size := 8; {.. Textausgabe ..} End; Printer.Enddoc; [edit]Habe als Rect lieber "TCanvas.ClipRect" benutzt.[/edit] Ich hoffe, Dein Problem ist damit trotzdem (wenigstens teilweise) gelöst :zwinker: Gruß Stephan |
Re: Drucken von Bitmaps / Größenanpassung an Druckercanvas /
Besten Dank!
Kann es leider hier nicht testen (bin noch @ Work...), bin aber schon sehr gespannt ob das funzt.... Beste Grüsse, Ricane |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:43 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz