Obsah

Adobe Photoshop: Architektura a technologie

Adobe Photoshop je průmyslový standard pro úpravu rastrové grafiky. Jeho vývoj začal v roce 1987 (bratři Thomas a John Knollovi) a od té doby definuje možnosti digitálního zpracování obrazu. Technologicky jde o jeden z nejsložitějších komerčních softwarů na světě.

1. Jádro a programovací jazyky

Photoshop je postaven na extrémně optimalizovaném kódu, který musí v reálném čase zpracovávat gigabajty obrazových dat.

2. Zpracování obrazu a GPU akcelerace

Moderní Photoshop nespoléhá pouze na CPU, ale masivně využívá grafickou kartu prostřednictvím technologií jako:

3. Photoshop ve webovém prohlížeči (Revoluce WebAssembly)

Jedním z největších technologických úspěchů Adobe je portování Photoshopu do webového prohlížeče (verze představená v roce 2021).

Jak je to možné?

Adobe nemohlo přepsat miliony řádků C++ kódu do JavaScriptu. Místo toho využili:

1. **[[WebAssembly]] (Wasm):** Zkompilovali existující C++ kód Photoshopu do binárního formátu, který běží v prohlížeči téměř nativní rychlostí.
2. **Emscripten:** Toolchain, který umožnil přenést dekády vývoje algoritmů pro práci s vrstvami a výběry na web.
3. **Web Workers:** Pro paralelizaci výpočtů, aby UI zůstalo plynulé i při náročných operacích.

4. Umělá inteligence: Adobe Sensei a Firefly

V posledních letech se těžiště inovací přesunulo k Generativní AI:

5. Souborový formát PSD/PSB

Formát PSD (Photoshop Document) je de facto standardem, ale technicky je velmi komplexní:

Víte, že? Zdrojový kód verze Photoshopu 1.0.1 z roku 1990 byl věnován Muzeu počítačové historie. Obsahuje přibližně 128 000 řádků kódu, z čehož 75 % tvoří Pascal a zbytek Assembler pro procesory Motorola 68000.

Související: C++, WebAssembly, GPU, Frontend