|
2 周之前 | |
---|---|---|
Makefile | 2 周之前 | |
README.md | 2 周之前 | |
grxiv | 2 周之前 | |
grxiv.cpp | 2 周之前 | |
grxiv.moc | 2 周之前 | |
grxiv.o | 2 周之前 | |
grxiv.pro | 2 周之前 | |
moc_predefs.h | 2 周之前 |
grxiv (Grannik X Image Viewer)— это простой и эффективный просмотрщик изображений, написанный на C++ с использованием библиотек Qt и OpenGL. Программа позволяет просматривать изображения в заданной директории или отдельный файл, поддерживает масштабирование с помощью колеса мыши и навигацию по изображениям с помощью клавиш. Проект оптимизирован для работы на Linux (в частности, протестирован на Ubuntu 22.04) и использует OpenGL для рендеринга изображений.
.jpg
, .jpeg
, .png
, .bmp
, .gif
.←
(предыдущее) и →
(следующее).Q
для выхода из программы.qmake
и make
.Для сборки и запуска grxiv
необходимы следующие зависимости:
qmake
и make
Для Ubuntu выполните следующую команду, чтобы установить необходимые пакеты:
sudo apt-get install qt5-default libqt5opengl5-dev build-essential
Проверьте наличие Qt:
qmake --version
Проверьте поддержку OpenGL:
glxinfo | grep "OpenGL version"
Склонируйте репозиторий или скопируйте файлы проекта в локальную директорию:
git clone <URL_репозитория>
cd grxiv
Очистите проект от старых сборочных файлов (если они есть):
make clean
Сгенерируйте Makefile
с помощью qmake
:
qmake grxiv.pro
Соберите проект:
make
После успешной сборки в директории появится исполняемый файл grxiv
.
Чтобы запускать grxiv
из любой директории, скопируйте исполняемый файл в
sudo cp grxiv /usr/local/bin/
Запустите программу, указав путь к изображению или директории с изображениями:
./grxiv /path/to/the/image.jpg
Или для директории:
./grxiv /path/to/the/directory/
←
— предыдущее изображение.→
— следующее изображение.Q
для выхода.При запуске программа выводит в консоль полезную информацию, такую как:
Пример вывода:
OpenGL version: 4.6 (Compatibility Profile) Mesa 23.2.1
GLSL version: 4.60
Shaders initialized successfully
Loading image: "/home/user/Pictures/MyPictures/image.jpg"
Image loaded successfully. Size: QSize(768, 768)
Context active: true
Texture updated
grxiv.cpp
: Основной исходный код программы, реализующий логику просмотра изображений.grxiv.pro
: Файл проекта для qmake
, содержащий настройки сборки.grxiv.moc
: Сгенерированный файл для поддержки механизма сигналов и слотов Qt.Ошибка: QOpenGLTexture::setData() requires a valid current context
Убедитесь, что OpenGL-контекст инициализирован корректно. Текущая версия кода решает эту проблему, загружая изображения после инициализации OpenGL.
Изображения не отображаются
.jpg
, .png
, и т.д.).paintGL
для проверки рендеринга.Ошибки компиляции Убедитесь, что все зависимости установлены:
sudo apt-get install qt5-default libqt5opengl5-dev
Проект распространяется под лицензией MIT.
Grannik