Текущий архив: 2003.01.20;
Скачать: 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 вся ветка
Текущий архив: 2003.01.20;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.008 c