AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

BRCC32 und PNG-Icons

Ein Thema von Codehunter · begonnen am 24. Jan 2018 · letzter Beitrag vom 26. Jan 2018
Antwort Antwort
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.633 Beiträge
 
Delphi 12 Athens
 
#1

AW: BRCC32 und PNG-Icons

  Alt 24. Jan 2018, 08:58
Ich habe mir ein Icon erstellt (.ico) in dem Grafik im PNG-Format enthalten ist.
Kannst du die ICO-Datei mal hier anhängen?
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Fukiszo
(Gast)

n/a Beiträge
 
#2

AW: BRCC32 und PNG-Icons

  Alt 24. Jan 2018, 09:04
der fehler liegt bestimmt am compressed png, unkomprimiert müsste es klappen.
  Mit Zitat antworten Zitat
Benutzerbild von Codehunter
Codehunter

Registriert seit: 3. Jun 2003
Ort: Thüringen
2.283 Beiträge
 
Delphi 12 Athens
 
#3

AW: BRCC32 und PNG-Icons

  Alt 24. Jan 2018, 10:07
Ich konnte den Fehler inzwischen etwas eingrenzen. BRCC32 scheint nicht mit dem PNG-Format mit Alphatransparenzen Probleme zu haben wie ich zuerst dachte, sondern mit dem seit Windows Vista gebräuchlichen Format von 256x256 Pixeln. Wenn ich diesen Riesenklotz aus dem Icon lösche, dann kompiliert BRCC32 problemlos auch Alpha-PNGs zur RES. Das erklärt allerdings immer noch nicht, wie die IDE die entsprechende RES-Datei zusammenbauen kann selbst wenn das 256x256-Bild in der ICO enthalten ist.
Ich mache grundsätzlich keine Screenshots. Schießen auf Bildschirme gibt nämlich hässliche Pixelfehler und schadet der Gesundheit vom Kollegen gegenüber. I und E zu vertauschen hätte den selben negativen Effekt, würde aber eher dem Betriebsklima schaden
  Mit Zitat antworten Zitat
Redeemer

Registriert seit: 19. Jan 2009
Ort: Kirchlinteln (LK Verden)
1.118 Beiträge
 
Delphi 2009 Professional
 
#4

AW: BRCC32 und PNG-Icons

  Alt 24. Jan 2018, 10:13
BRCC weiß überhaupt nicht, was eine PNG-Datei ist und speichert sie deshalb wie jede andere unbekannte Datei (RT_RCDATA) ab, was völlig selbstverständlich problemlos klappt. Bitmap, Icon/Cursor sowie RIFF-ANI sind die einzigen Grafikformate, die für die RES ein anderes als das originale Format vorsehen, weshalb sich der Compiler nicht inhaltlich um Sachen wie PNG kümmern muss.
Janni
2005 PE, 2009 PA, XE2 PA
  Mit Zitat antworten Zitat
Benutzerbild von Codehunter
Codehunter

Registriert seit: 3. Jun 2003
Ort: Thüringen
2.283 Beiträge
 
Delphi 12 Athens
 
#5

AW: BRCC32 und PNG-Icons

  Alt 24. Jan 2018, 10:59
BRCC weiß überhaupt nicht, was eine PNG-Datei ist und speichert sie deshalb wie jede andere unbekannte Datei (RT_RCDATA) ab, was völlig selbstverständlich problemlos klappt. Bitmap, Icon/Cursor sowie RIFF-ANI sind die einzigen Grafikformate, die für die RES ein anderes als das originale Format vorsehen, weshalb sich der Compiler nicht inhaltlich um Sachen wie PNG kümmern muss.
Tja wär ja schön wenns so wäre. Ist es aber nicht. Probiert es selbst aus. Ich habe die betreffenden Dateien als ZIP angehängt. Die beiden Varianten unterscheiden sich nur dadurch, dass in mainicon.ico eine zusätzliche Version mit 256x256 Auflösung enthalten ist und in mainicon2.ico nicht. Einfach die rescompile.bat in der Befehlszeile aufrufen. (brcc32.exe muss im Suchpfad sein!)

PS: Ja, es ist das Icon von HeidiSQL Das ist das Projekt an dem ich grade dran bin.
Angehängte Dateien
Dateityp: zip icontest.zip (59,9 KB, 11x aufgerufen)
Ich mache grundsätzlich keine Screenshots. Schießen auf Bildschirme gibt nämlich hässliche Pixelfehler und schadet der Gesundheit vom Kollegen gegenüber. I und E zu vertauschen hätte den selben negativen Effekt, würde aber eher dem Betriebsklima schaden
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.633 Beiträge
 
Delphi 12 Athens
 
#6

AW: BRCC32 und PNG-Icons

  Alt 24. Jan 2018, 12:19
Soweit ich weiß, verwendet die IDE die cgrc.exe - auch wenn der Eintrag in den Projektoptionen etwas anderes vorgaukelt.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von Codehunter
Codehunter

Registriert seit: 3. Jun 2003
Ort: Thüringen
2.283 Beiträge
 
Delphi 12 Athens
 
#7

AW: BRCC32 und PNG-Icons

  Alt 24. Jan 2018, 17:21
Soweit ich weiß, verwendet die IDE die cgrc.exe - auch wenn der Eintrag in den Projektoptionen etwas anderes vorgaukelt.
Wenn dem so ist, was sich aus meiner Perspektive nur schwerlich nachvollziehen lässt, dann würde das den augenscheinlichen Widerspruch erklären, wie die IDE plötzlich mit 256x256 Icons klar kommen kann obwohl die Projektoptionen BRCC32 als Resourcecompiler nennen. Ist wohl auch etwas, das bei Borland damals unter "Compiler Magic" lief
Ich mache grundsätzlich keine Screenshots. Schießen auf Bildschirme gibt nämlich hässliche Pixelfehler und schadet der Gesundheit vom Kollegen gegenüber. I und E zu vertauschen hätte den selben negativen Effekt, würde aber eher dem Betriebsklima schaden
  Mit Zitat antworten Zitat
Redeemer

Registriert seit: 19. Jan 2009
Ort: Kirchlinteln (LK Verden)
1.118 Beiträge
 
Delphi 2009 Professional
 
#8

AW: BRCC32 und PNG-Icons

  Alt 24. Jan 2018, 12:32
BRCC weiß überhaupt nicht, was eine PNG-Datei ist und speichert sie deshalb wie jede andere unbekannte Datei (RT_RCDATA) ab, was völlig selbstverständlich problemlos klappt. Bitmap, Icon/Cursor sowie RIFF-ANI sind die einzigen Grafikformate, die für die RES ein anderes als das originale Format vorsehen, weshalb sich der Compiler nicht inhaltlich um Sachen wie PNG kümmern muss.
Tja wär ja schön wenns so wäre. Ist es aber nicht. Probiert es selbst aus. Ich habe die betreffenden Dateien als ZIP angehängt. Die beiden Varianten unterscheiden sich nur dadurch, dass in mainicon.ico eine zusätzliche Version mit 256x256 Auflösung enthalten ist und in mainicon2.ico nicht.
Dein Projekt enthält keine PNG-Datei. Eine PNG in einer Icondatei ist immer noch eine Icondatei, die vom Ressourcenkompiler in diverse Bilddateien (Bitmaps und eben eine PNG) zerlegt wird, die jeweils als RT_ICON (auch: Icon Entry) eingebunden werden. Auch generiert er ein RT_GROUP_ICON mit Verweisen auf diese. Die Einbindung einer PNG-Datei als RT_ICON, das wie erwähnt anders RT_RCDATA oder ein (technisch identischer) benutzerdefinierter String-Typ eigentlich eine Veränderung der Ressource benötigt, ist dem BRCC für PNG unbekannt (korrekt wäre: keine Veränderung, anders als Bitmap-Icon-Entries, die verändert werden müssen), das Ding ist schließlich seit 19 Jahren nicht mehr angefasst worden.
Janni
2005 PE, 2009 PA, XE2 PA

Geändert von Redeemer (24. Jan 2018 um 12:36 Uhr)
  Mit Zitat antworten Zitat
Ghostwalker

Registriert seit: 16. Jun 2003
Ort: Schönwald
1.299 Beiträge
 
Delphi 10.3 Rio
 
#9

AW: BRCC32 und PNG-Icons

  Alt 24. Jan 2018, 13:54
Das hat nichts mit PNG zu tun. Die hast du ja schon in ein ICO umgewandelt, von daher kann BRCC32 nix von PNG's wissen

Das Problem ist wirklich die 256*256 Größe, mit der BRCC32 nicht klarkommt (das Problem hatte ich auch schon).

Verwende stattdessen den von Uwe erwähnten cgrc.exe oder RC.EXE. Damit tuts
Uwe
e=mc² or energy = milk * coffee²
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:04 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