Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Определение цвета графического файла по координате, Есть ли библиотеки для CPP? 
:(
    Опции темы
Proger10
Дата 28.3.2009, 23:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 312
Регистрация: 16.12.2008

Репутация: нет
Всего: нет



Почитал в соседней теме 5 страниц на тему того как люди пытались получить из BMP файла цвет точки по её координате.
Но. А если файл не BMP, если например JPG, GIF, PNG..? По каждому писать свой код, где программировать спецификацию формата?

Неужели для C++ нет библиотеки для работы с графическими файлами, которая позволила бы делать подобное гораздо проще?
(которую можно было бы использовать под компилятором G++ (GNU GCC) кроссплатформенно)

Это сообщение отредактировал(а) Proger10 - 28.3.2009, 23:51
PM MAIL   Вверх
mes
Дата 28.3.2009, 23:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Цитата(Proger10 @  28.3.2009,  22:44 Найти цитируемый пост)

Неужели для C++ нет библиотеки для работы с графическими файлами, которая позволила бы делать подобное гораздо проще? 

есть и много но людям хочется самостоятельно разобраться smile



--------------------
PM MAIL WWW   Вверх
Proger10
Дата 28.3.2009, 23:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 312
Регистрация: 16.12.2008

Репутация: нет
Всего: нет



А.. ну тогда это похвально конечно smile

А можно ли привести пример такой, которую можно было бы использовать под компилятором G++ (GNU GCC) кроссплатформенно?

Это сообщение отредактировал(а) Proger10 - 28.3.2009, 23:51
PM MAIL   Вверх
cutwater
Дата 29.3.2009, 01:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 592
Регистрация: 24.6.2008

Репутация: 2
Всего: 10



ImageMagick
GimpAPI
boost::gil
средства gtk (не уверен)
средства QT

может еще что вспомню.



--------------------
user posted image
PM MAIL   Вверх
Proger10
Дата 29.3.2009, 16:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 312
Регистрация: 16.12.2008

Репутация: нет
Всего: нет



Под линуксом очень люблю пользоваться ImageMagick'ом. Обалденная вещь. С огромной радостью узнал, что у них есть такой проект как Magick++: http://www.imagemagick.org/Magick%2B%2B/ (C++ API для ImageMagick)
Поэтому копаю пока что в эту сторону.

Кстати, она АПИ доступно и на других языках: http://magick.imagemagick.org/script/api.php

Документация апи: http://magick.imagemagick.org/Magick++/Documentation.html
В частности низко-уровневая работа с пикселями: http://magick.imagemagick.org/Magick++/Pixels.html

Там указан пример компиляции программ с использованием ImageMagick API для Юниксовых систем:
c++ -o example example.cpp `Magick++-config --cppflags --cxxflags --ldflags --libs`

А для винды насколько я понял нужно таскать за собой ДЛЛки ИмиджМэджика..
cutwater, как я понимаю, кроссплатформенности не получается? Как я понимаю в общем дистрибе (кросс-платформенном) прийдётся таскать и либы для винды, и либы для юникса (, и либы для макоси)...
Или есть другой менее габаритный способ использования?
PM MAIL   Вверх
cutwater
Дата 29.3.2009, 16:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 592
Регистрация: 24.6.2008

Репутация: 2
Всего: 10



а) низкоуровневая работа с пикселями уныла и меня не порадовала. конкретно проблема Q8 и Q16
б) не порадовала убогая документация

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

 иначе советую задуматься о смене языка.

Добавлено через 1 минуту и 22 секунды
Цитата(Proger10 @  29.3.2009,  15:30 Найти цитируемый пост)
Как я понимаю в общем дистрибе (кросс-платформенном) 


Общего дистра кроссплатформенного никогда не будет. Будет отдельно под каждую платформу. Но Вам код изменять не придется. Конечно вы можете все засунуть в один дистр, но вот скажите зачем виндоюзеру нужна сборка под linux и macos.


--------------------
user posted image
PM MAIL   Вверх
Proger10
Дата 29.3.2009, 16:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 312
Регистрация: 16.12.2008

Репутация: нет
Всего: нет



А каким образом Вы работаете с пикселями?

Цитата
Конечно вы можете все засунуть в один дистр, но вот скажите зачем виндоюзеру нужна сборка под linux и macos.

да, да, я именно об этом и говорил.
Скорее всего Вы действительно правы. Ограничиться нужно только тем, что код изменять не требуется. Код компилить под разную платформу это ясное дело. smile Ну и таскать разный набор файлов.
Сорри, просто, наверное как Вы поняли уже smile, я Java программист.


PM MAIL   Вверх
mes
Дата 29.3.2009, 16:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Цитата(Proger10 @  29.3.2009,  15:30 Найти цитируемый пост)
cutwater, как я понимаю, кроссплатформенности не получается? Как я понимаю в общем дистрибе (кросс-платформенном) прийдётся таскать и либы для винды, и либы для юникса (, и либы для макоси)...

eсли Вы имeете кроссплатформенность на уровне машинного кода ,то, увы, такое недосягаемо (для cpp),
а если на уровне исходного кода - то тогда для каждой оси свой дистриб smile



Это сообщение отредактировал(а) mes - 29.3.2009, 16:45


--------------------
PM MAIL WWW   Вверх
cutwater
Дата 29.3.2009, 16:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 592
Регистрация: 24.6.2008

Репутация: 2
Всего: 10



Нужно было написать небольшую утилиту аля стеганография. Вобщем ImageMagick в этом плане заставил повеситься в плане работы с цветом между Q8 и Q16 сборкой. Так мне никто толком и не ответил по данной теме.
В итоге переписал на Python + PIL

Но это лично мои косяки и я все же надеюсь когда-нибудь найду ответ. Все таки не хотелось бы из-за этого отказываться от пакета ImageMagick.


--------------------
user posted image
PM MAIL   Вверх
Proger10
Дата 29.3.2009, 18:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 312
Регистрация: 16.12.2008

Репутация: нет
Всего: нет



cutwater, а ты разработчикам ImageMagick (точнее Magick++) не писал? может они чем бы смогли помочь..
PM MAIL   Вверх
cutwater
Дата 29.3.2009, 21:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 592
Регистрация: 24.6.2008

Репутация: 2
Всего: 10



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




--------------------
user posted image
PM MAIL   Вверх
Proger10
Дата 29.3.2009, 23:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 312
Регистрация: 16.12.2008

Репутация: нет
Всего: нет



зато с проблемой бы разобрался, а то из-за этого приходится не использовать такую мощную штуку! smile
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0496 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.