Вставка картинок в проект
|
|
as-master | Дата: Суббота, 07 Апреля 2007, 19:54 | Сообщение # 1 |
Разводящий
Группа: Модераторы
Сообщений: 2337
Репутация: 101
Награды: 5
Статус: Offline
| Порой после вставки в проект jpg-картинки весом всего в 30 кб размер проекта увеличивается сразу на целых 500 килобайт! И даже в заархивированном виде проект весит значительно больше, чем вставленная картинка весом всего в 30 кило. В чём тут дело, разбираться не будем. А посоветуем, как избежать значительного увеличения размера проекта абсолютно без потери качества. Просто вместо того, чтобы вставлять картинку как объект Bitmap, положите ее во внедренные файлы. А при старте проекта командой ReplaceImage() загрузите ее в объект Bitmap: ReplaceImage("Bitmap","<Embedded>\image.jpg") Размер проекта при этом увеличится ровно на те самые 30 килобайт.
Да пребудет с вами ММВ!
Сообщение отредактировал as-master - Суббота, 07 Апреля 2007, 19:55 |
|
| |
toizy | Дата: Суббота, 07 Апреля 2007, 21:37 | Сообщение # 2 |
Студийная субстанция
Группа: Администраторы
Сообщений: 2309
Репутация: 29
Награды: 12
Статус: Offline
| А причина такого странного, на первый взгляд, поведения заключается в том, что ММВ перед вставкой картинки преобразует её в несжатый формат.
Жизнь оказалась не такой уж и забавной, как поначалу...
|
|
| |
as-master | Дата: Суббота, 07 Апреля 2007, 21:47 | Сообщение # 3 |
Разводящий
Группа: Модераторы
Сообщений: 2337
Репутация: 101
Награды: 5
Статус: Offline
| Quote (toizy) | ММВ перед вставкой картинки преобразует её в несжатый формат | А вот это тем более странно, если учесть, что изображения, которые мы загружаем в качестве растровых кнопок, наоборот, сразу сильно сжимаются. Например, вставляешь три картинки для кнопки из tif или bmp файлов, скажем, по 20 кило каждая. А размер проекта вместо ожидаемых 60 килобайт увеличивается... всего на 5-10. И еще. Если картинка вставлена из png или gif файла, то никакого увеличения размера не происходит. В смысле, размер проекта увеличивается лишь на размер вставленной картинки. Особенно это точно для gif файлов.
Да пребудет с вами ММВ!
|
|
| |
toizy | Дата: Суббота, 07 Апреля 2007, 22:13 | Сообщение # 4 |
Студийная субстанция
Группа: Администраторы
Сообщений: 2309
Репутация: 29
Награды: 12
Статус: Offline
| Короче, ты чё-то прав по ходу. Я сейчас посмотрел - не совсем несжатый формат получается. Типа маска какая-то, она потом зажимается zlib'ом и так хранится. Я попробовал сам пожать эту шнягу и вышло куда меньше, чем у ММВ. Не знаю, в чём тут дело. Кстати, так же и видео сжимается, в какое-то подобие растровой картинки, а потом в злибится и храниться. Вот только почему оно не жмётся по полной программе, остаётся загадкой. Возможно, просто для того, чтобы сэкономить время на загрузку картинки. Предлагаю забить
Жизнь оказалась не такой уж и забавной, как поначалу...
Сообщение отредактировал toizy - Суббота, 07 Апреля 2007, 22:14 |
|
| |
Alex3A | Дата: Суббота, 07 Апреля 2007, 22:14 | Сообщение # 5 |
Друг клуба ММВ
Группа: Проверенные
Сообщений: 2646
Репутация: 39
Награды: 11
Статус: Offline
| ==ReplaceImage("Bitmap","<Embedded>\image.jpg") Вполне правильно, в проекте держать можно, только то что по тем или иным причинам нельзя подгрузить динамически. А то что вас заботит увеличение размера, не стоит об этом заботится, ммв обрабатывает любую картинку, делая ее лицензионно прозрачной. Так что рекомендую пропускать всю графику через ммв, в критичных случаях, конечно.
|
|
| |
toizy | Дата: Суббота, 07 Апреля 2007, 22:26 | Сообщение # 6 |
Студийная субстанция
Группа: Администраторы
Сообщений: 2309
Репутация: 29
Награды: 12
Статус: Offline
| Quote (Alex3A) | ммв обрабатывает любую картинку, делая ее лицензионно прозрачной. | А, так вот что! Типа, мы пережмём это в свой формат, чтобы пёс носа не подточил?!Добавлено (07 Апреля 2007, 22:26) --------------------------------------------- И всё равно не врубаюсь я, почему, ну почему ММВ не жмёт картинку максимально? Такое впечатление, что искали середину, а не думали, как будет лучше. Ведь если мне надо будет ускорить запуск, я графику выложу в отдельную папку.
Жизнь оказалась не такой уж и забавной, как поначалу...
|
|
| |
as-master | Дата: Суббота, 07 Апреля 2007, 22:51 | Сообщение # 7 |
Разводящий
Группа: Модераторы
Сообщений: 2337
Репутация: 101
Награды: 5
Статус: Offline
| Quote (Alex3A) | А то что вас заботит увеличение размера, не стоит об этом заботится | ну как же не стоит, если программы потом в интернете выкладываешь... Quote (toizy) | я графику выложу в отдельную папку | ну да, кроме случаев, когда ты хочешь прогу сделать одним исполняемым файлом. Quote (toizy) | ну почему ММВ не жмёт картинку максимально? | А вот если сунуть-таки картинку прямо на форму, а потом выполнить "Файл - Сжать и экспортировать", где выбрать максимальное сжатие, то файл-таки уменьшится весьма сильно (правда, и графика ухудшится). Как же в этом случае жмёт ММВ?
Да пребудет с вами ММВ!
|
|
| |