Вниз
Скачать: CL | DM;

Глупый ворос   Найти похожие ветки 

 
Serg455   (2002-09-22 20:27) [0]

В Faq delphi.mastak.ru написано как сделать иконку из битмапа.
Если ее попробовать сохранить в фаил icon.SaveToFile("ou.ico");
, то она переконвертируется в 16 цветов.Как сохранить ее с 256-ю цветовой палитрой?


 
Serg455   (2002-09-23 23:39) [1]

Неужели никто не знает как????


 
nsvi   (2002-09-24 02:10) [2]

Этот вопрос я задавал много раз. Похоже, никто не знает, почему так происходит. В разной литературе упоминается, что иконки 32х32 сохраняются только в 16 цветном варианте, однако у меня есть много иконок с плавным изменением цветового тона и размером гораздо больше стандартного 766 байт. Подозреваю, что делаются они каким-то другим путем, не через SaveToFile.
Еще одно: возможно надо как-то использовать палитру, может быть 16 цветов - это число примененных в данной иконке цветов, а не стандартных. Сейчас пробую этот вариант, может быть что-то получится.
А на этот форум ходят в основном такие-же начинающие, гуру появляются редко, поэтому никто не может ответить.


 
nsvi   (2002-09-30 02:02) [3]

Снова я. Вот, разобрался.
Действительно, используя стандартную функцию SaveToFile многоцветную иконку не сохранить. Дело даже не в том, что количество цветов уменьшается, а в том, что все цвета переделываются так, как это известно только Майкрософту.
Поэтому я пошел другим путем.
Просмотрев некоторое количество иконок (коды их, конечно) и почитав где только можно о структуре иконок (как мало информации!), я решил использовать методику "не мытьем, так катаньем", то есть создать массив байт - образ файла иконки, используя для этого примитивные паскалевские алгоритмы, а затем записать этот массив на диск, добавив расширение .ico. И все получилось. Можно таким образом создавать иконки и 16 и 24 бит, хотя, думаю, это не нужно, так как у иконки всего 32х32=1024 пиксела и больше 256 цветов, я думаю, не нужно.
Если еще есть интерес к этой проблеме, пиши, поделюсь кодами. Мыло реальное.


 
nsvi   (2002-10-03 02:30) [4]

Решение:

http://www.forum.vingrad.ru/cgi-bin/newforum/ikonboard.cgi?s=3d9a89de6e38ffff;act=ST;f=32;t=3497



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.009 c
14-62829
Мазут Береговой
2003-01-02 21:20
2003.01.20
Кто знает как выглядят десятичные дроби в двоичной системе?


3-62409
sumrak
2002-12-25 18:04
2003.01.20
Построение отчета


14-62739
Anatoly Podgoretsky
2003-01-04 10:24
2003.01.20
Именинники 4 января


1-62556
ssmaxx
2003-01-10 18:19
2003.01.20
Системы линейных уравнений


3-62366
arnold
2002-12-24 08:11
2003.01.20
MySql или Microsoft SQL сервер?




   Наверх