Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   PNG und Canvas via BMP und anderes (https://www.delphipraxis.net/214944-png-und-canvas-via-bmp-und-anderes.html)

creehawk 9. Apr 2024 15:53

PNG und Canvas via BMP und anderes
 
Liste der Anhänge anzeigen (Anzahl: 1)
Moin Moin.

Ich muss - will - aus einer großen PNG Grafik mit Transparenz via Canvas bestimmte Bereich ausschneiden und speichern.

Canvas geht meines Wissens ja nur mit Bitmap. Bitmap geht nicht mit Transparenz. Oder nur nicht so richtig.

Es gibt etliche Google Treffer für 'Delphi PNG to BMP transparent', aber faul wie ich bin :PNG online konvertieren lassen nach BMP mit Transparenz. Geht anstandslos. Sieht in Photoshop perfekt aus. Auch in Paint.net. Sogar in Paintshop (anno 1999).

In Delphi im TImage natürlich nicht. Wo kommen wir dahin. Siehe Bild. Oberer Teil Screenshot aus Paint.net, unterer Teil aus our fabulous Delphi.

Was ist hier los?

creehawk

Jens01 9. Apr 2024 16:57

AW: PNG und Canvas via BMP und anderes
 
Versuchs mal mit Graphics32 oder TImage32

Uwe Raabe 9. Apr 2024 17:20

AW: PNG und Canvas via BMP und anderes
 
Du beschreibst gar nicht, wie du das in Delphi gemacht hast.

creehawk 9. Apr 2024 17:27

AW: PNG und Canvas via BMP und anderes
 
Zitat:

Zitat von Uwe Raabe (Beitrag 1535537)
Du beschreibst gar nicht, wie du das in Delphi gemacht hast.

Ich lade auf eine Form in ein TImage die online konvertierte BMP um eben via Canvas darin rumzuschnippeln.

Oder was meinst du.

gubbe 9. Apr 2024 17:48

AW: PNG und Canvas via BMP und anderes
 
Dann lade doch das PNG-Bild separat und lasse es in den Canvas von TImage zeichnen.

Uwe Raabe 9. Apr 2024 19:42

AW: PNG und Canvas via BMP und anderes
 
Zitat:

Zitat von creehawk (Beitrag 1535539)
Ich lade auf eine Form in ein TImage die online konvertierte BMP um eben via Canvas darin rumzuschnippeln.

Oder was meinst du.

Genau das meine ich. Es war mir nicht klar, wie das TImage da jetzt rein sollte.

creehawk 10. Apr 2024 05:12

AW: PNG und Canvas via BMP und anderes
 
Moin Moin.

Egal was ich versuche : das Ergebnis ist immer das gleiche.

Ich muss aus einem teiltransparenten PNG Bild Teilelemente ausschneiden. Das geht bekanntlich via Canvas. Das benötigt BMP. Geht aber offensichtlich nicht.

Oder gibt es eine Möglichkeit direkt aus einem PNG zu schneiden?

creehawk

jaenicke 10. Apr 2024 05:36

AW: PNG und Canvas via BMP und anderes
 
Ich würde mir mal die FMX-Klassen dazu anschauen. Die können diesbezüglich deutlich mehr als die der VCL.

gubbe 10. Apr 2024 06:59

AW: PNG und Canvas via BMP und anderes
 
Das funktioniert nicht wie in einem Grafikprogramm (wenn Du nicht spezielle Bibliotheken verwendest), sondern Du startest mit einer leeren Bitmap in der passenden Größe und zeichnet dort alles rein.
Wichtig ist, das PixelFormat auf pf32Bit zu setzen, damit Transparenz per Alpha-Kanal funktioniert.

Was funktioniert denn genau nicht bei Deinem bisherigen Code? Das Zeichnen einer transparenten PNG-Datei? Sollte kein Problem sein.
Etwas näheres könnten wir sagen, wenn Du Deinen Ansatz genauer beschreibst oder Beispielcode zeigst. Was ist denn das Zielformat? Wieder PNG mit Transparenz oder einfarbigem Hintergrund?

Es wurden ja auch schon einige Bibliotheken genannt, die man verwenden könnte. Direkt in Delphi enthalten wäre auch noch GDIPlus, was besonders bei Transparenzen und PNG-Dateien seine Vorteile gegenüber den alten GDI-Funktionen (TCanvas) hat.

Stolle58 10. Apr 2024 08:44

AW: PNG und Canvas via BMP und anderes
 
Hi,

Canvas ist schon das richtige.

Zeig uns mal, was du bis jetzt hast, dann können wir Dir sagen was du falsch machst.


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:17 Uhr.
Seite 1 von 3  1 23      

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