Hlavní obsah
Internet, technologie a elektronika

Ctrl+V nevkládá vždy totéž. Jedna věta může být ve schránce jako text, HTML i RTF

Foto: Pexels

Po Ctrl+C nemusí ve Windows ležet jediný řetězec znaků. Aplikace může nabídnout několik podob téhož obsahu a cílový program si vybere tu, které rozumí.

Článek

Zkopírujete jednu větu z webu. Do textového editoru se vloží jen písmena. Do jiného programu se spolu se stejnými slovy přenesou tučné části, odkaz nebo barva. Na první pohled to vypadá, jako by se Ctrl+C pokaždé rozhodlo jinak. Ve skutečnosti může být trik už ve schránce samotné.

Windows dovoluje, aby jedna zkopírovaná informace byla ve schránce nabídnuta v několika formátech současně. Microsoft jako typický příklad uvádí formátovaný text: zdrojová aplikace může dodat bohatší RTF a vedle něj i obyčejný text. Cílová aplikace pak sáhne po nejpopisnějším formátu, který umí zpracovat.

Schránka není jen jedna krabička s jedním textem

Microsoft dokumentuje systém schránky jako seznam dostupných formátů. Mohou mezi nimi být standardní textové formáty, bitmapy, souborové objekty i formáty registrované aplikacemi. U webového obsahu se běžně používají i formáty, které zachovávají strukturu a formátování, například HTML nebo RTF.

Důležitý detail je, že ne každá aplikace musí nabídnout všechny varianty a ne každá cílová aplikace jim musí rozumět. Schránka tedy není univerzální kopie dokumentu. Je to spíš nabídka několika reprezentací téže věci.

Ctrl+V je malá dohoda mezi dvěma programy

Při vložení cílová aplikace zjistí, jaké formáty jsou k dispozici, a použije jeden, který zná. Microsoft výslovně popisuje běžné chování: pokud program rozpozná RTF, může vložit formátovanou verzi. Pokud RTF neumí, vezme obyčejný text a formátování zmizí.

Tím se vysvětluje zkušenost, kterou zná skoro každý. Stejná věta přenesená z prohlížeče může v jednom programu přijít i s odkazem a stylem, zatímco v jednoduchém textovém poli skončí jako holá písmena. Obsah nevznikl dvakrát. Jen se použila jiná vrstva téhož balíčku.

Nejbohatší formát není vždy ten, který člověk chce

Pořadí a preference formátů mají praktický důsledek. Programy se obvykle snaží zachovat co nejvíc informace, kterou znají. Proto se někdy přenese vzhled, který jste vůbec nechtěli: jiný font, barva, hypertextový odkaz nebo struktura tabulky.

Opačný případ je stejně logický. Když cílové pole přijímá jen prostý text, veškerá bohatší reprezentace se ignoruje. Z pohledu člověka se „stejné Ctrl+V“ chová jinak. Z pohledu systému ale pokaždé proběhla stejná otázka: který z dostupných formátů tady dává smysl?

Jedna věta tedy může ve schránce existovat několikrát najednou

Neznamená to, že Windows při každém kopírování automaticky vyrábí HTML, RTF i text. Formáty dodává zdrojová aplikace a systém některé standardní formáty umí mezi sebou převádět. Přesná nabídka proto závisí na tom, odkud kopírujete.

Pointa je jednodušší: schránka nemusí obsahovat jedinou podobu obsahu. A Ctrl+V není slepé vysypání jednoho řetězce znaků. Je to výběr formátu, na kterém se zdrojový a cílový program dokážou shodnout.

Zdroje a prameny

Microsoft Learn — Clipboard Formats — primární dokumentace: jedna informace může být ve schránce v několika formátech a cílová aplikace typicky vezme nejpopisnější formát, který rozpozná.

Microsoft Learn — Clipboard Operations — popis vkládání: aplikace vybírá z dostupných formátů podle toho, které podporuje.

Máte na tohle téma jiný názor? Napište o něm vlastní článek.

Texty jsou tvořeny uživateli a nepodléhají procesu korektury. Pokud najdete chybu nebo nepřesnost, prosíme, pošlete nám ji na medium.chyby@firma.seznam.cz.

Sdílejte s lidmi své příběhy

Stačí mít účet na Seznamu a můžete začít publikovat svůj obsah. To nejlepší se může zobrazit i na hlavní stránce Seznam.cz