# PaintFE: přenosný multiplatformní editor obrázků v Rustu
Vývojář Kyle Jackson vydal PaintFE — open-source editor obrázků pro Windows a macOS. Projekt je realizován v Rustu, zabalen do jediného spustitelného souboru bez závislostí. Podporuje vrstvy, gradienty, blend modes, GPU-zrychlené filtry, skriptování přes Rhai a práci s animovanými GIF/APNG. Licence MIT, repozitář na GitHub.
Nástrojový panel obsahuje textové nástroje a rozšířené palety barev. Lokalizace do 15 jazyků: angličtina, němčina, francouzština, španělština, portugalština, italština, ruština, polština, turečtina, japonština, běloruština.
Technická realizace
PaintFE je postaven na Rustu s použitím Fe jako odkazu na železo (Fe — železo v periodické tabulce). GPU-zrychlení filtrů je implementováno pro zvýšení výkonu při zpracování obrázků. Skriptový engine Rhai umožňuje automatizovat úkoly bez kompilace.
Klíčové funkce:
- Vrstvy a blend modes: standardní režimy překrytí, podobné Photoshopu.
- Gradienty a filtry: lineární, radiální gradienty s podporou GPU.
- Animace: import/export GIF a APNG s timeline.
- Skriptování: Rhai pro vlastní nástroje a batch zpracování.
- Prenosnost: jeden EXE/DMG, bez runtime závislostí.
GitHub Copilot byl použit pro šablonový kód a syntaxi Rustu. Všechny fragmenty prošly manuální kontrolou, testováním a revizí. Architektura a UI/UX byly navrženy lidmi.
Výhody pro vývojáře
Pro středně pokročilé a seniorní vývojáře je PaintFE zajímavý jako příklad multiplatformního GUI v Rustu. Projekt demonstruje integraci GPU (pravděpodobně wgpu nebo analog), skriptování a asset pipeline do přenosného binárního souboru.
Možnosti rozšíření:
- Pluginy přes Rhai skripty.
- Vlastní shadery pro filtry.
- Integrace s externími formáty (HEIC, WebP).
Lokalizace je realizována bez externích knihoven, což zjednodušuje nasazení. Velikost spustitelného souboru je minimalizována díky statickému linkování.
Co je důležité
- Prenosnost: jeden soubor pro Windows/macOS, bez instalace nebo závislostí.
- GPU filtry: hardwarové zrychlení pro náročné operace.
- Rhai skriptování: dynamická automatizace bez rekompilace.
- Vícejazyčnost: 15 lokalizací hned z krabice.
- Otevřenost: MIT licence, plný zdrojový kód na GitHub.
Projekt je vhodný pro prototypování nástrojů pro zpracování obrázků. Rust zajišťuje bezpečnost paměti při práci s pixelovými buffery a GPU zdroji.
— Editorial Team
Zatím žádné komentáře.