AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Suchfunktion Ergebnis der Suchanfrage

Ergebnis der Suchanfrage


Datum des Suchindex: Heute, 16:32

Parameter dieser Suchanfrage:

Suche in Thema: PNG in TImage falsch dargestellt
Suche alle Beiträge, die von "tumo" geschrieben wurden
• Suchmethode: "Suche nach allen Begriffen"
• Nach Datum (firstpost) sortiert
• Zeige Treffer als Beiträge
Zeige 17 von insges. 17 Treffern
Suche benötigte 0.000s

Es liegen Ergebnisse in folgenden Bereichen vor:

  • Forum: Object-Pascal / Delphi-Language

    AW: PNG in TImage falsch dargestellt

     
      by tumo, 29. Apr 2020
    Ach ja. Geht jetzt. Trotzdem komisch das ganze...

    Danke Dir nochmal.
  • Forum: Object-Pascal / Delphi-Language

    AW: PNG in TImage falsch dargestellt

     
      by tumo, 29. Apr 2020
    Also beim Auslesen des Headers bekomme ich: Indexed 2bit. Ironischerweise wird es ohne deinen Code korrekt dargestellt. Beim setzen auf 4bit funktioniert es auch korrekt. So langsam frage ich mich, was in der pngimage-Library eigentlich nicht fehlerhaft ist :D.
    Was ist Dein Gedanke?

    BitDepth := PNG.Header.BitDepth;
    if BitDepth < 4 then BitDepth := 4;

    EDIT: Wenn man die png.Pixels...
  • Forum: Object-Pascal / Delphi-Language

    AW: PNG in TImage falsch dargestellt

     
      by tumo, 28. Apr 2020
    Ich muss leider noch mal stören.

    @Redeemer
    Dein Code hat ein Problem mit 2bit Palettenbildern. Beim drüberschauen ist mir jedoch kein Fehler aufgefallen. 8bit und 4bit geht dafür aber super :)
    Falls es hilfreich ist, in deinem Code scheinen tatsächlich keine Fehler zu sein, die Daten von der Source-Scanline sind falsch(?). Bei meinem Testbild in Zeile y=4 hat er für x2=1 den Scanline-Wert 50...
  • Forum: Object-Pascal / Delphi-Language

    AW: PNG in TImage falsch dargestellt

     
      by tumo, 28. Apr 2020
    Stimmt.
    Aber auch nur, wenn es korrekt geht :P.

    Was deine Bilder angeht, mein Delphi (bzw. mein pngimage) kann die problemlos darstellen. Ist wohl wirklich nur bei BitTransparency.
  • Forum: Object-Pascal / Delphi-Language

    AW: PNG in TImage falsch dargestellt

     
      by tumo, 27. Apr 2020
    @Rolf Frei
    Ach ja. Das ist im Eifer des Gefechtes etwas in Vergessenheit geraten. Hab es gerade mal probiert, ändert leider nichts an der Situation, besagte PNG wird mit schwarzem Hintergrund dargestellt :/.
    Hier mein Quellcode:
    png := TPNGImage.Create;
    png.LoadFromFile(Path);
    bmp := TBitmap.Create;
    bmp.Assign(png); // <-- TPNGImage AssignTo() ist modifiziert. Es fehlen das...
  • Forum: Object-Pascal / Delphi-Language

    AW: PNG in TImage falsch dargestellt

     
      by tumo, 26. Apr 2020
    Gibt es da irgend einen Trick? Mein Ansatz wäre jetzt das pixelweise Parsen in ein neues TPNGObject, bin mir aber nicht sicher, ob das nicht noch effizienter geht.

    Das umgeht dann ja aber nur das Problem. Mit anderen Worten, ich muss einen Edgecase für ebendiese Problembilder machen. Naja, ich schätze mal, das ist der sinnvollste Weg für mich, manchmal kann man eben nicht alles haben.
    Wäre...
  • Forum: Object-Pascal / Delphi-Language

    AW: PNG in TImage falsch dargestellt

     
      by tumo, 25. Apr 2020
    @Medium
    Ich wüsste jetzt nicht, wo man den Vergrößerungs-Algorithmus einstellen kann. Tatsächlich macht er das schon mit NearestNeighbour (oder etwas, was verdammt danach aussieht), was auch das ist, was ich will. Verfolgt man die Draw()-Methode von PNGImage landet man mit BitTransparency früher oder später in einer Prozedur mit dem schönen Namen "DrawTransparentBitmap". Da drin wird mit...
  • Forum: Object-Pascal / Delphi-Language

    AW: PNG in TImage falsch dargestellt

     
      by tumo, 24. Apr 2020
    Nun, der Fehler tritt offenbar auch bei BitTransparency auf. Ich nutze ebenfalls die von Delphi mitgelieferte pngimage-Lib.
    Kannst du denn die Blume in Stretch=true und Proportional=true korrekt darstellen lassen?
  • Forum: Object-Pascal / Delphi-Language

    AW: PNG in TImage falsch dargestellt

     
      by tumo, 23. Apr 2020
    Das wäre PNG 4 (Das mit der "Blume"). Dort bekomme ich sowohl zur Design-Zeit, als auch mit LoadFromStream und LoadFromFile diese schwarzen Ränder. Meine pngimage Library Version ist übrigens 1.564 (Was offenbar die aktuellste ist). Hast du auch Stretch=true gesetzt (und optional auch Proportional=true)? Ich nutze Delphi 10.3.3 Community und der Fehler tritt wie auf Kommando auf. Warum nur ich...
  • Forum: Object-Pascal / Delphi-Language

    AW: PNG in TImage falsch dargestellt

     
      by tumo, 23. Apr 2020
    Das wusste ich nicht.
    Dann hier nochmal als Zip.
  • Forum: Object-Pascal / Delphi-Language

    AW: PNG in TImage falsch dargestellt

     
      by tumo, 22. Apr 2020
    Ok.
    Hier sind sie :)
  • Forum: Object-Pascal / Delphi-Language

    AW: PNG in TImage falsch dargestellt

     
      by tumo, 22. Apr 2020
    Okay, ich habe noch ein wenig weiter probiert:

    Beim Auslesen der Header-Daten ist mir aufgefallen, dass ich folgende PNGs im Testset habe:
    PNG 1: RGBA (Mode 6) ; 8bit/ch -> 32bit/px ; Transparenz-Modus: Partial (Nur Binärer Alpha-Channel)
    PNG 2: RGB (Mode 2) ; 8bit/ch -> 24bit/px ; Transparenz-Modus: None
    PNG 3: Palette (Mode 3) ; 8bit/ch -> 8bit/px ; Transparenz-Modus: None
    PNG 4: Palette...
  • Forum: Object-Pascal / Delphi-Language

    AW: PNG in TImage falsch dargestellt

     
      by tumo, 21. Apr 2020
    Nach weiterem überlegen, probieren und googlen habe ich "herausgefunden", dass der Anzeigefehler nur auftritt, wenn die PNG im ColorMode 3 (Paletten-Modus) geladen wird. @Redeemer hatte also den richtigen Riecher (oder womöglich schon eine Lösung?). Warum genau dadurch Ränder schwarz angezeigt werden, wo die Pixeldaten eig. richtig sind, bleibt mir aber ein Rätsel. Mit der Graphics32 Library habe...
  • Forum: Object-Pascal / Delphi-Language

    AW: PNG in TImage falsch dargestellt

     
      by tumo, 15. Apr 2020
    @Redeemer
    Das war mir jetzt auch klar. Da ich aber alle PNGs einheitlich abgespeichert habe, vermute ich mal, entweder sind alle Pallettenbilder oder keins. Wenn dem nicht so ist, verstehe ich den Algorithmus von Paint.net nicht :/

    @Medium
    Perfekt, damit funktioniert es. Warum eine Zuweisung oder ein Assign nicht funktioniert, bleibt mir zwar ein Rätsel, aber das ist ja nicht so wichtig.
    ...
  • Forum: Object-Pascal / Delphi-Language

    AW: PNG in TImage falsch dargestellt

     
      by tumo, 14. Apr 2020
    Ah.
    Nun, nicht das ich wüsste.
  • Forum: Object-Pascal / Delphi-Language

    AW: PNG in TImage falsch dargestellt

     
      by tumo, 14. Apr 2020
    Danke für die schnellen Antworten.

    @Medium
    Habe mir die graphics32 mal angeschaut. Nach fast einer halben Stunde Harreraufen mit den Delphi Settings ging es dann endlich. Es tut, was es muss, aber nicht so richtig was es soll. Nicht falsch verstehen, meine Bitmaps werden bildschön, skaliert und mit Transparenz angezeigt, aber die eigentliche Zuweisung der Bitmaps ist alles andere als...
  • Forum: Object-Pascal / Delphi-Language

    PNG in TImage falsch dargestellt

     
      by tumo, 14. Apr 2020
    Hallo,

    ich habe ein kleines Programm, was mir Texturen auflistet und diese nach Bedarf anzeigt. Die Texturen sind als PNG gespeichert und werden (dank PNGImage) auch problemlos von Delphi geladen. Die Texturen sind fast immer 32x32 px groß und damit ich diese auf einem FHD Bildschirm auch ordentlich beurteilen kann, dachte ich, ich stelle sie ein wenig größer dar. TImage war von dieser Idee...


URL zu dieser Suchanfrage:

https://www.delphipraxis.net/dp_search.php?do=usersearch&search_username=tumo&search_exact_username=1&search_sortby=dateline&search_resulttype=post&search_matchmode=0&searchthreadid=204002
Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:35 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