diff --git a/README.md b/README.md new file mode 100644 index 0000000..28a2a97 --- /dev/null +++ b/README.md @@ -0,0 +1,37 @@ +# KissCut + +PySide6 GUI for generating smooth kiss-cut outlines from PNGs. Drop an image, tune a few sliders (inflation, smoothing, corner detection), preview the padded mask, and export a spline-smoothed SVG. + +## Features +- Drag-and-drop PNG preview with auto-padding when the mask touches an edge. +- Adjustable DPI, inflation (inches), alpha threshold, RDP epsilon, spline smoothing, spline points, and corner angle. +- Mask overlay plus Bezier-path preview in the viewport. +- SVG export of the smoothed outline (cubic Beziers). + +## Requirements +- Python 3.9+ recommended. +- Dependencies: `Pillow`, `numpy`, `scikit-image`, `scipy`, `PySide6`. + +Install deps: +```bash +pip install Pillow numpy scikit-image scipy PySide6 +``` + +## Usage +1) Run the app: +```bash +python kisscut_gui.py +``` +2) Drag a PNG into the window (or drop a file and hit “Update Preview”). +3) Tune sliders/inputs: + - `DPI`: used for inflation and mm conversion. + - `Inflation (inch)`: outward growth of the mask. + - `Alpha Threshold`: what counts as transparent vs opaque. + - `RDP Epsilon (mm)`, `Spline Smoothing`, `Spline Points`, `Corner Angle`: simplification and curve-fit controls. +4) Click “Export Vector” to save an SVG with the fitted outline. + +## Samples +Try the images in `samples/` to see expected behavior. + +## License +CC0-1.0 Public Domain Dedication. Use, modify, and redistribute freely.