![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| m0zg |
|
||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 177 Регистрация: 30.7.2007 Репутация: нет Всего: 2 |
Есть такой код:
Перекодируется всё правильно, но вот проблема с кол-вом цветов. Вылетает эксепшн "too many colors for a GIF". Как здесь это исправить? GifEncoder имеет следующие конструкторы:
|
||||
|
|||||
| m0zg |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 177 Регистрация: 30.7.2007 Репутация: нет Всего: 2 |
Поставлю вопрос по-другому
|
|||
|
||||
| Connie |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 382 Регистрация: 12.8.2008 Репутация: 8 Всего: 9 |
m0zg, дело в том, что gif использует не просто 256 цветов, а палитру цветов, т.е. грубо говоря это может быть очень плавный переход от светлоголубого к темносинему. И будет 256 голубых и синих цветов, а белого ни одного. А может быть только 2 цвета.
Т.е. просто уменьшить кол-во цветов не выйдет, нужна конвертация, зачастую автоматическая не всегда устраивает. ИМХО, надо искать такой способ где то в графических редакторах А нет разве возможности использовать png? |
|||
|
||||
| m0zg |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 177 Регистрация: 30.7.2007 Репутация: нет Всего: 2 |
Для PNG я уже сделал. У меня задача следующая: на вход поступает SVG, на выходе нужно конвертировать в JPG, PNG и GIF. Всё сделал, кроме GIF'a. Для ковертации в GIF и PNG использую batik. Но в GIF он ковертировать не умеет, вот и пытаюсь найти другие способы, найти какие-нибудь GifEncoder'ы. Сейчас у меня уже дело дошло до того, что я с помощью batik'a сначала получаю png, а потом пытаюсь конвертировать его в gif. Но пока безуспешно. Т.е. работает, но только если я на вход подаю буквально пару линий, иначе эксепшн.
|
|||
|
||||
| w1nd |
|
|||
![]() Вертилятор ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1077 Регистрация: 22.3.2006 Где: Москва Репутация: 23 Всего: 54 |
Можно создать нужное изображение с помощью BufferedImage, в качестве типа указав TYPE_BYTE_INDEXED.
-------------------- ![]() ![]() |
|||
|
||||
| Connie |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 382 Регистрация: 12.8.2008 Репутация: 8 Всего: 9 |
m0zg,
Вот тут не совсем то, но может выйдет? http://blog.codebeach.com/2007/06/convert-...ng-in-java.html Вот это использует внешнюю программу http://www.coderholic.com/png2gif/ но я не знаю применимо ли это в java :( вот еще немного накопал http://forums.sun.com/thread.jspa?forumID=...hreadID=5162199 А вот кажется по сути вопроса http://forums.sun.com/thread.jspa?forumID=...threadID=507271 Это сообщение отредактировал(а) Connie - 7.9.2008, 20:58 |
|||
|
||||
| m0zg |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 177 Регистрация: 30.7.2007 Репутация: нет Всего: 2 |
Connie, спасибо огромное! Кажется, на sun'овском форуме то, что надо. Проверю и сообщю результат
|
|||
|
||||
| m0zg |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 177 Регистрация: 30.7.2007 Репутация: нет Всего: 2 |
Всё хорошо, только вместо прозрачных пикселей отображаются чёрные
|
|||
|
||||
| Connie |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 382 Регистрация: 12.8.2008 Репутация: 8 Всего: 9 |
m0zg, посмотри второй пост DrLaszloJamf, там была подобная проблема, по последней ссылке. Написано, что решено, но не написано как.
|
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, jk1. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: GUI и Java FX приложения | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |