Giter Club home page Giter Club logo

kanryu / quickviewer Goto Github PK

View Code? Open in Web Editor NEW
532.0 532.0 63.0 12.33 MB

A image/comic viewer application for Windows, Mac and Linux, it can show images very fast

Home Page: https://kanryu.github.io/quickviewer/

License: GNU General Public License v3.0

QMake 0.85% C 12.49% C++ 82.98% GLSL 0.01% Makefile 0.96% Batchfile 0.01% Shell 0.09% QML 0.06% CMake 0.46% Assembly 0.38% NSIS 0.10% Lua 0.08% NASL 0.01% HTML 1.37% CSS 0.15% Pawn 0.01%
c-plus-plus comic image-processing linux-app mac-app manga opengl qt viewer

quickviewer's Introduction

日本語 / English

QuickViewer

An image/comic viewer for Windows, Mac, and Linux. It can show images very fast!

github tag github downloads github last commit opencollective backers opencollective contributors opencollective balance opencollective yearly Join the chat at https://gitter.im/kanryu/quickviewer

Project Website (in English/Japanese)

Summary

  • Fast viewing (using OpenGL)
  • Cross-platform (Windows, macOS, Linux)
  • Portable (no installer needed, does not write to registries, does not need external libraries)
  • Double-page spread view (displaying of two images at once: handy for digital books/comics)
  • Direct reading of archives (zip/7z/rar/cbz/cb7/cbr/cab/tar.gz/tar.bz2/tar.xz, and more)
  • View many different types of images (bmp/png/jpeg/ico/dds/tga/tiff/gif)
    • Supports modern formats (JPEG 2000 / JPEG XR / WebP)
    • Supports Animated PNG (APNG) and GIF
    • Auto-rotation (using JPEG Exif)
  • View RAW images from digital cameras:
    • Canon (crw/cr2)
    • Nikon (nef)
    • Sony (arw)
    • Ricoh (dng)
    • more
  • Create/view/search through the catalogs from thousands of your digital books
  • Multilingual support (English/Spanish/French/Greek/Japanese/Arabic/Russian/Simplified Chinese)

Download

Binary Distributions

  • Windows .zip (x86/x64)
  • Mac .dmg (x64) (until v1.1.1)
  • Linux .AppImage (x64) (until v1.1.1)

Contributing

Contributions go far beyond pull requests and commits to the code. We would love to give you an opportunity to put your stamp on QuickViewer. We also are thrilled to receive a great variety of other contributions, including:

  • Documentation updates, enhancements, designs, or bugfixes
  • Spelling or grammar corrections
  • Addition of another language translations, especially of your native language — this is very easy
  • README.md corrections or redesign
  • Adding unit or functional tests
  • Testing GitHub issues — especially determining whether an issue still persists and is reproducible
  • Blogging, chatting, tweeting

We contracted with OpenCollective to allow this project to accept donations. Your one-time or ongoing financial contributions will help us improve QuickViewer's capabilities and make it easier to use on each device.

https://opencollective.com/quickviewer

Screenshots

Single page view

1 page viewing

Double-page spread view

Spread viewing

Stripped view

If you want, you can remove all attached bars, and display images alone. Hidden bars are displayed automatically upon hovering over the top or bottom of the program window.

Stripped viewing

How to use

  • Execute QuickViewer and then drag and drop an image, folder, or archive onto the window.
  • Create a shortcut to QuickViewer and then drag and drop an image, folder, or archive onto it.

Features

  • Next Page (press 'Right Arrow Key', 'Mouse wheel down', 'Mouse forward button', or click left edge of the window)
  • Previous Page (press 'Left Arrow Key', 'Mouse wheel up', 'Mouse back button', or click right edge of the window)
  • Fullscreen (press 'F11 Key', click Mouse wheel, or 'Esc Key' (to windowed only))
  • Auto load the view (restore last book when application is executed)
  • Fitting (fit images to the size of the window)
  • Double-page spread view (show two images simultaneously)
    • Bound to the right side (e.g. Japanese Style)
  • Pages' pre-loading (since v0.2.0)
  • Exif Information (since v0.3.0)
  • Open location of the current image with Windows Explorer
  • Put the current image into your mailer
  • Shader Program Filters (since v0.5.1):
    • Nearest Neighbor
    • Bilinear
    • Bicubic by GPU (obsolete since v0.9.3)
    • Lanczos (obsolete since v0.9.3)
    • Bicubic by CPU
    • Lanczos3 by CPU (since 1.0.9)
    • Lanczos4 by CPU (since 1.0.9)
  • Catalog (since v0.6.0)
    • Database for your digital books, can manage thousands of volumes: quick view and search
  • File Associations (since v0.8.3)
  • Retouching (change Brightness, Contrast, Gamma value) (since 1.0.8).

Screen operations

You can perform screen operations with the main menu, toolbar, mouse button, wheel, keyboard, and so on.

Operation  Device Input Remarks
Next Page Keyboard Right Key(→)
Keyboard Space Key
          Mouse Wheel Downward scrolling
          Mouse Forward Button 
          Touch Panel Swipe left At the bottom of the screen
Prev Page Keyboard Left Key(←)
Keyboard BackSpace Key
          Mouse Wheel Upward scrolling
          Mouse Back Button
          Touch Panel Swipe right At the bottom of the screen
First Page Keyboard Home Key
Last Page Keyboard End Key
Next Volume Keyboard Page Down Key Open neighboring folder/archive
Prev Volume Keyboard Page Up Key Open neighboring folder/archive
Fullscreen Keyboard F11 Key
          Mouse Wheel Clicked A Middle Button
          Keyboard ESC Key Fullscreen mode only
          Touch Panel Swipe up with two fingers
Exit App Keyboard ESC Key Except in Fullscreen mode
Scale Up Keyboard Ten keys(+) Do nothing with Fitting
Scale Down Keyboard Ten keys(-) Do nothing with Fitting
Fitting Keyboard F12 Key
Keyboard Ten keys(-)
          Mouse Right Button + Wheel Clicked
          Mouse Ctrl + Wheel Clicked
Image to trash box Keyboard Delete Key Move the Image of current page to trash box
Rename Image Keyboard F2 Key
Copy Image Keyboard Ctrl+C Key Copy Image of current page
Zoom in  Mouse Wheel Right Button + Upward scrolling
Mouse Wheel Ctrl + Upward scrolling
Zoom out  Mouse Wheel Right Button + Downward scrolling
Mouse Wheel Ctrl + Downward scrolling

System Requirement

  • Operating System
    • Windows Vista, 7 or newer
    • Windows Sever 2008 or newer
    • Linux Distributions (Ubuntu, Kubuntu, Fedora, etc.)
  • CPU
    • minimum Dual Core (the more the better; with internal or external GPU)
    • strongly recommended an x64 architecture
  • RAM
    • more than 1GB of free memory.

Looking for contributors!

  • Portuguese/Hindu/Bengali/Malay speakers
  • Mac/Linux software developers.

Report issues

Public Project Issues: https://github.com/kanryu/quickviewer/issues

Please report issues along with configuration details of your QuickViewer's working installation at [email protected].

Your feedback is always welcome at KATO Kanryu <[email protected]>.

Project Source Code Repository

https://github.com/kanryu/quickviewer

To build from the source code, visit: HowToBuild.md.

License

This program is distributed in hopes to be useful and to be used, but WITHOUT ANY WARRANTY—without even implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See GNU General Public License for more details.

https://github.com/kanryu/quickviewer/blob/master/LICENSE

quickviewer's People

Contributors

dandv avatar geogeo-gr avatar gitoffthelawn avatar gitter-badger avatar kanryu avatar pazos avatar rurigk avatar sakkamade avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

quickviewer's Issues

Support for metadata from JPEG/Raw images

Hi,

There are some metadata specification e.g. Exif, IPTC, XMP.
QuickViewer currently understands some JPEG Exif using easyexif, but it is inadequate.
Obtaining metadata from Raw images has not worked well.

If you know a better way, please show me.

I think that Exiv2 is one of the better options, but the library seems to be big.

Open files from root location

When an image is opened from the root location, the program stops responding.

With the default settings the program opens, but the image is not displayed unless you go to the next one and then go back.

Feature Suggestions: Fit to width, Allow for tittlebar to be hidden, only one single instance.

Fit to width (like "fitting" but ignores height) -
https://i.imgur.com/3vY2woS.png - fit to window "fitting"
https://i.imgur.com/xuu96r4.png - fit to width

Allow for tittle bar to be hidden -
https://i.imgur.com/UBYYJ2V.png - tittle bar showing
https://i.imgur.com/QUwhoFk.png - without tittlebar

If you need help with this maybe you can look trough mpv's code?
https://github.com/mpv-player/mpv/
or https://github.com/rossy/borderless-window

Single instance - Only allow one process to be open; Only allow one of the same program to be open

Allow for brackets " [ ] " to be removed just like " ( ) " are in the catalog

Crash on incorrect file

if a file, folder, sub-folder or zip contains a file with incorrect type (any of these 4 cases)
quickviewer will crash where other apps report incorrect file type

as an example I tried opening a folder that contained sample.pdf that was incorrectly named as sample.png

Supports touch panel input

QuickViewer supports touch panel input from the next release.

Currently it corresponds to the following input:

  • Right Left swipe at the bottom of the screen
    • Next Page
  • Left Right swipe at the bottom of the screen
    • Prev Page
  • Right swipe at the bottom of the screen with two fingers
    • Next One Page
  • Left swipe at the bottom of the screen with two fingers
    • Prev One Page
  • Swipe up with two fingers
    • Fullscreen

If you have the operation method you desire and corresponding action, please comment :)

QuickViewer doesn't put itself into Windows registry

Because of this it can't be assigned as default viewer for images. The OS has absolutely zero knowledge of the fact that QuickViewer even exists.

How to fix:
Follow the MSDN article and put QuickViewer information into registry.
Specifically to QuickViewer, i would propose this way of creating filetype keys:

  • Call QImageReader::supportedMimeTypes() to get the list of supported MIME/type strings
  • For each MIME/type string call QMimeDatabase::mimeTypeForName() to get QMimeType object that represents that MIME/type
  • For each QMimeType object call QMimeType::comment() to get its human-readable name (description) and QMimeType::suffixes() to get the list of its usual suffixes (i.e. file extension​s)
  • For each MIME/type string foo/bar create the following key: HKEY_LOCAL_MACHINE\SOFTWARE\Classes\QuickViewer.AssocFile.foo_bar (replacing '/' with '_', and doing any other necessary substitutions to remove characters that are illegal in key names), set its (Default) value to the human-readable description obtained from QMimeType
    • If a special icon is available for this format (it has to be either an .ico file or an .ico file stored as a resource in a DLL), create HKEY_LOCAL_MACHINE\SOFTWARE\Classes\QuickViewer.AssocFile.foo_bar\DefaultIcon and set its (Default) value to the icon path (path to .ico file or path\to\file.dll,x where x is the resource index)
    • Create HKEY_LOCAL_MACHINE\SOFTWARE\Classes\QuickViewer.AssocFile.foo_bar\shell\open, set its (Default) value to "View with QuickViewer"
    • Create HKEY_LOCAL_MACHINE\SOFTWARE\Classes\QuickViewer.AssocFile.foo_bar\shell\open\command, set its (Default) value to "path\to\quickviewer.exe" "%1"
  • Create HKEY_LOCAL_MACHINE\SOFTWARE\QuickViewer (MSDN article describes this in more detail), then create HKEY_LOCAL_MACHINE\SOFTWARE\QuickViewer\Capabilities (again, fill out the values as required - ApplicationDescription, ApplicationIcon, ApplicationName etc), then HKEY_LOCAL_MACHINE\SOFTWARE\QuickViewer\Capabilities\FileAssociations
    • For each file extension foo that is a possible suffix for MIME/type foo/bar create a string value named .foo and set it to QuickViewer.AssocFile.foo_bar
  • Create HKEY_LOCAL_MACHINE\SOFTWARE\RegisteredApplications key (if it doesn't exist) and set its QuickViewer value to Software\QuickViewer\Capabilities
  • Finally, iterate over all HKEY_LOCAL_MACHINE\SOFTWARE\Classes\QuickViewer.AssocFile.* keys and delete the ones that do not correspond to supported MIME/types.

This can be done from the QuickViewer application itself, somewhere in Options. Consider doing two buttons (one does all of the above, the other does all of the above, but in HKEY_CURRENT_USER tree instead of HKEY_LOCAL_MACHINE; the former will require administrative privileges, obviously). Either way, after doing all this the button should call up the OS Default Applications Settings window (i forgot how to do that; there should be an API, or maybe you can run something to make it appear; google for it)

Human-readable strings can be localized.

Apart from FileAssociations subkey there's also MimeAssociations, but i'm not sure how useful they would be, as Windows doesn't seem to be able to launch stuff based on MIME/types in most circumstances.

HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Applications\QuickViewer (as mentioned in MSDN article) creation will only allow QuickViewer to be present in OpenWith list, but it could be a good starting point.

I have no idea whether Qt has API for working with the registry. If it doesn't, you'll have to use W32 API.

Another developer quickstart trick - write stuff into .reg file (it's UTF-16-LE-encoded, without BOM) instead of actually creating keys and values in the registry, then you can load this file into the registry manually and check how it works, without mucking around with the registry APIs.

Install some application that already knows how to do this, then observe the keys it creates. That should help a lot.

Don't touch HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.foo and other keys that start with a .

Support for Qt4

QuickViewer can build for Qt 4 if we make some fixes.

We have already made most of the fixes in this release, but since qobject::connect () calling methods are incompatible, we have not just started here.

By building with Qt 4, it will be possible to operate on Windows XP.
Currently about 4% of the world's Windows seems to be XP.

Comments?

Toolbar displaces the image in fullscreen mode

How to reproduce:

  • Open an image
  • Enable fullscreen mode
  • Observe that the toolbar at the top is not visible
  • Move the cursor toward the top edge of the screen

Expected result:

  • The toolbar appears along the top edge of the screen, overlaid on top of the image being displayed, the image itself doesn't move at all

Actual result:

  • The toolbar widget, which is a sibling widget packed together with the image, is made visible, and thus it appears, visibly displacing the image, so the image appears to be "jumping" down

Possible fixes:

  • Use an overlay to display the toolbar. I don't know whether Qt has overlay widgets though, you'll have to find that for yourself. In GTK you would have used GtkOverlay for this kind of thing. It might be possible to work around this by cleverly replacing the image being displayed with the same image that has some toolbar-sized part of it cut off at the top (in which case existing behaviour, where toolbar is a sibling widget, would not look as if it displaces the image, which fixes this cosmetic bug). But that's just barbaric, in my opinion.
  • Alternatively, always display the toolbar in fullscreen mode (thus it won't appear and disappear, preventing this cosmetic bug from being observed). Note that this is not mutually exclusive with existing behaviour (where the toolbar is hidden until the cursor is along the top edge of the screen), you can do both (and also apply the fix described above), and make an option to switch between these two different behaviours.

Support for Linux and Mac

Basically QuickViewer is designed to be portable to OS other than Windows.

Previously, I confirmed that I can build and run on Ubuntu Linux.

I would like to provide it in the future if Linux users need it.

However, since experience of binary distribution for Linux is insufficient, how to create it is unknown at this time.

Also, as for Mac, there is no development environment at the moment so it can not be provided.

stopped switching of images

When switching images frequently, pre-reading may not be in time to stop switching of images in some cases.
This is obviously an operation which is not assumed for the design, and it is a problem to be solved.

First of all, it is necessary to perform appropriate profiling and to analyze the mechanism that images can not be read in time.

Next, we consider means to solve the found problem. The current number of images to be prefetched and the number of prefetch threads are almost equal, which may be inappropriate allocation.

Very minor visual bug

If I rotate an image under some limited conditions the un-rotated image is kept in the background until another significant action forces a refresh
untitled1

This behaviour continues as I navigate through other images

untitled

Zoomed Image Positioning

Currently when a zoomed image is switched to the next. Image is scrolled to same position the previous image was. Would it be possible to reset scroller to top on switching images?
Thank you.

FR: Pointing device button actions

Can you add pointing device button actions?

Examples:

  1. Click (or double-click) to zoom (with zoom centered on that position).
  2. Select region to zoom via pointing device selection.
  3. Next/previous image.

Perhaps can be customizable via key config.

Multiple language support

I would like to support languages other than Japanese and English.

The language file is Qt standard ts (XML) format, anyone can join using Qt Linguist.

The following languages are planned:

  • Spanish
  • French
  • Chinese (Simplified)

Artifacts in JPG images

I see artifacts in JPG images, but when I convert that image to PNG this does not happen.
Sample (Note the color contours)

Key config not working in fullscreen mode

Hi!

Sometime between version 0.9.6 and 1.0.2, some controls stopped working when in full screen mode. For example, I have a following modified keyboard config:

actionNextPage="L, Right, Space, PgDown"
actionNextVolume=Ctrl+J
actionPrevPage="H, Left, Backspace, PgUp"
actionPrevVolume=Ctrl+K

In 0.9.6, when in fullscreen, I could use either Left or PgUp to go to the previous page and Right or PgDown to go to the next page. In 1.0.2, these keys work properly in normal view, but not in fullscreeen - then only Left and Right function, but PgUp and PgDown don't seem to be doing anything.

The same thing is true for:

actionFullscreen="F11, Return"
actionMaximizeOrNormal=Num+Enter

When in normal view, I can press Return to get to full screen, but once in fullscreen, Return is ignored. I don't know whether this was OK in 0.9.6, though.

Zoidberg.

Randomly crash when loading large images on x86

How to reproduce:

  • only x86(as long as confirmed)
  • Reading large images with vertical or horizontal exceeding 4096 pixels
  • Other than JPEG (including bmp)

Expected result:

  • Images are displayed

Actual result:

  • silently shut it down

Cause:

  • instance of QImage is destroyed on IFileVolume::futureLoadImageFromFileVolume()
  • No trouble does not occur without reduction processing by ResizeHalf
  • On the debugger it seems broken by clipping processing by QImage before ResizeHalf execution, but its behavior is mysterious

Mislabelled File Opening Error

When trying to open a mislabelled file as in a jpeg named png etc, will simply get a transparent background while other viewers seem to detect the correct format.

64-bit vs 32-bit versions

Thank you for writing and publishing this excellent application.

I see you are compiling both 64-bit and 32-bit versions.

Given that individual image sizes rarely exceed 100MB, what are the advantages/disadvantages of using the QuickViewer 64-bit vs the 32-bit version?

Improve Shader

Although the current Shader of QuickViewer has certain effects, it is insufficient compared with the capability that it can provide.

For Lanczos filters in particular, it is necessary to improve the behavior when shrinking to less than 25% size.

Although basically it is necessary to rewrite lanczos.frag, if there is a change in the specification of parameters passed from QuickViewer, it will also correspond.

A few suggestions

Here are a few features I wish I had in QuickViewer:

  1. Be able to hide scroll bars when zooming in full screen. Besides the error mentioned here persists. (The horizontal bar is displayed even if it is not necessary)
  2. Show relative file path in the window title
  3. Be able to move the enlarged image up/down with the respective up/down keys
  4. Do not save history
  5. Be able to open compressed files with password

Multi-page TIFF file support?

My 7zip bug seems on the outs so I tried to do something else useful...

Setup: Win7x32

Steps:

  1. Create a mutli-page TIFF file using PDFXChange Editor (just convert something over from PDF)
  2. Convert to TIFF format

image

  1. Open in Quickviewer (even with 2-page spread enabled)

image

Defect: only the first page is visible.

Hide scroll bars in full screen mode

I replicate the request of the issue #37

Now that the image can be moved using the keys, I would like to be able to hide the scroll bars in full screen mode.

Fail with filename contain spaces

Honestly I'm just testing your application as I found it by accident on opendesktop.org, so no further investigation.
Aside, I'm not a programmer.

QuickView 1.0.0 x86_64 AppImage.
Linux/Debian sid amd64

Trying to open a comic archive with name contain spaces fail.
Application error message: Image file not found. Can't be open.
Console error message: Qt7z: File does not exist: "space.[cbz|zip]". That if for example the name was "file name with space.[cbz|zip]". Only the last part taken. No matter if it archive or plain image.

This error cause this application can't be used as open with (xdg mime), from script or terminal.
Opening the same file from the application "File>Open Image Folder" works however.


Side note:
Trying to build the entire thing my self fail around unrar stuff. Maybe because I pass those said needed AppImage libraries. I don't use any QT IDE or GUI build helper like mentioned in your how to build notes.
No rar/unrar libraries found in Debian repo except rar/unrar proprietary application.

Thank you.

desktop file does not pass desktop-file-validate

Please make it pass desktop-file-validate.

QuickViewer.desktop: error: line "[Desktop Entry] " ends with a space, but looks like a group. The validation will continue, with the trailing spaces ignored.

QuickViewer.desktop: error: value "Graphics" for string list key "Categories" in group "Desktop Entry" does not have a semicolon (';') as trailing character

Reference:
https://travis-ci.org/AppImage/appimage.github.io/builds/271124677#L594-L595

Please only close this issue after a new release with a fix is available for download.

Some shortcut key can't work

When multiple shortcut keys are registered for an Action, the first shortcut does not work.

This problem occurs when registering a shortcut key in the main menu or context menu, and it does not occur when the application itself resolves without registering.

I think that this problem is probably a bug in Qt SDK.

I thought that it was due to using QGraphicsView / QGraphicsScene, but I have not found any evidence so far. Probably not.

Fitting does not work for GIF files

Hi!

Is it an intent, a bug, or a deficiency in the image library used, that in this config:

Fitting=true
DontEnlargeSmallImagesOnFitting=false

GIF images are not enlarged? They get moved to the top left corner, apparently to make space for the enlarging, but they don't get enlarged. Other file formats seem to work OK, but not GIFs, both animated and static. It seems the same is true for MNG files, but I wasn't able to test it properly.

Zoidberg

QuickViewer does not open the first image quickly

How to reproduce:

  • Run QuickViewer with "File->Auto load last used" disabled. Note that the program itself launches rather fast.
  • Select "File->Open Image Folder" (misleadingly named, as it also allows single files to be opened).
  • Pick a folder full of images, and select one of the images

Expected result:

  • The amount of time spent on loading a reasonably-sized image file is small (a couple of hundreds of milliseconds; less than a second in any case) and does not depend on how many other images are in the same folder

Actual result:

  • QuickViewer takes a lot of time (up to 3 seconds i my case) to load the first image in a folder of many images

How to fix:

  • Prioritize loading the first image, and display it as soon as it is loaded
  • Pre-load images in a separate thread. I believe, this should do the trick. That said, i'd pay special attention to the thread and ensure that it is not destroyed and re-created for every image, but rather re-used every time. You might want to have multiple threads (maybe in a pool) to pre-load multiple images simultaneously.

support for linux as AppImage

Hi,

QuickViewer is now support for linux distributions as portable AppImage.

It is 'QuickViewer-0.9.4-x86_64.AppImage' on releases.
If you have linux pc, check it out :)

If you build on Linux PC you will be able to easily create AppImage.
But it is a laborious work for me so it will not be added to the release every time.

Comments?

Make releases you actually can build.

Hello Kanryu and thanks for quickviewer: I was able to try it on Windows at work, and apart from systematic crashes when closing, it rocks.

Back on linux I followed your build instructions in HowToBuild.md.

First off, I don't like the tone in your forewords here:
"Since I was told that He hadn't known how to build from this source code before"
HE took the time to report. He is actually helping you.

There is no "dependencies" file/list nowhere, and your releases for instance don't include quazip.
(The source archive only contain an empty quazip folder actually).
You might clarify dependencies or provide complete releases if you ever you want distros to pack your (great) soft.

Lastly, source doesn't build here:
I am using gentoo, gcc 5.4.0 and qt: 5.7.1

here is the end of the trace:
https://pastebin.com/STTvzeP2

Hide page bar permanently

I replicate the request of the issue #37

It is annoying that the page bar pops up when you move the cursor under the image. Especially when you want to change instances using the Windows taskbar at the bottom, furthermore, when an image is large enough for the horizontal scroll bar to be displayed, it is superimposed over the page bar.

Make Help Documents

Since there are some things to explain about using QuickViewer, additional documentation is necessary to prevent many users from suffering.

Mainly the following points:

  • Procedure from opening the window until displaying the first image
  • The role of Shader
  • Role and usage of Catalog

Form of document:

  • Draw directly in the application screen
  • Qt standard help file
  • GitHub's Wiki

Add option to not stretch small images

Hi,
I would prefer if images that are smaller than the window size can be displayed at their original size (and centered in window) without upscaling. This way, only images bigger than the window are resized down to fit, and small images still look crisp. Would be nice to have an option for it.

Effectiveness of drawing by OpenGL

In Qt 5.9.1, Direct2D backend (QPA plugin) is supported for Window, and it can draw with Direct2D instead of OpenGL.

So I experimented with switching on Windows GDI, OpenGL, Direct2D drawing method on QuickViewer.
Then Windows GDI is much faster than OpenGL, Direct2D is almost as good as OpenGL.

Switching the drawing to Windows GDI makes it impossible to use a reduction filter other than bilinear interpolation, but I think most users do not change this (Shader) option.

So, for Windows, I am actually trying to stop providing the OpenGL rendering, and to make only 2 ways which are bilinear with Windows GDI and bicubic with CPU.

However, because it leaves support on the source code, OpenGL is automatically enabled when building with other OS.

Comments?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.