Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Weitere MASSIVE Probleme beim Delphi ImageList Editor (https://www.delphipraxis.net/188441-weitere-massive-probleme-beim-delphi-imagelist-editor.html)

PeterPanino 4. Mär 2016 00:19


Weitere MASSIVE Probleme beim Delphi ImageList Editor
 
Liste der Anhänge anzeigen (Anzahl: 5)
Offenbar kann der Delphi ImageList Editor nicht mit partieller Transparenz bei 32Bit .PNG AlphaTransparency Images umgehen und VERÄNDERT solche Bilder beim Enfügen!!! :pale:

Ausgangsbild ist clipboard_copy.png in clipboard_copy.zip (angehängte Datei).


So sieht clipboard_copy.png nach dem Einfügen im Delphi ImageList Editor aus:

http://i.imgur.com/T58tehB.png

Das Bild wird damit DAUERHAFT verändert und sieht dann auf einem Button so aus:

http://i.imgur.com/FR252jA.png



So sieht clipboard_copy.png nach dem Einfügen im CnWizards ImageList Editor aus:

http://i.imgur.com/j9ZzzbM.png

Das Bild wird hier nicht verändert und sieht dann auf einem Button so aus:

http://i.imgur.com/AtMT9S1.png


Das ist äußerst ärgerlich und sollte eigentlich bei einem professionellen Programm nicht vorkommen!

Also ist es klar, dass man den Delphi ImageList Editor in seiner derzeitigen Form nicht benutzen kann. Der CnWizards ImageList Editor verändert offenbar auch die Bilder beim Abspeichern.

Ist Delphi 10 Seattle damit unbenutzbar?

PeterPanino 4. Mär 2016 00:20

AW: Weitere MASSIVE Probleme beim Delphi ImageList Editor
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hier sind die ImageList Eigenschaften, die im ersten Posting wegen der Bilderbegrenzung nicht mehr Platz hatten.

haentschman 4. Mär 2016 05:29

AW: Weitere MASSIVE Probleme beim Delphi ImageList Editor
 
Moin...:P

Deine ersten 3 Bilder sind offensichtlich mit den 3 letzten Bildern identisch. (beides CN Editor).
PS: Warum lädst du deine Bilder immer auf windige Bilderserver hoch? :gruebel:

jaenicke 4. Mär 2016 05:33

AW: Weitere MASSIVE Probleme beim Delphi ImageList Editor
 
// EDIT:
Ja, sieht hier genauso aus, wenn ich CnWizards deaktiviere.

Bernhard Geyer 4. Mär 2016 06:40

AW: Weitere MASSIVE Probleme beim Delphi ImageList Editor
 
Die TImageList von Delphi setzt auf Funktionalität von Windows aus. Und da ist bekannt das die Bilder verändert werden um sie (je nach Windows-Version) unterschiedlich codiert zu speichern.
Wenn Du PNG hast, so gibt es auch ein PNGImageList (Downloadbereich von Emba bzw. bei den LMD-Komponenten).
Verwende diese seit Jahren und habe keine Probleme damit.

PeterPanino 4. Mär 2016 07:01

AW: Weitere MASSIVE Probleme beim Delphi ImageList Editor
 
Zitat:

Zitat von haentschman (Beitrag 1332016)
Moin...:P

Deine ersten 3 Bilder sind offensichtlich mit den 3 letzten Bildern identisch. (beides CN Editor).
PS: Warum lädst du deine Bilder immer auf windige Bilderserver hoch? :gruebel:

Sieh doch einfach nochmal genau hin.

PeterPanino 4. Mär 2016 07:03

AW: Weitere MASSIVE Probleme beim Delphi ImageList Editor
 
Zitat:

Zitat von Bernhard Geyer (Beitrag 1332019)
Die TImageList von Delphi setzt auf Funktionalität von Windows aus. Und da ist bekannt das die Bilder verändert werden um sie (je nach Windows-Version) unterschiedlich codiert zu speichern.
Wenn Du PNG hast, so gibt es auch ein PNGImageList (Downloadbereich von Emba bzw. bei den LMD-Komponenten).
Verwende diese seit Jahren und habe keine Probleme damit.

Hier ist die Rede davon, dass die Bilder VISUELL VERÄNDERT werden, und nicht dass sie unterschiedlich codiert gespeichert werden. Es geht darum, dass der Delphi ImageList Editor partielle Transparenz offensichtlich nicht verarbeiten kann.

Bernhard Geyer 4. Mär 2016 07:08

AW: Weitere MASSIVE Probleme beim Delphi ImageList Editor
 
Zitat:

Zitat von PeterPanino (Beitrag 1332021)
Hier ist die Rede davon, dass die Bilder VISUELL VERÄNDERT werden, und nicht dass sie unterschiedlich codiert gespeichert werden. Es geht darum, dass der Delphi ImageList Editor partielle Transparenz offensichtlich nicht verarbeiten kann.

Und woher weißt du das diese visuelle veränderung nicht vom Speichern her kommt?
AFAIK kann die TImageList nur intern mit Bitmaps umgehen. D.h. ein PNG wird zwangsweise beim Wandeln nach Bmp geändert.

Sherlock 4. Mär 2016 07:17

AW: Weitere MASSIVE Probleme beim Delphi ImageList Editor
 
Nun melde das alles einfach mal als Bug und alles wird gut.

Sherlock

haentschman 4. Mär 2016 07:24

AW: Weitere MASSIVE Probleme beim Delphi ImageList Editor
 
Moin...:P
Zitat:

So sieht clipboard_copy.png nach dem Einfügen im Delphi ImageList Editor aus:
http://i.imgur.com/W6U3en1.png
...entweder bin ich blind oder steht da statt ImageList Editor CnWizard Imagelist Editor...:gruebel:

PeterPanino 4. Mär 2016 07:25

AW: Weitere MASSIVE Probleme beim Delphi ImageList Editor
 
Zitat:

Zitat von Bernhard Geyer (Beitrag 1332022)
Und woher weißt du das diese visuelle veränderung nicht vom Speichern her kommt?

Kannst du sinnerfassend lesen? Dann vollzieh doch einfach mal das nach, was ich beschrieben habe.

Zitat:

Zitat von Bernhard Geyer (Beitrag 1332022)
AFAIK kann die TImageList nur intern mit Bitmaps umgehen. D.h. ein PNG wird zwangsweise beim Wandeln nach Bmp geändert.

Nochmals: Kannst du sinnerfassend lesen? Lies mal die Eigenschaften der ImageList.

Sir Rufo 4. Mär 2016 07:29

AW: Weitere MASSIVE Probleme beim Delphi ImageList Editor
 
Zitat:

Zitat von haentschman (Beitrag 1332025)
Moin...:P
Zitat:

So sieht clipboard_copy.png nach dem Einfügen im Delphi ImageList Editor aus:
http://i.imgur.com/W6U3en1.png
...entweder bin ich blind oder steht da statt ImageList Editor CnWizard Imagelist Editor...:gruebel:

Du musst dich ganz stark auf das Bild konzentrieren, dann siehst du nach ca. 5 Minuten das andere Bild :mrgreen:

Im Moment sehe ich hier nur MASSIVE Probleme beim Umgang mit Bild-Anhängen :stupid:

PeterPanino 4. Mär 2016 07:31

AW: Weitere MASSIVE Probleme beim Delphi ImageList Editor
 
Zitat:

Zitat von haentschman (Beitrag 1332025)
Moin...:P
Zitat:

So sieht clipboard_copy.png nach dem Einfügen im Delphi ImageList Editor aus:
http://i.imgur.com/W6U3en1.png
...entweder bin ich blind oder steht da statt ImageList Editor CnWizard Imagelist Editor...:gruebel:

Ja, der Screenshot wurde mit dem CnWizards Editor gemacht, nachdem das Bild im Delphi Editor eingefügt wurde.

Wieso vollziehst du das Ganze nicht einfach selbst nach? Das Testbild ist im Anhang vorhanden.

PeterPanino 4. Mär 2016 07:32

AW: Weitere MASSIVE Probleme beim Delphi ImageList Editor
 
Zitat:

Zitat von Sir Rufo (Beitrag 1332027)
Zitat:

Zitat von haentschman (Beitrag 1332025)
Moin...:P
Zitat:

So sieht clipboard_copy.png nach dem Einfügen im Delphi ImageList Editor aus:
http://i.imgur.com/W6U3en1.png
...entweder bin ich blind oder steht da statt ImageList Editor CnWizard Imagelist Editor...:gruebel:

Du musst dich ganz stark auf das Bild konzentrieren, dann siehst du nach ca. 5 Minuten das andere Bild :mrgreen:

Im Moment sehe ich hier nur MASSIVE Probleme beim Umgang mit Bild-Anhängen :stupid:

Mann, kannst du anstatt dumme Sprüche abzusondern einfach mal das Beschriebene ausprobieren? Oder reicht's dazu bei dir nicht?

Bernhard Geyer 4. Mär 2016 07:34

AW: Weitere MASSIVE Probleme beim Delphi ImageList Editor
 
Ich hätte noch ein paar Ideen wie man dein Problem lösen könntest
Aber bei diesem angeschnauzte lass sich es es lieber bleiben.
Viel Spaß. Ich hoffe du findest keine LÖSUNG:twisted:

PeterPanino 4. Mär 2016 07:40

AW: Weitere MASSIVE Probleme beim Delphi ImageList Editor
 
Zitat:

Zitat von Bernhard Geyer (Beitrag 1332030)
Ich hätte noch ein paar Ideen wie man dein Problem lösen könntest
Aber bei diesem angeschnauzte lass sich es es lieber bleiben.
Viel Spaß. Ich hoffe du findest keine LÖSUNG:twisted:

Wieso, DU hast doch mit dem "angeschnauzte" angefangen. Versuch doch einfach mal sachlich ranzugehen, anstatt gleich den Hohn rauszulassen.

Ich habe das doch nicht gepostet, weil es MEIN Problem ist, sondern ein ALLGEMEINES Problem mit dem Delphi ImageList Editor.

Daniel 4. Mär 2016 07:43

AW: Weitere MASSIVE Probleme beim Delphi ImageList Editor
 
Durchatmen, Peter.
Aktuell möchtest Du etwas von uns - nicht wir von Dir. Wenn Dir die Antworten nicht zusagen, dann tut es mir leid, aber damit wirst Du souveräner umgehen müssen. Die Frage, ob andere Teilnehmer in der Lage seien, "sinnerfassend zu lesen", hilft nicht weiter, wie Du siehst.

Wenn Du uns mal die Original-Grafiken gibst, kann ich das z.B. mal mit einem aktuellen Delphi testen.

//edit: Gefunden. Hängt ja im ersten Beitrag.

PeterPanino 4. Mär 2016 07:49

AW: Weitere MASSIVE Probleme beim Delphi ImageList Editor
 
Zitat:

Zitat von Daniel (Beitrag 1332032)
Durchatmen, Peter.
Aktuell möchtest Du etwas von uns - nicht wir von Dir. Wenn Dir die Antworten nicht zusagen, dann tut es mir leid, aber damit wirst Du souveräner umgehen müssen. Die Frage, ob andere Teilnehmer in der Lage seien, "sinnerfassend zu lesen", hilft nicht weiter, wie Du siehst.

Wenn Du uns mal die Original-Grafiken gibst, kann ich das z.B. mal mit einem aktuellen Delphi testen.

Also NOCHMALS: Die Original-Grafik ist HIER im Anhang.

Und ich habe gerade vorhin geschrieben, dass das kein "Hilfegesuch" ist, sondern ein Fehlerbericht mit der Bitte, das nachzuvollziehen. Bitte nochmals mein Eingangsposting lesen!

Uwe Raabe 4. Mär 2016 08:22

AW: Weitere MASSIVE Probleme beim Delphi ImageList Editor
 
Zitat:

Zitat von PeterPanino (Beitrag 1332012)
Ist Delphi 10 Seattle damit unbenutzbar?

Wenn ich deinen Post richtig lese (soweit meine bescheidenen Fähigkeiten das überhaupt zulassen), erwähnst du dort, daß bei Benutzung des cnWizard alles zu deiner Zufriedenheit funktioniert. Insofern hast du selbst die obige Frage ja schon eindeutig mit einem Nein! beantwortet.

Was das beschriebene Problem angeht, da hast du allerdings recht: Der Standard Imagelist-Editor kann nur transparent und kein Alpha. Das wird zum Einen aus der Dokumentation ersichtlich (dort ist Transparent erwähnt, aber nicht Alpha) und zum Anderen kann man das auch direkt im Source sehen: In Property Editors\ImgEdit.pas findet sich in der Methode TImageListEditor.Replace ausdrücklich ein
Delphi-Quellcode:
bmp.alphaFormat := afIgnored;
. Gleichzeitig wird hier auch klar, daß das PNG direkt beim Einlesen in ein Bitmap umgewandelt wird. Im Gegensatz dazu bleibt in der schon von Bernhard erwähnten TPngImageList das PNG-Format intern erhalten und wird erst beim Zeichnen ausgewertet.

Insofern wäre es eine großartige Idee, wenn du einen QP-Eintrag als New Feature anlegst, in dem du eine Unterstützung des Imagelist-Editors für Alpha-Channel vorschlägst.

himitsu 4. Mär 2016 09:31

AW: Weitere MASSIVE Probleme beim Delphi ImageList Editor
 
Kann die TImageList überhaupt richtig mit Transparenzen im Bild umgehen?
Oder schafft die das nur richtpg über die Maske und kann die Maske mehr als nur 1 Bit? (transparent oder nicht)

Delphi-Referenz durchsuchenTImageList
MSDN-Library durchsuchenCreateCompatibleBitmap (wird von TImageList benutzt, für einen internen Zwischenspeicher der ImageListe)
MSDN-Library durchsuchenImageList_Create (die WinAPI, auf der die VCL-TImageList aufsetzt)
MSDN-Library durchsuchenILC_COLOR32
MSDN-Library durchsuchenILC_MASK

PeterPanino 4. Mär 2016 09:35

AW: Weitere MASSIVE Probleme beim Delphi ImageList Editor
 
Zunächst DANKE für deinen fachlich kompetenten Beitrag!

Bitte versuch dich mal in meine Lage zu versetzen: Du setzt dich mitten in der Nacht hin und verbringst wertvolle Zeit damit, der Delphi community einen Dienst zu erweisen, indem du einen Sachverhalt über eine wesentliche Funktionalität der Delphi IDE ausführlich und genau recherchierst und dokumentierst. Und alles was dann kommt, sind HÖHNISCHE Kommentare von Benutzern, die nicht mal dein Posting richtig durchgelesen oder sich die Bilder richtig angesehen haben, geschweige denn das Originalbild heruntergeladen und den Vorgang nachvollzogen haben. Vielleicht ist es verständlich, wenn man dann als Mensch mal emotional wird?

Zitat:

Zitat von Uwe Raabe (Beitrag 1332037)
... erwähnst du dort, daß bei Benutzung des cnWizard alles zu deiner Zufriedenheit funktioniert.

Nein, denn ich habe in meinem Posting auf ein anderes Posting von mir hingewiesen, in dem ich dokumentiere, dass auch beim CnWizards ImageList Editor möglicherweise Fehler beim Speichern auftreten.

http://i.imgur.com/teovGVR.png

Zitat:

Zitat von Uwe Raabe (Beitrag 1332037)
Insofern wäre es eine großartige Idee, wenn du einen QP-Eintrag als New Feature anlegst, in dem du eine Unterstützung des Imagelist-Editors für Alpha-Channel vorschlägst.

GENAU DAS war ja meine Absicht! Da ich aber seriös arbeiten wollte, habe ich nach dem Peer-Review Prinzip die Delphi community mit meinem Posting implizit gebeten, das Verhalten des Delphi ImageList Editor nachzuvollziehen und ggf. zu bestätigen. ERST DANN wollte ich einen Quality-Report abgeben. Vielleicht hätte ich das EXPLIZIT erwähnen sollen. Aber ich habe eben darauf vertraut, dass die Leute hier mein Posting sachlich beurteilen und nicht ... naja.

stahli 4. Mär 2016 09:46

AW: Weitere MASSIVE Probleme beim Delphi ImageList Editor
 
[OT]
Es hat doch niemand einen Grund, Dich hier zu verhöhnen und das kann ich auch nicht erkennen.
Alle helfen hier (soweit es zeitlich und fachlich möglich ist) freiwillig und ehrenamtlich.

Kann ja sein, dass man Deine Infos vielleicht nicht vollständig analysiert oder verstanden hat.
Aber deshalb muss man nicht beleidigend werden.

Ich dachte, das hatten wir gerade überwunden.

Unterstelle den Leuten einfach mal nix schlechtes, außer, wenn Dich vielleicht einer explizit beleidigt.

PS: Sachlich kann ich hier leider nichts beitragen.
[/OT]

Uwe Raabe 4. Mär 2016 09:55

AW: Weitere MASSIVE Probleme beim Delphi ImageList Editor
 
Zitat:

Zitat von PeterPanino (Beitrag 1332044)
Zitat:

Zitat von Uwe Raabe (Beitrag 1332037)
... erwähnst du dort, daß bei Benutzung des cnWizard alles zu deiner Zufriedenheit funktioniert.

Nein, denn ich habe in meinem Posting auf ein anderes Posting von mir hingewiesen, in dem ich dokumentiere, dass auch beim CnWizards ImageList Editor möglicherweise Fehler beim Speichern auftreten.

OK, das mit den ausfransenden Icons hatte ich hiermit nicht in Verbindung gebracht. Dann könnte allerdings an Himitsu's Einwand was dran sein.

Zitat:

Zitat von himitsu (Beitrag 1332043)
Kann die TImageList überhaupt richtig mit Transparenzen im Bild umgehen?

Die Dokumentation sagt da allerdings etwas anderes:
Zitat:

Bilder in der Liste können Bitmaps, Symbole, PNG-, GIF- und JPEG-Bilder sein: alle Bildtypen, die TImage unterstützt. ImageLists unterstützt auch das 32-Bit-Format, damit Alpha-Farbübergänge in Bitmaps und PNG-Dateien korrekt arbeiten.
Aber das ist natürlich auch noch ein weiterer möglicher Knackpunkt. In dem Fall wäre TImageList dann wohl nicht die geeignete Komponente.

PeterPanino 4. Mär 2016 09:58

AW: Weitere MASSIVE Probleme beim Delphi ImageList Editor
 
Zitat:

Zitat von himitsu (Beitrag 1332043)
Kann die TImageList überhaupt richtig mit Transparenzen im Bild umgehen?

Hallo himitsu, danke für die kompetente und sachliche Frage!

Ich glaube, man sollte zwischen der Klasse TImageList und dem Delphi ImageList Editor unterscheiden. Denn der CnWizards ImageList Editor speichert die Transparenzen ja richtig in der ImageList ab. Sieh dir dazu bitte nochmals die Screenshots von den Buttons an, die ich in meinem Eingangs-Posting gepostet habe:

Hier ist der Button, der die ImageList benutzt, die mit dem Delphi ImageList Editor befüllte wurde.

Und hier ist der Button, der die ImageList benutzt, die mit dem CnWizards ImageList Editor befüllte wurde.

PeterPanino 4. Mär 2016 10:05

AW: Weitere MASSIVE Probleme beim Delphi ImageList Editor
 
Zitat:

Zitat von stahli (Beitrag 1332046)
[OT]Unterstelle den Leuten einfach mal nix schlechtes, außer, wenn Dich vielleicht einer explizit beleidigt.[/OT]

Ja, du hast recht. OK, ich möchte mich hiermit formell dafür entschuldigen, dass ich zu emotional reagiert habe.

Zacherl 4. Mär 2016 10:21

AW: Weitere MASSIVE Probleme beim Delphi ImageList Editor
 
Zitat:

Zitat von himitsu (Beitrag 1332043)
Kann die TImageList überhaupt richtig mit Transparenzen im Bild umgehen?
Oder schafft die das nur richtpg über die Maske und kann die Maske mehr als nur 1 Bit? (transparent oder nicht)

Doch doch, die TImageList kann durchaus mit "richtigem" Alpha Channel umgehen, sofern man die ColorDepth von cdDeviceDependant auf cd32Bit umstellt, was der Thread Ersteller ja auch korrekterweise getan hat.

Bernhard Geyer 4. Mär 2016 11:15

AW: Weitere MASSIVE Probleme beim Delphi ImageList Editor
 
Zitat:

Zitat von PeterPanino (Beitrag 1332050)
Zitat:

Zitat von stahli (Beitrag 1332046)
[OT]Unterstelle den Leuten einfach mal nix schlechtes, außer, wenn Dich vielleicht einer explizit beleidigt.[/OT]

Ja, du hast recht. OK, ich möchte mich hiermit formell dafür entschuldigen, dass ich zu emotional reagiert habe.

OK. Angenommen.

Bernhard Geyer 4. Mär 2016 11:19

AW: Weitere MASSIVE Probleme beim Delphi ImageList Editor
 
Zitat:

Zitat von Zacherl (Beitrag 1332053)
Zitat:

Zitat von himitsu (Beitrag 1332043)
Kann die TImageList überhaupt richtig mit Transparenzen im Bild umgehen?
Oder schafft die das nur richtpg über die Maske und kann die Maske mehr als nur 1 Bit? (transparent oder nicht)

Doch doch, die TImageList kann durchaus mit "richtigem" Alpha Channel umgehen, sofern man die ColorDepth von cdDeviceDependant auf cd32Bit umstellt, was der Thread Ersteller ja auch korrekterweise getan hat.

Grundsätzlich sollte es das können. Die Frage ist jedoch ob es für alle Wege in der mann Bilder hinzufügt (und diese zwangsweise nach Bitmap gewandelt werden) auch fehlerfrei funktioniert.

@PeterPanino: Kannst du dein Bild schon als 32-Bit Bitmap mit Alpha-Channel bereit stellen und dieses direkt in die Imageliste laden?
Die PNG-Implementierung (die ja von Emba nur gekauft wurde) hat Schwachstellen wenn das PNG einem Bmp zugewiesen wird (was ja bei der TImageList zwangsweise gemacht werden muss). Dort geht die transparenz flöten.

himitsu 4. Mär 2016 13:41

AW: Weitere MASSIVE Probleme beim Delphi ImageList Editor
 
Es ist zwar selten, daß Emba den Code seiner Editoren rausrückt (die in der IDE verwendet werden), aber hier kann man schön in den QuellCode gucken.

ImgEdit.pas > TImageListEditor

Hab jetzt nicht so die Zeit, aber sah massig Stellen, wo Bilder umkopiert oder neu in ein anderes Bitmap reingemalt werden.

Bernhard Geyer 4. Mär 2016 13:44

AW: Weitere MASSIVE Probleme beim Delphi ImageList Editor
 
Zitat:

Zitat von himitsu (Beitrag 1332078)
Es ist zwar selten, daß Emba den Code seiner Editoren rausrückt (die in der IDE verwendet werden), aber hier kann man schön in den QuellCode gucken.

ImgEdit.pas > TImageListEditor

Hab jetzt nicht so die Zeit, aber sah massig Stellen, wo Bilder umkopiert oder neu in ein anderes Bitmap reingemalt werden.

Vermutlich noch "Urschleim"-Implementierung als man nur 24-Bit Bitmaps konnte die über das rechte Unter Pixel die Transparentfarbe bekommen haben.

himitsu 4. Mär 2016 13:46

AW: Weitere MASSIVE Probleme beim Delphi ImageList Editor
 
War es nicht das linke Untere? :stupid:

Bernhard Geyer 4. Mär 2016 14:05

AW: Weitere MASSIVE Probleme beim Delphi ImageList Editor
 
Das Problem/die Probleme ist/sind bekannt:

https://quality.embarcadero.com/browse/RSP-11927
https://quality.embarcadero.com/browse/RSP-10415
https://quality.embarcadero.com/browse/RSP-13666


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:04 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