![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Глупый ворос [D5]
Serg455 © (2002-09-22 20:27:00)В Faq delphi.mastak.ru написано как сделать иконку из битмапа.
Если ее попробовать сохранить в фаил icon.SaveToFile("ou.ico");
, то она переконвертируется в 16 цветов.Как сохранить ее с 256-ю цветовой палитрой?
nsvi (2002-10-03 02:30:00) [1]Решение:
http://www.forum.vingrad.ru/cgi-bin/newforum/ikonboard.cgi?s=3d9a89de6e38ffff;act=ST;f=32;t=3497
nsvi (2002-09-30 02:02:00) [2]Снова я. Вот, разобрался.
Действительно, используя стандартную функцию SaveToFile многоцветную иконку не сохранить. Дело даже не в том, что количество цветов уменьшается, а в том, что все цвета переделываются так, как это известно только Майкрософту.
Поэтому я пошел другим путем.
Просмотрев некоторое количество иконок (коды их, конечно) и почитав где только можно о структуре иконок (как мало информации!), я решил использовать методику "не мытьем, так катаньем", то есть создать массив байт - образ файла иконки, используя для этого примитивные паскалевские алгоритмы, а затем записать этот массив на диск, добавив расширение .ico. И все получилось. Можно таким образом создавать иконки и 16 и 24 бит, хотя, думаю, это не нужно, так как у иконки всего 32х32=1024 пиксела и больше 256 цветов, я думаю, не нужно.
Если еще есть интерес к этой проблеме, пиши, поделюсь кодами. Мыло реальное.
nsvi (2002-09-24 02:10:00) [3]Этот вопрос я задавал много раз. Похоже, никто не знает, почему так происходит. В разной литературе упоминается, что иконки 32х32 сохраняются только в 16 цветном варианте, однако у меня есть много иконок с плавным изменением цветового тона и размером гораздо больше стандартного 766 байт. Подозреваю, что делаются они каким-то другим путем, не через SaveToFile.
Еще одно: возможно надо как-то использовать палитру, может быть 16 цветов - это число примененных в данной иконке цветов, а не стандартных. Сейчас пробую этот вариант, может быть что-то получится.
А на этот форум ходят в основном такие-же начинающие, гуру появляются редко, поэтому никто не может ответить.
Serg455 (2002-09-23 23:39:00) [4]Неужели никто не знает как????