Startseite ¦  was ist neu ¦  programmier tips ¦  indy artikel ¦  intraweb artikel ¦  informationen ¦  links ¦  interviews ¦  sonstiges
kylix ¦  tutorials ¦  online shop ¦  fotos ¦  Add&Win Gewinnspiel


Willkommen Gast. Bitte einloggen oder registrieren.
22.05.2012, 13:27:50
Übersicht Hilfe Suche Einloggen Registrieren

+  SwissDelphiCenter Forum
|-+  German Forums
| |-+  Allgemeines Forum
| | |-+  BMP to ICO (ohne FARBVERLUST)
« vorheriges nächstes »
Seiten: [1] Drucken
Autor Thema: BMP to ICO (ohne FARBVERLUST)  (Gelesen 2477 mal)
zero
Jr. Member
**
Offline Offline

Beiträge: 98



« am: 07.03.2002, 18:36:43 »

hallo

Wie kann ich ein BMP in ein ICO umwandeln, ohne die Farben zu verlieren?

Ein Bsp.code wäre cool :)

danke im voraus... zero
Gespeichert
The_Flo
Jr. Member
**
Offline Offline

Beiträge: 99


7550305
WWW
« Antworten #1 am: 07.03.2002, 20:15:46 »

Zitat

Wie kann ich ein BMP in ein ICO umwandeln, ohne die Farben zu verlieren?

Korrgiert mich ruhig wenn ich falsch liege, aber das dürfte schon rein theoretisch versagen, da ein Icon maximal 16 Farben unterstützt, eine BitMap File aber bis zu einigen Millionen.

Das ist also nur möglich wenn das Bitmap schon auf 16 Farben geschrumpft ist. Und diese 16 Farben den Farben der ICON-Palette entsprechen.

Wobei, wenn ich mir gerade die Iexplor.exe vom 6.0er ansehe, haben einige Icons dort mehr Farben. Ist das Standardkonform? Der Ressourchenexplorer gibt das nämlich mit "0 Farben" an.

Ciao, Florian
Gespeichert
BenBE
Hero Member
*****
Offline Offline

Beiträge: 1441


318219379 BenBE@xiondigital.net BenBE1987 ookyBenBE
WWW
« Antworten #2 am: 07.03.2002, 23:08:09 »

Gehen tut das schon ;-). Nur der ResExplorer hat einen kleinen Fehler.

Es gibt in der ICO-Datei einen RIFF-Header. Dort wird die Farb-Anzahl und die Größe festgelegt.

Geh einfach mal auf die Seite [a href="http://www.wotsit.org" target="_blank"]www.wotsit.org[/a]. Dort findet sich dazu nägeres.[/url]
Gespeichert

Je komplexer das System, desto kleiner die Fehler; je kleiner die Fehler, desto häufiger ihr Auftreten!
stOrM!
Sr. Member
****
Offline Offline

Beiträge: 265


« Antworten #3 am: 08.03.2002, 16:05:13 »

Var
 HI                : THandle;
 MyIconIndex       : word;
 AttachFileName    : string;
 X                 : word;
 F                 : File;
 big,small         : HICON;
 SP5               : TIcon;
 Location2         : String;
 ImageIcon2        : TImage;

  begin
  try
  Begin
  If opendialog1.Execute Then
  Begin
  AttachFileName := expandfilename(OpenDialog1.Filename);
  HI := ExtractIconEx(pchar(attachfilename), 0, big, small, 1);
  ImageIcon2:=TImage.Create(self);
  ImageIcon2.Picture.Icon.Handle:=Big;
  Sp5 := TIcon.Create;
  Sp5.Handle :=ImageIcon2.Picture.Icon.Handle;
  Speedbutton5.Hint         :=  attachfilename;
  Speedbutton5.Glyph        :=  nil;
  Speedbutton5.Glyph.Width  :=  Sp5.Width;
  Speedbutton5.Glyph.Height :=  Sp5.Height;
  Speedbutton5.glyph.canvas.Draw(0, 0, Sp5);
  Speedbutton5.Refresh;
  Sp5.Free;
 

wenn man das extrahierte icon erst auf ein image kopiert dann klappts

regards

stOrM!
Gespeichert

Ich würde mich gerne mit Ihnen geistig duellieren aber ich sehe schon, Sie sind unbewaffnet.
zero
Jr. Member
**
Offline Offline

Beiträge: 98



« Antworten #4 am: 08.03.2002, 16:49:09 »

mein delphi6 versteht ExtractIconEX nicht :)
Gespeichert
Lemy
Hero Member
*****
Offline Offline

Beiträge: 605



« Antworten #5 am: 08.03.2002, 17:28:36 »

Ist in der Unit "ShellAPI"
Gespeichert
stOrM!
Sr. Member
****
Offline Offline

Beiträge: 265


« Antworten #6 am: 08.03.2002, 21:32:23 »

sorry hatte ich vergessen mit reinzuschreiben :-)

lemy hat recht...

schraub es in deine uses dann gehts

regards

stOrM!
Gespeichert

Ich würde mich gerne mit Ihnen geistig duellieren aber ich sehe schon, Sie sind unbewaffnet.
Seiten: [1] Drucken 
« vorheriges nächstes »
Gehe zu:  


Einloggen mit Benutzername, Passwort und Sitzungslänge

Powered by MySQL Powered by PHP Powered by SMF 1.1.11 | SMF © 2006, Simple Machines LLC Prüfe XHTML 1.0 Prüfe CSS