Skip to content

andrijacenic/Image-Viewer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Image Viewer

Is a OpenGL application for viewing and editing images. The aplication uses OpenGL and Dear ImGui to render images to the screen.

Normal viewing

Normal viewing

Rotated+zoomed viewing

You can rotate and view the image with that rotation Ctrl + scroll = rotation Scroll = zoom

Normal viewing

Fullscreen viewing

To return to windowed mode press the esc key

Normal viewing

The edit menu

Normal viewing

Editing the image

Normal viewing

Save options

Normal viewing

Comands

  • Q, E - rotate the image by 90deg
  • W, A, S, D - translate the view by a small amount
  • Scroll - zoom in/out the view
  • Ctrl + Scroll - rotate the view
  • Click + drag - move the view
  • R - reset the view transformations
  • <- -> - change the selected image
  • Click on the image strip image - changes the selected image to that image
  • Esc - change to windowed mode

Libraries

Libraries used are : GLFW, Dear ImGui (OpenGL with GLFW), GLAD and stb(stb_image, stb_image_write)

Building

For the GLFW, Dear ImGui and GLEW i used vcpkg and for stb follow the example on github.

library used version description
imgui 1.89.9 C++ GUI library (opengl3 and glfw bindings)
GLFW 3.3.8#2 OpenGL library
GLAD 0.1.36 Vulkan/GL/GLES/EGL/GLX/WGL Loader-Generator based on the official specifications for multiple languages
stb latest including stb_image and stb_image_write

Special thanks to @fairlight1337 for hsv conversion