![]() |
Schnelle Bitmap verkleinerung
Hallo zusammen,
ich suche eine Library oder Komponente mit der ich möglichst schnell ein Bitmap auf Bildschirmgröße verkleinern kann. Ziel ist es, einen Rechnungsbeleg auf den Bildschirm zu verkleinern, so dass er trotzdem noch gut lesbar ist. Das Bild ist original in 1-bit (600dpi) und wird beim verkleinern auf 8-bit hochgesetzt um die Zeichen in grausstufen darstellen zu können. Derzeit habe ich die GraphicEx Funktion "Stretch" im Einsatz, die aber viel zu langsam ist. Weiss jemand eine andere Komponente (frei oder shareware ist total egal). Hauptsache es ist richtig schnell. Grüße Oliver |
Re: Schnelle Bitmap verkleinerung
Hallo,
warum zeigst Du Deine Grafik nicht in einem TImage an und bedienst Dich dann der Proportional-Eigenschaft, um die Grafik auf Bildschirmgröße anzupassen? |
Re: Schnelle Bitmap verkleinerung
Zitat:
Da kann man keinen Buchstaben mehr lesen ... |
Re: Schnelle Bitmap verkleinerung
Sämtliche gute Algorythmen brauchen ihre Zeit. Daher legt Windows z.B. die Thumbs.db an, um verkleinerte Bilder zu cachen und deshalb laden PictureViewer das nächste Bild auch immer im voraus.
|
Re: Schnelle Bitmap verkleinerung
Zitat:
Photoshop brauch ca. 2 Sekunde das Bild in die gewünschte Qualität zu verkleinern, GraphicEx ca. 20 Sekunden. |
Re: Schnelle Bitmap verkleinerung
Assembler ist auch nur dann schneller wenn man genau weiß was man tut. An den passenden Stellen eingesetzt lohnt es zwar richtig aber wunder sind trotzdem nicht drin. ;) Gewisse Dinge brauchen einfach ihre Zeit.
Ein paar Ideen keine Ahnung ob sie wirklich etwas bringen. 1. Du solltest mal schauen ob die GraphicEx evtl die Möglichkeit hat bei der du die Filtermethode einstellen kannst. Es wird häufig so etwas wie Lanczos oder Bicubic benutzt. Die brauchen länger als Linear oder ein Boxfilter, weil sie auch komplexer sind. 2. Für StretchBlt gibt es die Möglichkeit einen Modus einzustellen. Kann mir leider nie merken wie der heißt. Musste mal suchen. Damit kannst du unter XP ein Bild automatisch Glätten lassen wärend es dargestellt wird. Ich meine der hatte eine ganz nette Geschwindigkeit. 3. Zur Not kann man sich einen Boxfilter auch selber schreiben. Der muss ja nicht perfekt sein. Sollte aber trotzdem schneller als 20 Sekunden sein. Bzw da dein Bild wahrscheinlich auch aus mehr als 50% Weiß besteht könnte man solche Stellen auch recht schnell überspringen. Denn so etwas bleibt weiß. Ist aber eine sehr sehr spezielle Optimierung. |
Re: Schnelle Bitmap verkleinerung
Schau dir mal das an, das sollte sein, was du suchst:
![]() |
Re: Schnelle Bitmap verkleinerung
ich nutzte für skalierungen/darstellung die gdi+.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:44 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