Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Как уменьшить размер изображения в 10 раз с хорошим качеством? (http://www.flasher.ru/forum/showthread.php?t=141501)

1g0rrr 26.06.2010 17:16

Как уменьшить размер изображения в 10 раз с хорошим качеством?
 
У меня есть растровое изображение, которое мне нужно уменьшить. При использовании метода draw в BitmapData, выставляю параметр smoothing = true. Это помогает сглаживать изображение при уменьшении на небольшой процент, до 0.5. Вот тут всё ок: http://i049.***********/1006/59/3a3cc1078d60.png

Если же я еще больше уменьшаю изображение, то оно становится некрасивым с большими квадратиками. Вручную можно гораздо аккуратнее сжать. Вот тут, сжато в 10 раз, очень некрасиво: http://s06.***********/i179/1006/9e/d639dd9c70aa.png

Можно ли как-то программно сжимать такие картинки, чтобы качество оставалось приемлимым, или прийдётся вручную создать уменьшенные картинки, увеличив тем самым размер готовой флэшки?

wvxvw 26.06.2010 19:13

Если есть возможность то лучше вручную.

ShockWave512 26.06.2010 19:28

- такое впечатление что smoothing просто не работает

- если же он точно работает, тогда выходом может стать векторизация логотипа

1g0rrr 26.06.2010 20:08

Цитата:

Сообщение от wvxvw (Сообщение 918260)
Если есть возможность то лучше вручную.

Ясно. Думаю, так и сделаю, хоть и не хочется. Таких логотипов там около сотни.

Добавлено через 1 минуту
Цитата:

Сообщение от ShockWave512 (Сообщение 918261)
- такое впечатление что smoothing просто не работает

- если же он точно работает, тогда выходом может стать векторизация логотипа

Вроде работает. Первое изображение - это scale = 0.8. Тоесть сгладилось нормально. При scale = 0.1 тоже есть различия при включенном и при выключенном smoothing. Тот что я выложил - это при включенном.

alatar 26.06.2010 21:13

Можно попробовать уменьшать поэтапно с отрисовкой в битмап с включенным сглаживанием.

VVall 26.06.2010 21:22

При уменьшении в 10 раз в один пиксель попадает цвет максимум 4-х пикселей из 100. Поэтапное уменьшение вдвое до ближайшего размера, а потом до требуемого, должно дать более приличный результат.

chabapok 27.06.2010 01:43

посмотреть бы на это же изображение, сжатое вручную. Чтобы знать куда вы хотите стремиться.

1g0rrr 27.06.2010 04:07

Цитата:

Сообщение от VVall (Сообщение 918277)
При уменьшении в 10 раз в один пиксель попадает цвет максимум 4-х пикселей из 100. Поэтапное уменьшение вдвое до ближайшего размера, а потом до требуемого, должно дать более приличный результат.

Хм.. Я как-то до этого не додумался. Сжал как вы говорите, два раза, результат - неожиданно как раз тот, что надо. :cool: Итоговое изображение сжалось гладко и выглядит симпатично.
Вот сжатое дважды по 0.5:
http://i077.***********/1006/f2/e614f9a12fa6.png
А вот два раза по 0.4 - гораздо лучше, чем было раньше:
http://s15.***********/i189/1006/ce/a106d0d8817c.png
Три раза сжимать по 0.6 - уже слишком мутно получается.

VVall 27.06.2010 04:17

Мутность добавляется, помимо собственно сжатия, из-за того, что вы сжимаете не ровно вдвое. Допустим, надо получить из 100x100 10x10 - лучше сжать сначала до 50x50, потом 25x25, потом уже до 10x10 (некратность только в этом шаге).

dimarik 27.06.2010 18:10

Метод половинного деления )


Часовой пояс GMT +4, время: 22:44.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.