Форум: "Media";
Текущий архив: 2007.06.03;
Скачать: [xml.tar.bz2];
ВнизСохранение картинок в 1 файл Найти похожие ветки
← →
Voper (2006-09-09 22:21) [0]Здравствуйте, у меня возник такой вопрос: мне нужно сохранять много картинок размером примерно 105*105, которые хранятся в ImageList, попробывал сохранять их с помощью WriteComponentResFile, но слишком долго происходит сохранение, причем загрузка ЦП 100% и длится примерно минут 5 (500 картинок) а размер создаваемого файла 23 мегабайта. Собственно вопрос: Нет ли способа побыстрей сохранить все эти картинки в 1 файл. Заранее спасибо.
← →
Vovan#1 (2006-09-09 22:41) [1]Попробуй через TBitmap.SaveToStream.
← →
SamBrook © (2006-09-10 11:24) [2]Пишите в один tif файл с помощью функций GDI+
← →
Voper (2006-09-10 19:59) [3]
> Пишите в один tif файл с помощью функций GDI+
А функцию не подскажите?
← →
Voper (2006-09-12 00:08) [4]А нет ли еще способов сохранения в 1 файл?
← →
SamBrook © (2006-09-12 01:03) [5]
> А нет ли еще способов сохранения в 1 файл?
А чем так не устраивает? В справке лень ковыряться?
Можно все картинки выстроить в линию и сохранить в виде одной
← →
angelnay (2006-09-19 16:39) [6]Есть - ответ:
Конвентер SFKart (*.spk,*.fps) - Упрощение программы Super Pixel Kart.
С помощью этой программы можно сохранить большое количество
картинок в один файл быстро и просто. (*.spk - качественный формат картинки, *.fps - сжатый формат картинки ). К тому и другому расширению - есть модуль для Delphi. Там класс TSPK и TFPS.
Если заинтересовал - напиши.
← →
antonn © (2006-09-19 18:29) [7]можно в стрим записывать все картинки, как уже говорилось в [1], при этом можно поджать их zlib"ом (скорость упадет, но зато ужмет)
← →
Sambrook © (2006-09-19 19:45) [8]
> antonn © (19.09.06 18:29) [7]
> можно в стрим записывать все картинки, как уже говорилось
> в [1], при этом можно поджать их zlib"ом (скорость упадет,
> но зато ужмет)
И получить очередной велосипед.
Tiff как раз и использует ZIP компрессию (опционально).
Да и потом - нафига писать в форматы, которые не один броузер не поймет?
← →
antonn © (2006-09-20 10:12) [9]Sambrook, разбираться с форматом tiff - это время, да еще куча кода в программе (или библиотека), свой формат - минимум кода. И открытость ресурсов автором не ставилась (можно такой вопрос, типа "Да и потом - нафига писать в форматы, которые не один броузер не поймет?" задать в соседней конференции справа, думаю, очень доходчиво расскажут:)).
← →
antonn © (2006-09-20 10:13) [10]и кстати - tiff бесплатен?
← →
SamBrook © (2006-09-20 15:09) [11]
> antonn © (20.09.06 10:13) [10]
> и кстати - tiff бесплатен?
Безусловно. Платна только одна разновидность, которая почти не используется.
А разбираться в формате совсем не обязательно - достаточно прочитать один раздел справки по GDI+, что я и посоветовал автору в [2].
К доморощенным форматам имею стойкое отвращение, переходящее в ненависть.
Из за таких "изобретателей", не желающих вникнуть в существующие стандарты, приходится тратить массу времени на всякую х**ню вместо полезной работы.
Кстати, что Вы имели ввиду под веткой справа?
← →
antonn © (2006-09-20 18:53) [12]SamBrook © (20.09.06 15:09) [11]
GDI+ это библиотека, насколько я помню, в Win2k по 3го сервис пака включительно ее нет (не знаю, есть ли она в 4м). К этому стоит добавить, что лишняя библиотека, к которой "привязывается" программа (может я не прав, но я обычно стремлюсь к бОльшей самодостаточности программы).
> К доморощенным форматам имею стойкое отвращение,
>переходящее в ненависть.
> Из за таких "изобретателей", не желающих вникнуть в
> существующие стандарты, приходится тратить массу
> времени на всякую х**ню вместо полезной работы.
А зачем тратить время на ресурсы программы, которые предназначены только для самой программы? :) Наверное, что бы их сграбить:)
> Кстати, что Вы имели ввиду под веткой справа?
Конференцию "Игры" я имел введу, не зря же игроделы пакуют ресурсы - чтобы никто не достал, чтобы пользоваться ими как удобнее (свой формат - свои правила:))
← →
Stexen © (2006-09-20 19:09) [13]Не могу понять задачи расскажи поподробнее что нужно?То есть объеденить в один рисунок или просто в любой файл поочереди и все?
← →
SamBrook © (2006-09-20 19:13) [14]
> GDI+ это библиотека, насколько я помню, в Win2k по 3го сервис
> пака включительно ее нет (не знаю, есть ли она в 4м). К
>
GDI+ входит в WinXP, для других ОС, начиная с Win98 есть бесплатный download c мелкомягкого сайта.
этому стоит добавить, что лишняя библиотека, к которой "привязывается"
> программа (может я не прав, но я обычно стремлюсь к бОльшей
> самодостаточности программы).
Неужели Ваши программы могут работать без kernel32.dll? Снимаю шляпу :)
> зачем тратить время на ресурсы программы, которые предназначены
> только для самой программы? :) Наверное, что бы их сграбить:
> )
Затем, что следует проявлять некую культуру программирования и уважение к коллегам по ремеслу, которым, возможно, придется сопровождать Ваш проект.
А сграбить рисунки можно и скриншотом.
← →
SamBrook © (2006-09-20 19:22) [15]
> не зря же игроделы пакуют ресурсы - чтобы никто не достал,
> чтобы пользоваться ими как удобнее (свой формат - свои
> правила:))
У игроделов своя индустрия и свои тараканы в голове, а у меня свои :)
Я уже нахлебался досыта ковырянием чужих форматов и чужих библиотек (причем не приватных а опубликованных в SDK).
← →
antonn © (2006-09-20 19:31) [16]SamBrook © (20.09.06 19:13) [14]
GDI+ входит в WinXP, для других ОС, начиная с Win98 есть бесплатный download c мелкомягкого сайта.
вот именно, что пользователю возможно нужно будет качать бесплатный download (около мегабайта), это уже неуважение к нему.
kernel32.dll есть везде, а gdiplus.dll есть не везде:)
> Затем, что следует проявлять некую культуру
> программирования и уважение к коллегам по ремеслу,
> которым, возможно, придется сопровождать Ваш проект.
ну если кто то его будет сопровождать, того ждут прокомментированные исходники.
> А сграбить рисунки можно и скриншотом.
с альфаканалом - не очень получится:)
← →
SamBrook © (2006-09-20 19:35) [17]
> вот именно, что пользователю возможно нужно будет качать
> бесплатный download (около мегабайта), это уже неуважение к нему.
А разве дистрибутивы уже не в моде?
> ну если кто то его будет сопровождать, того ждут прокомментированные
> исходники
Эх, Вашими устами да мед бы пить...
← →
antonn © (2006-09-20 19:39) [18]SamBrook © (20.09.06 19:35) [17]
А разве дистрибутивы уже не в моде?
какие? таскать с собой 700Кб (заархивированная библиотека)?
> Эх, Вашими устами да мед бы пить...
ну дык, если это мой проект, отчего бы этот модуль и не прокомментировать? :)
← →
SamBrook © (2006-09-20 19:43) [19]
> какие? таскать с собой 700Кб (заархивированная библиотека)?
Я имел в виду, что когда Вы делаете дистибутив своей программы, включаете в него gdiplus32.dll как shared library. Это гарантирует корректную инсталляцию и деинсталляцию на любой ОС.
Все известные мне install-maker с этой задачей справятся.
← →
antonn © (2006-09-20 19:53) [20]SamBrook © (20.09.06 19:43) [19]
вот я и говорю - это "лишние" 700Кб, для маловесных продуктов - роскошь:)
← →
Voper (2006-09-23 22:56) [21]хм.... в общем я уже написал все все через стримы тоесть вручную все картинки в 1 файл.Пока все устраивает и скорость, да и размер уменьшился.
Страницы: 1 вся ветка
Форум: "Media";
Текущий архив: 2007.06.03;
Скачать: [xml.tar.bz2];
Память: 0.5 MB
Время: 0.06 c