# StViewer (STellar image Viewer)

## Overview  
StViewer (hereafter referred to as "this application") is a multifunctional image viewer application.  
In addition to supporting major image formats, it can also display images compressed within .zip files.  
It also supports animated .gif and .webp, .svg vector images, JPEG XL, iPhone's .heic, and .avif.  

Furthermore, it is packed with features conceived by the author (SATOX), such as animation effects utilizing GPU capabilities, printing features (PDF output), text extraction (OCR), a color picker, and a ghost window mode (transparent window).  

## System Requirements  
- Windows 10 or later (Operation confirmed on Windows 11)  
- 64-bit OS (x64) only  
- .NET 8.0 Runtime (https://dotnet.microsoft.com/en-us/download/dotnet/8.0)  

## Feature Overview  
1. **Japanese** and **English** support
2. **Supported File Formats**
    - General / Archive: .zip / .png / .jpg (.jpeg) / .bmp / .ico / .tif (.tiff) / .tga
    - Animation support: .webp / .gif
    - Next-generation / High-efficiency: .webp / .avif / .heic (.heif) / .jxl / .jp2 (.jpf)
    - Specialized / Vector: .psd / .svg / .exr / .dng / .dds
    - Display images within a specified folder
3. **Mouse Operations**
    - You can display images by dropping image files or zip files
    - **Mouse Wheel**: Next image / Previous image (Shift key for +10)
    - **Ctrl + Mouse Wheel**: Image zoom
    - **Left Double Click**: Next image (Ctrl key for previous image, Shift key for ±10)
    - **Left Button Drag**: Seek images within a folder or archive (Shift key for ±10)
    - **Right Button Drag**: Magnifying glass display
    - **Right + Left Button Up/Down Drag**: Image zoom
    - **Middle Button Drag**: Image panning
    - **Mouse Forward Button**: Next folder or archive
    - **Mouse Back Button**: Previous folder or archive
    - HUD Buttons
        - **HUD Right Button**: Next image
        - **HUD Left Button**: Previous image
        - **HUD Up Button**: To the beginning of the folder or archive
        - **HUD Down Button**: To the end of the folder or archive
        - **HUD Folder Button**: Show/Hide built-in file viewer
        - **HUD Maximize Button**: Toggle full-screen mode
        - **HUD Close Button**: Close this application
        - **HUD Zoom Slider**: Change the zoom ratio by dragging the handle
4. **Toolbar Button Operations**
    - Select an image via the file selection dialog
    - Show/Hide built-in file viewer
    - Beginning of folder or archive
    - Previous archive
    - Previous folder
    - Previous image
    - Next image
    - Next folder
    - Next archive
    - End of folder or archive
    - Toggle filter (dropdown)
    - Show About dialog (check version and documentation)
5. **Key Operations**  
    - **0-9 (including Numpad)**: Seek to 0%-90% position within an archive, folder, or during animation playback
    - **Numpad +**: Animation skip frame count +1
    - **Numpad -**: Animation skip frame count -1
    - **Numpad .**: Reset animation skip frame count
    - Additionally, shortcut keys are displayed in the right-click menu
6. **Built-in File Viewer Features**
    - Select folders or files using the built-in filer
    - Display thumbnail list of images in a folder
    - Breadcrumb list feature for folder paths
    - Display images in folders/ZIP files (Enter key or Left double-click)  
    - Navigate to parent folder (Mouse Back button or Backspace key)  
7. **Magnifying Glass Feature**
    - Right-dragging the mouse displays a magnifying glass enlarging the mouse position
    - RGB color values, WEB colors, and HSV hue values are displayed
8. **Loop Setting Feature**
    - Loop within a folder (continuous back and forth within the group)
    - Loop within an archive (continuous back and forth within the group)
9. **Auto-Rotation Feature**
    - Automatically rotates to maximize screen display
10. **Horizontal Flip Feature**
    - You can display images flipped horizontally
11. **Effect Feature (🧪 Experimental)** (*Animation Effects)
    - Grayscale
    - Sepia
    - Blur
    - High Contrast
    - Edge Detect
    - Surface Blur
    - Pixelate (Mosaic)
    - Retro Graphics
    - Skin Smooth (Whitening Filter)
    - Halftone
    - Thermal (Thermograph)
    - *Glitch (Chromatic Aberration)
    - *Retro CRT (Retro TV)
    - *Kaleidoscope
    - *Entropy Dissolve (Particle Diffusion)
    - *Manga Focus Lines
    - *Water Ripple
    - *Night Vision
    - *Lovely Heart
    - *God Ray
    - *Miniature
    - *Color Splash (Specific Color Extraction)
    - *Rain
    - *Snow
    - *Cherry Blossom
    - *Neon Glow
    - *Old Film
    - *Swirl
12. **Transition Feature**
    - You can apply transition effects when images change
    - Fade
    - Slide
    - Dissolve
    - Glitch
    - Ripple
13. **Full Screen Display Feature**
    - Full screen display by hiding the title bar and taskbar
14. **Always on Top Feature**
    - The application can be kept on top of other windows
15. **Zoom and Panning Feature**
    - Scale to fit the screen (Default)
    - Display at a specified scale ratio
16. **Pixelated Display Feature**
    - Automatically switches to a pixelated display (Nearest Neighbor) when blurriness from enlargement is significant
17. **HUD Hide Feature**
    - Suppresses some message displays
18. **Real-time Histogram Display Feature (🧪 Experimental)**
    - Displays the histogram of the image
19. **Exif Display Feature (🧪 Experimental)**
    - Displays Exif information for JPEG files
20. **Paste Image from Clipboard Feature**
    - Can paste and display images (Bitmap) from the clipboard
    - Temporarily saved in a temp folder and deleted when the application closes
21. **Copy Image to Clipboard Feature**
    - Copy images (Bitmap) to the clipboard, ready to paste into other apps
22. **Color Picker Feature**
    - Copies the color at the cursor position in WEB format (text)
    - Copied as #RRGGBB if alpha is disabled, or #AARRGGBB if alpha is enabled
23. **Transparent Color Setting Feature**
    - Displays the background of transparent images with a checkerboard pattern
    - You can also select white, black, gray, etc.
24. **Background Blur Display (Blur Backdrop) Feature**
    - You can display a blurred version of the image in the background
25. **Background Color Setting Feature**
    - You can select and change the background color
26. **Ghost Window Feature**
    - Can be set to a semi-transparent window mode that ignores mouse interactions
    - Can be canceled by pressing the ESC key
27. **System Context Menu Display Feature**
    - You can display the system context menu for the currently viewed file
28. **Explorer Feature**
    - You can reveal the currently viewed file in Windows Explorer
29. **OCR Feature**
    - You can extract text from the currently viewed image using OCR
30. **Print Feature (PDF Output) (🧪 Experimental)**
    - You can print the currently viewed image (PDF output is also possible via the print feature)
    - Automatically rotates to maximize display according to the paper size
31. **File Sharing**
    - You can invoke the Windows file sharing feature
32. **Folder and File Association Feature**
    - You can associate supported file formats via the dialog on the first startup
    - You can remove associations by closing this application while holding the Shift key
33. Image Copy/Paste Feature
    - Supports copying images to and pasting from the clipboard
34. **Taskbar Recent Files Support**
    - Only files opened directly are registered in the "Recent" list on the taskbar
34. **Auto-Hide Cursor Feature**
    - The cursor hides automatically when kept still over the viewer

## File List
- StViewer.exe      : Executable file for this application
- StViewer.settings : Settings file for this application (created upon closing the executable)
- Readme(JP).md     : This document
- LICENSE.txt       : License text file

## How to Delete Settings  
- If you want to reset the settings, please delete the settings file `StViewer.settings` and then launch the application.

## File Association  
- On the first startup of this application, a dialog will appear asking about file associations.
    - To show the dialog again, delete the application settings file `StViewer.settings` and then start the app.
    - Once file association is set up, a launch menu for this app will appear in the right-click menu of supported files.

## Removing File Associations  
- You can remove file associations by **closing this application while holding the Shift key**.
- Please make sure to perform this operation before deleting the application.

## Support  
- If you have any bug reports or requests regarding this application, please contact the author.   
    - Author: SATOX (https://x.com/satoxpochi)  
    - Website: https://satox.skr.jp/StViewer

## Changelog  
### Ver.1.3.9584 (2026-03-29)  
- Added Features
    1. Revamped the file view to a thumbnail image list.
        - Displays the folder path in the file view header.
        - Thumbnail size can be changed via the resize button or mouse wheel.
        - Supported displaying image file lists inside ZIP archives.
    2. Added a breadcrumb list feature for folder paths to the file view.
         - You can navigate to any level by clicking on it in the breadcrumb list.
    3. Added a favorites feature to the file view.
        - You can add any folder to your favorites for quick access.
        - "Desktop" and "My Documents" are added by default.
    4. Added options to delete folders, delete files inside ZIPs, and open in Explorer in the file view right-click menu.
    5. Added a zoom slider GUI to the HUD.
    6. Now displays the current file name (file name only) in the app title.
    7. Supported copying SVG to the clipboard. It is copied as a bitmap.
    8. Added transition features. - Choose from 5 types: None, Slide, Fade, Dissolve, Glitch, and Ripple. (Some cannot be transitioned).
    9. Added 3 new effects: Neon Glow, Old Film, and Swirl.
    10. Added simple text display feature. Displays a quick view of files presumed to be text.
    11. Added horizontal flip feature.
- Specification Changes
    1. Changed so the file view is displayed when a folder is specified via command options or drag & drop.
    2. Changed to save and retain the file view size.
    3. Doubled the loupe display size on right mouse drag, changed magnification from 4x to 6x, and added HSV value display.
    4. Changed the shortcut key for fitting image scaling to "F".
- Bug Fixes 
    1. Fixed an issue where the current folder in the tree view did not scroll into view (EnsureVisible).
    2. Fixed a bug where animation keeps playing if you move folders during animation playback.
- Others
    1. Updated the drawing library to the latest version. Drawing performance is improved by up to about 10%.
    2. Reduced peak memory usage equivalent to roughly 2 images through optimization.
    3. Improved the rendering precision of the folder tree chevron in the file viewer.

### Ver.1.1.9534 (2026-02-07)  
- Added Features
    1. Added 7 new effects
        - Water Ripple, Night Vision, Lovely Heart, God Ray, Miniature, Specific Color Extraction, Rain, Snow, and Cherry Blossom effects
    2. Made it possible to set the sorting order for files and archives
        - Internal Next/Previous ordering can be toggled between "By File Name" and "By Date".
- Specification Changes
    1. Changed the looping behavior when moving Next/Previous across folders to apply the archive loop settings.
- Bug Fixes 
    1. Fixed an issue where an exception dialog appears when opening multiple instances of the app and closing them simultaneously.
        - The saving of app settings applies to the first opened instance.

### Ver.1.0.9509 (2026-01-13)  
- Initial Release  

## Disclaimer  
Copyright (c) 2025-2026 SATOX All rights reserved.

This application (StViewer) is provided "as is", and the author (SATOX) makes no warranties regarding the completeness of operation or fitness for a particular purpose.

1. **Liability for Damages**: The author assumes no responsibility for any direct or indirect damages (such as data loss, PC breakdown, economic loss, etc.) caused by the use or inability to use this application.  
2. **Prohibitions**: Analyzing (reverse engineering) or modifying this application, as well as reprinting or redistributing it to other sites or media without the author's permission, is strictly prohibited.  
3. **Copyrights**: The copyrights and intellectual property rights related to this application belong to the author.  

## License
This application uses third-party libraries as described in the "LICENSE.txt" text file.

I would like to thank everyone who provides useful OSS.