Formaty eksportu
SVG, PNG, JPEG i BMP (24/32-bit) — zachowanie alpha, jakość, minifikacja, skala, fit modes i marginesy.
SVG#
SVG zachowuje prymitywy wektorowe, ścieżki, atrybuty tekstu, złożone transformacje afiniczne, grupy warstw, mix-blend-mode, przycinanie <clipPath> i gradienty w <defs> (linearGradient, radialGradient).
- Tekst i atrybuty są bezpiecznie escapowane w XML.
minifySvgkompaktuje precyzję liczb, tokeny path, skrócone kolory i redundantne atrybuty domyślne — bez zmiany geometrii.
vector-engine scene.json out.svg
PNG#
PNG koduje straight-alpha 8-bit RGBA (colorType = 6) bezstratnie. Tło dokumentu, własny HEX i pełna przezroczystość są zachowane czysto, bez artefaktów premultiplication.
vector-engine scene.json out.png --transparent
JPEG#
JPEG składa półprzezroczyste i przezroczyste regiony na nieprzezroczystym tle:
- przy
--transparenttłem staje się#FFFFFFi emitowane jest jawne ostrzeżenie o alpha-flattening, - jakość
1–100, - baseline YCbCr DCT.
vector-engine scene.json out.jpg --quality 90 --background "#F4F7FF"
BMP#
Dwa warianty nieskompresowanego bottom-up Windows BMP:
| Wariant | Nagłówek | Alpha |
|---|---|---|
24-bit BGR (bmpBitDepth: 24, domyślny) | 54-bajtowy BITMAPINFOHEADER | składany na tle; ostrzeżenie przy --transparent |
32-bit BGRA (bmpBitDepth: 32) | 122-bajtowy BITMAPV4HEADER (BI_BITFIELDS, maski sRGB) | pełne 8-bit alpha |
Wiersze są wyrównane do 4 bajtów.
vector-engine scene.json out.bmp
Skala i wymiary#
- Presety skali:
0.5×,1×,2×,3×,4×. Custom: szerokość i wysokość1–16 384 px, maks.67 108 864px i guard512 MBRAM roboczego.
Fit modes#
Gdy custom wymiary różnią się od źródła:
| Tryb | Zachowanie |
|---|---|
contain | Letterbox/pad — całość widoczna |
cover | Center crop — wypełnia, przycina |
stretch | Skala niejednorodna — rozciąga |
Marginesy i przycinanie#
- Marginesy eksportu:
0–4 096 px. trimToBounds— ciasne granice treści.includeHidden— dołącz ukryte elementy.clipToBounds— ścisłe przycinanie do granic.
Tła#
| Format | --transparent |
|---|---|
| SVG | zachowane (background: none) |
| PNG | zachowane (alpha) |
| JPEG | flattening do #FFFFFF + ostrzeżenie |
| BMP 24 | flattening do tła + ostrzeżenie |
| BMP 32 | zachowane (alpha) |
Przykłady CLI#
vector-engine scene.json out.svg
vector-engine scene.json out@2x.png --width 2400 --height 1600
vector-engine scene.json hero.jpg --quality 85 --background "#0F1220"
vector-engine scene.json icon.bmp --width 512 --height 512 --transparent
vector-engine scene.json print.png --width 4096 --height 4096
JPEG i BMP 24 nie mają alpha
Jeśli scena ma przezroczystość, a eksportujesz do JPEG lub BMP 24, silnik złoży ją na wybranym tle i powie o tym ostrzeżeniem. Do przezroczystości używaj PNG, SVG lub BMP 32.
Estymacja rozmiaru#
Przed eksportem panel pokazuje estymowany rozmiar pliku i RAM roboczego (sizeEstimator.ts), diagnozę alpha i miniaturę podglądu (≤ 320 px). Dzięki temu wiesz, czy 8192×8192 zmieści się w budżecie, zanim klikniesz Eksport.