Конференция "WinAPI" » Загрузка иконок
 
  • DenisArd (15.12.08 22:39) [0]
    Как в Windows CE API извлечь из .ico файла, содержащего несколько форматов иконок, иконку с заданными параметрами (глубина цвета и размер) и получить ее handle?
  • clickmaker © (16.12.08 10:57) [1]
    LoadImage()
  • DenisArd (16.12.08 15:51) [2]
    В Windows CE loadImage не умеет работать с файлами, только с ресурсами загруженного приложения.
  • Sapersky (16.12.08 20:12) [3]
    Можно вручную загрузить, формат относительно несложный.

     TIconHeader = packed record
       idReserved: Word; (* Always set to 0 *)
       idType: Word;     // 1 - icon, 2 - cursor
       idCount: Word;    (* Number of icon images *)
       (* immediately followed by idCount TIconDirEntries *)
     end;

     TIconDirEntry = packed record
       bWidth: Byte;          (* Width *)
       bHeight: Byte;         (* Height *)
       bColorCount: Byte;     (* Nr. of colors used, see below *)
       bReserved: Byte;       (* not used, 0 *)
       wPlanes: Word;   // icons - always 1, cursors - pointer X coord
       wBitCount: Word; // icons - bit count, cursors - pointer Y coord
       dwBytesInRes: Longint; (* total number of bytes in images *)
       dwImageOffset: Longint;(* location of image from the beginning of file *)
     end;

    Иконки лежат в стандартном формате битмапа, сразу за картинкой 1-битная маска.
    Возможно, есть какие-то готовые библиотеки...
  • Rouse_ © (19.12.08 09:36) [4]
    Вот этот компонент ручками разбирает формат иконки и отображает требуемый: http://rouse.drkb.ru/components.php#fwiconex
    Можно плясать от него...
  • Sapersky (19.12.08 16:29) [5]
    Иконки лежат в стандартном формате битмапа

    Точнее, есть одно исключение - последний уровень детализации (256*256) в вистовских иконках, там обычно PNG.
 
Конференция "WinAPI" » Загрузка иконок
Есть новые Нет новых   [134435   +35][b:0][p:0]