Basics
In FloatDither there are 3 important windows:
- Main Window: Mostly contains image tweaks, size and file system
 - Dithering Stack Manager: Controls how the image is dithered and Saving/Loading the stack
 - Distance Metric Editor: Modifies brightness of color channels
 
The Main Window
                 
                - Block Size: The multiplication factor applied to the resolution of the image [256 x 144 → 512 x 256]
 - Downscale Factor: The division factor applied to the resolution of the image [256 x 144 → 128 x 72]
 - Brightness: Adjusts the overall brightness [-1.0 → all Color 0, 1.0 → all Color 1]
 - Compare Slider: Determines how much of the original and the generated image to show
 - Absolute Resolution: Use a fixed resolution
 - Recreate Image: Apply changes and regenerate the dithered image
 - Show Original/Generated Image: Opens a separate zoomable window for the Original or Generated images
 - Show Original/Generated Image Info: Shows additional details about the Original or Generated images
 - Enable Base64: Toggles Base64 export
 - Export Image: Saves the generated image to a file
 - Enable Hot Reloading/Saving: Enables either Hot Reloading or Hot Saving
 - Pattern Export: Pattern Section
 - Load/Save Palette: Loads or saves current colors from/to a file
 - Swap Palette: Switches Color 0 with Color 1
 
Dithering Stack Manager
                 
                - Add: Adds a new dithering layer
 - Quick Copy/Load Stack: Saves/Loads the stack from/to clipboard
 - Quick Save/Load Stack: Saves/Loads the stack from/to file
 - Hidden: If checked, the dither layer is ignored in the image generation
 - Edit: Opens the editor based on the type of dither layer
 - Remove: Removes the dither layer
 
Error Diffusion Editor
                 
                Each element determines the position (X, Y), while the Value sets the brightness adjustment. Higher values push more toward Color 1, lower values toward Color 0.
Halftone Editor
                 
                By using sliders the matrix can be modified. Increasing the size will increase the number of values. For example, Matrix Size 4 = 4 × 4 values [16] as seen.                     
                    
                     
                    Note: Like Bayer at higher resolution, a square pattern may appear due to stretching. Viewing at 1:1 scale will display correctly.                 
                
Base64
Base64 has 4 different export formats:
- RAW: Headerless, basically how it is stored in RAM
 - BMP
 - PNG
 - JPEG
 
Generating Base64 is very intensive for both CPU and RAM.
Program implementation: First it will try allocating 5MB. If it fails, it will allocate resolution × 24 + 1KB.Hot Reload & Save
By default, the program enables Hot Reloading, meaning every change in the original file is applied immediately. Conversely, Hot Saving writes to a file based on a timer, applying dithering changes if the file was previously saved.
Pattern Export & Load
The Pattern is a matrix of floats used by the program as the true input for dithering images. The default format for loading and exporting is an internal format [.fmi]
Supported Image Formats [Loading]
- BMP
 - GIF
 - JPG / JPEG
 - LBM
 - PCX
 - PNG
 - PNM (PPM/PGM/PBM)
 - TGA
 - TIFF
 - XCF
 - XPM
 - XV
 - WEBP
 
Supported Image Formats [Saving]
- BMP, DIP
 - PNG
 - JPG / JPEG / JPE / JIF / JFIF / JFI
 - PBM, PGM, PPM, XPM
 - TXT: ASCII Art
 
Supported Pattern Formats [Saving]
- FMI, BIN
 - CSV, TSV, PSV, SSV
 - JSON, TOML, XML, YAML / YML
 - HEX, OCT
 - TEX, NPY
 - CS, CSPROJ, JAVA, PY, JS, R, RB, RU, PAS, F90, F, FOR
 - PHP, SQL, M, MAT, GO, VB, RS
 - H, C, CPP, HPP, C++, CC, H++, HH
 
Supported Pattern Formats [Loading]
- FMI, BIN
 - CSV, TSV, PSV
 - JSON, TOML, XML, YAML
 - HEX, OCT