Powrót do strony głównej

PaintFE na Rust: przenośny edytor obrazów

PaintFE — przenośny edytor obrazów na Rust dla Windows i macOS. Obsługuje warstwy, filtry GPU, skrypty Rhai i animację. Projekt otwarty na licencji MIT, zlokalizowany w 15 językach.

PaintFE: edytor Rust z GPU i skryptami bez instalacji
Advertisement 728x90

# PaintFE: przenośny wieloplatformowy edytor grafiki w Rust

Twórca Kyle Jackson wydał PaintFE — otwartoźródłowy edytor obrazów dla Windows i macOS. Projekt napisany w Rust, spakowany w pojedynczy plik wykonywalny bez zależności. Obsługuje warstwy, gradienty, tryby mieszania blend modes, filtry przyspieszane przez GPU, skrypty za pomocą Rhai oraz pracę z animowanymi GIF/APNG. Licencja MIT, repozytorium na GitHub.

Narzędzia obejmują edytory tekstu i zaawansowane palety kolorów. Lokalizacja w 15 językach: angielski, niemiecki, francuski, hiszpański, portugalski, włoski, rosyjski, polski, turecki, japoński, białoruski.

Realizacja techniczna

PaintFE zbudowany w Rust z użyciem Fe jako aluzji do żelaza (iron w układzie okresowym). Przyspieszenie filtrów przez GPU zwiększa wydajność podczas obróbki obrazów. Silnik skryptowy Rhai umożliwia automatyzację zadań bez kompilacji.

Google AdInline article slot

Kluczowe funkcje:

  • Warstwy i blend modes: standardowe tryby mieszania, podobne do Photoshop.
  • Gradienty i filtry: liniowe, radialne gradienty z wsparciem GPU.
  • Animacja: import/eksport GIF i APNG z linią czasu.
  • Skrypty: Rhai do niestandardowych narzędzi i przetwarzania wsadowego.
  • Przenośność: jeden EXE/DMG, bez zależności runtime.

GitHub Copilot był używany do kodu szablonowego i składni Rust. Wszystkie fragmenty przeszły ręczną weryfikację, testy i przegląd. Architektura oraz UI/UX zaprojektowane przez ludzi.

Zalety dla programistów

Dla programistów średniego/zaawansowanego poziomu PaintFE jest ciekawym przykładem wieloplatformowego GUI w Rust. Projekt pokazuje integrację GPU (prawdopodobnie wgpu lub podobnego), skryptów i potoku zasobów w przenośny plik binarny.

Google AdInline article slot

Możliwości rozszerzeń:

  • Wtyczki przez skrypty Rhai.
  • Niestandardowe shadery dla filtrów.
  • Integracja z zewnętrznymi formatami (HEIC, WebP).

Lokalizacja bez zewnętrznych bibliotek ułatwia wdrożenie. Rozmiar pliku wykonywalnego zminimalizowany dzięki statycznemu linkowaniu.

Co ważne

  • Przenośność: pojedynczy plik dla Windows/macOS, bez instalacji czy zależności.
  • Filtry GPU: przyspieszenie sprzętowe dla operacji zasobożernych.
  • Skrypty Rhai: dynamiczna automatyzacja bez rekompilacji.
  • Wielojęzyczność: 15 lokalizacji od razu.
  • Otwartość: licencja MIT, pełny kod źródłowy na GitHub.

Projekt nadaje się do prototypowania narzędzi do obróbki obrazów. Rust zapewnia bezpieczeństwo pamięci przy pracy z buforami pikseli i zasobami GPU.

Google AdInline article slot

— Editorial Team

Advertisement 728x90

Czytaj dalej