# Kreslenie – etapa 7

Etapa 7 pridáva rastrové obrázky ako samostatné editovateľné vrstvy priamo na tlačový formát. Dokumentové jadro `ptp.drawing-core/2` ich zaraďuje do jedného zásobníka s vektorovými vrstvami, takže obrázok môže byť pod, medzi aj nad vektormi.

Používateľský postup pre celé kreslenie a rysovanie je v [Pomocníkovi pasteToPrint](https://www.pastetoprint.com/pomocnik.html#kreslenie). V editore otvorte kartu **Kreslenie**; všetky nástroje pracujú priamo nad zvoleným formátom papiera.

## Funkcie

- import PNG, JPG, WebP a GIF zo súboru do 12 MB,
- vloženie obrázka zo systémovej schránky,
- drag-and-drop obrázka na konkrétne miesto strany,
- výber, viditeľnosť, uzamknutie, krytie, duplikovanie, zmena poradia a odstránenie obrázkovej vrstvy,
- filtre: odtiene sivej, sépia a invertovanie,
- odstránenie jednofarebného pozadia s nastaviteľnou toleranciou,
- obnovenie pôvodnej podoby importovaného obrázka,
- samostatný nástroj **Presun (V)** na rýchle premiestnenie vektorového objektu alebo obrázkovej vrstvy potiahnutím,
- jemný posun šípkami o 1 px a zrýchlený posun cez **Shift + šípka** o 10 px,
- otočenie o 90°, vodorovné a zvislé preklopenie a prispôsobenie formátu,
- undo/redo pre obrazové dáta, vlastnosti aj poradie vrstiev.

## Kompatibilita a ukladanie

Obrázok sa pri uložení nezlieva s vektorovou kresbou. Projekt `ptp.drawing/1` uloží samostatnú vrstvu typu `raster`, pôvodný PNG asset, masky gumy, transformáciu a jednotné poradie vrstiev; kompozitný obrázok vo figure zostáva tlačovou a migračnou zálohou. Rovnaký projektový objekt prechádza lokálnym editorom, Cloud aj LIVE normalizáciou bez novej serverovej schémy. Podrobnosti sú v [dokumentovom jadre etapy 2](DRAWING-DOCUMENT-CORE-STAGE-2.md).

V režime LIVE môže vlastník a editor kresbu vytvoriť, prijať, opätovne otvoriť a ďalej upravovať. Rola viewer zostáva striktne read-only aj pri dvojkliku, klávesovej skratke alebo volaní verejného kresliaceho API. Dočasná LIVE relácia má pre editovateľnú kolekciu kresieb limit 3 MiB; prekročenie synchronizáciu zastaví s explicitným hlásením a lokálnu kresbu neodstráni ani neodošle bez vrstiev.

Veľké obrázky sa na klientovi zmenšia maximálne na 4096 px na hrane a podľa potreby ďalej tak, aby vložený asset rešpektoval existujúci limit projektového formátu. Externé zdroje bez povoleného CORS sa neimportujú.

Kapacita jednej strany je 256 scénových vrstiev, z toho najviac 64 rastrových. Dekódované rastre majú spoločný adaptívny rozpočet otvorenej relácie 128–768 MiB podľa zariadenia; pri 80 % editor upozorní a nad rozpočtom odmietne iba novú rastrovú operáciu. Aktuálny stav poskytuje `window.pasteToPrintDrawing.getCapacity()` v schéme `ptp.drawing-capacity/1`.

## Overenie

```powershell
$env:PLAYWRIGHT_REQUIRE_PATH='C:\Users\HP\.cache\codex-runtimes\codex-primary-runtime\dependencies\node\node_modules\playwright-core'
node scripts/test-drawing-stage7.js
node scripts/test-drawing-live-compatibility.js
& 'C:\laragon\bin\php\php-8.3.30-Win32-vs16-x64\php.exe' scripts/test-drawing-project-server.php
```

Ďalšia [etapa 8](DRAWING-DYNAMICS-STAGE-8.md) optimalizuje dynamiku voľného ťahu a zachováva tento vrstvový aj LIVE formát bez migrácie.

Test etapy 7 pokrýva obrazové pixely na formáte, filtre, odstránenie pozadia, históriu, krytie, transformácie, správu vrstiev, súborový import, uloženie, opätovné otvorenie a mobilné rozloženie. Samostatný LIVE test pokrýva round-trip vlastník/editor, vektory, rastre, Presun, read-only rolu viewer a nadlimitnú kresbu. Testy etáp 1–6 zostávajú regresnou sadou.
