На основе libjpeg-turbo и OpenJPEG реализована поддержка кодирования и декодирования в памяти изображений форматов JPEG и JPEG2000 (J2K) на C++11.
Примечание:
Если вам нужно только реализовать декодирование изображений JPEG в памяти, то можно использовать CImg, см. мой блог:
Conan — это менеджер пакетов для разработчиков на C и C++. Conan может управлять любым количеством двоичных файлов для разных конфигураций сборки, включая разные архитектуры, компиляторы, версии компиляторов, среды выполнения, стандартные библиотеки C++ и т. д. Это значительно упрощает кроссплатформенную сборку проектов и повышает эффективность работы.
Начиная с версии jpegwrapper-1.1.0, поддерживается сборка с помощью Conan, поэтому для сборки требуется поддержка Conan 2.x. Если вы устанавливаете Conan, обратитесь к статье «Conan для начинающих (1): установка Conan и JFrog Artifactory — руководство по Conan».
Если вам нужен код, который не поддерживает Conan, переключитесь на версию jpegwrapper-1.0.0.
git clone https://gitee.com/l0km/jpegwrapper.git
Требуется CMake (версия 3.15 или выше).
Компиляция с использованием Visual Studio 2015, выполните команду make_msvc_project.bat
в командной строке Windows.
Используйте MinGW для компиляции, выполните mingw_build.bat
, чтобы создать 32- или 64-битную программу в зависимости от версии компилятора MinGW. Для компилятора SJLJ можно создать как 32-, так и 64-битные библиотеки.
Для компиляции под Linux обратитесь к скрипту gnu_build.sh
. Возможно, потребуется изменить скрипт в соответствии с вашей системой Linux.
Статические библиотеки находятся в папке release.
Чтобы скомпилировать тестовую программу под Linux, вам потребуется поддержка libX11. Если её нет, установите её, например, в CentOS:
sudo yum install -y libX11-devel
Основной код небольшой:
См. прилагаемый тестовый код testCImg.cpp.
Пример поиска jpegwrapper с помощью cmake:
find_package(jpegwrapper CONFIG REQUIRED)
Пример использования jpegwrapper в скрипте cmake:
target_link_libraries(test_jpegwrapper jpegwrapper::jpegwrapper)
target_include_directories (test_jpegwrapper PUBLIC ${OPENJPEG_INCLUDE_DIRS})
Полный пример использования cmake для поиска jpegwrapper см. в test/CMakeLists.txt.
Процесс создания примера вызова в VS2015 см. в test/make_msvc_project.bat.
Создание Makefile для Unix см. в test/make_unix_makefile.sh.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )