Jasný typ

Aktuální verze stránky ještě nebyla zkontrolována zkušenými přispěvateli a může se výrazně lišit od verze recenzované 7. dubna 2021; kontroly vyžadují 5 úprav .

ClearType (z anglického  „clear font“ ) je metoda pro vyhlazování textu na určitých typech počítačových monitorů (zejména LCD), založená na technologii SubPixel Rendering , registrovaná společností Microsoft Corporation .

Historie

Poprvé tato technologie v podobě, ve které je nyní představena na podzim Comdex 1998. ClearType se objevil ve spotřebitelském softwaru v roce 2000 jako součást Microsoft Reader . Windows XP umožňovaly všem programům (i starým) vyhlazovat text pomocí ClearType. Apple používá ClearType na základě křížové licenční smlouvy .

ClearType je součástí DirectX 10 - jakákoli grafická karta, která podporuje DirectX 10, může provádět sub-pixelové vykreslování znaků bez účasti CPU .

Další vývoj této technologie byl nazván Natural ClearType [1] , později byla přejmenována na DirectWrite . Tato technologie je součástí DirectX 11. Pokud ve Windows XP ClearType nezměnil šířku textu kvůli zpětné kompatibilitě , tak DirectWrite to již umí – ale je to také speciální API , které není dostupné pro starší programy.

ClearType je také podporován na některých distribucích Linuxu ,  jako je Ubuntu [2] [3] .

Jak ClearType funguje

U CRT monitorů nemá uspořádání prvků vyzařujících světlo červené, zelené a modré (fosforová zrna) nic společného s hranicemi pixelů. [4] Na displejích z tekutých krystalů se každý pixel skládá ze tří takových prvků: červené, zelené a modré. Tyto prvky (říkejme jim subpixely) jsou obdélníky o šířce ⅓  pixelu a výšce 1 pixelu a jsou uspořádány přesně podle pořadí. Grafický software obvykle zachází s pixelem jako s jednou entitou. ClearType naproti tomu vnímá subpixely jako nezávislé strukturální jednotky.

Algoritmus ClearType se skládá ze dvou kroků.

Krok 1: Subpixelové vykreslování

Text je vykreslen v horizontálním rozlišení , které je trojnásobkem požadovaného rozlišení. Každý pixel přijímaného textu odpovídá jednomu subpixelu obrazovky. Získaný výsledek je znázorněn na obrázku vlevo (řádky 3, 6, 7).

Na obrázku je výsledná čára (3) bílá, protože je široká přesně tři subpixely. Často není tloušťka čar dělitelná 3, nejsou použity všechny subpixely a části objektu v nich zobrazené mají jasný barevný nádech. Kromě toho se zelený subpixel jeví jasnější, zatímco červený a modrý subpixel se jeví sytější. K potlačení těchto barevných rozdílů se použije druhý krok.

Krok 2. Rozložení jasu

Ve druhém kroku se text rozmaže v horizontálním směru - to znamená, že část jasu, například červeného subpixelu, se přenese na jeho zelené a modré sousedy.

Intenzita každého subpixelu se vypočítá podle vzorce

,

kde V −2  je počáteční intenzita subpixelu, který je 2 nalevo od uvažovaného, ​​V −1  je počáteční intenzita subpixelu nalevo od uvažovaného atd.; a , b a c  jsou koeficienty takové, že 2 a  + 2 b  +  c  = 1. Klasiky jsou , , .

Jas každého subpixelu je tedy rozdělen mezi pět sousedních subpixelů a barevné artefakty jsou méně patrné.

Tento algoritmus rozložení jasu je navržen pro displeje, ve kterých mají všechny pixely stejné uspořádání subpixelů (například RGB). Pokud se sekvence subpixelů v různých řádcích liší, lze úroveň rozostření snížit nebo tento krok dokonce přeskočit.

Proč to funguje

Naše oči dokážou vnímat jak kontrast barev , tak kontrast jasu . Ale v malých měřítcích je barevný kontrast vnímán jako téměř třikrát slabší, takže text vykreslený pomocí ClearType vypadá monochromaticky a hladce. Pokud se podíváte pozorně, můžete kolem textu vidět červeno-modré „proužky“, které však za normálních podmínek neovlivňují čtení .

Role horizontálního uspořádání subpixelů

Horizontální (spíše než vertikální) uspořádání subpixelů vůči sobě hraje důležitou roli ve fungování ClearType. Trojnásobné zvýšení horizontálního rozlišení umožňuje variabilní mezery mezi znaky , realističtější tučné písmo a kurzívu a přesnější šířku znaků.

Navíc, protože text je již rozmazaný v horizontálním směru s poloměrem 2 subpixely, lze znaky ClearType posouvat zleva doprava bez ztráty kvality v krocích po 1 ⁄ 256 subpixelů [5] . Ani Windows Vista , ani Mac OS tuto techniku ​​nepoužívají (ale ano v Adobe Acrobat a DirectWrite , zavedených ve Windows 7 [1] ).

Pokud by byly subpixely naskládány pod sebou (jako na LCD monitoru otočeném o 90°), vykreslovací modul subpixelů by zvýšil vertikální rozlišení, což je méně užitečné. Windows Vista , Windows XP Tablet PC Edition a FreeType mají podporu pro toto uspořádání subpixelů (nazývané vyhlazování ve směru Y ve Windows a vRGB/vBGR ve FreeType). Kvalita textu s tímto výstupem je výrazně nižší.

[3] ClearType na CRT monitorech

ClearType nefunguje na CRT a LCD monitorech s nestandardním rozlišením (které nemají přístup k jednotlivým světlo emitujícím prvkům), ani na DLP projektorech (které nemají pixel rozdělený na subpixely). Text ClearType na nich však vypadá lépe než text bez vyhlazení, protože vykreslování subpixelů je variantou vyhlazování . Windows XP má sice kvalitní vyhlazování v rámci ClearType, ale není dostupné ve své „čisté“ podobě. To je důvod, proč někteří uživatelé rádi povolují ClearType na CRT monitorech.

Přestože na kineskopech se štěrbinovou maskou (Sony Trinitron, Mitsubishi Diamondtron, LG Flatron) jsou fosforové proužky podobné subpixelům LCD monitoru, stále neexistuje programový přístup ke každému z jednotlivých svítících prvků. ClearType na nich tedy pomáhá přesně tak, jako pomáhá vyhlazování.

Pomocí některých programů (například [1] ) můžete porovnávat ClearType a běžný anti-aliasing. Na CRT monitorech většina lidí preferuje vyhlazování.

Omezení ClearType

Z prvních tří důvodů by ClearType neměl být používán, pokud se připravovaný výkres musí správně zobrazit na jakémkoli monitoru, nejen na tom, na kterém byl připraven . Zejména z tohoto důvodu není ClearType k dispozici v programech jako Adobe Photoshop . Při přípravě screenshotů je také dobrým zvykem ClearType vypnout .

ClearType ruší lidi se zvýšeným smyslem pro barvy, zejména při nízkém dpi  - u nich začnou okraje písem "prosakovat" v růžové, modré nebo světle zelené barvě, což způsobuje pocit vadného zobrazení. Doporučuje se zcela zakázat ClearType a ponechat pouze standardní metodu vyhlazování. Podle jednoho z vývojářů subsystému ClearType pro Windows: [7]

[...]

WPF používá metodu C [ClearType] , ale jen málo zařízení má dostatečně vysoké rozlišení, aby případné rozmazání nikoho neobtěžovalo. […] Někteří lidé jsou spokojeni s rozmazáním metody C, někteří ne. Zvláštní, ale pravdivé: některým lidem vyhovuje čtení dlouhých textů vykreslených metodou C v rozlišení 96 dpi (například prostřednictvím Times Reader ), ale nemají rádi okna uživatelského rozhraní. Většinu lidí nezajímá barevné ohraničení ClearType, ale někteří ano. […]

Mým očím při 96 dpi metoda C čte hůř než metoda A [bez vyhlazování] . Na mě moc rozmazané. A při 144 dpi nevidím žádné problémy - čte se to perfektně.

Implementace ClearType systému Windows pro zpětnou kompatibilitu je navržena tak, aby velikost textu odpovídala normálnímu vykreslování bez úseček. Některá písma ( Arial , Tahoma ) jsou naznačena pro nevyhlazené vykreslování a ClearType nedokáže písmena zcela zbavit artefaktů náznaků. Ostatní ( Consolas , Segoe UI ) jsou pod ClearType a vypadají špatně na jednoduchém vyhlazování.

Nějaký[ kdo? ] věří, že ClearType nemá dlouhodobou perspektivu: s rozvojem kvality a rozlišení displejů postačí univerzální vyhlazování a používání neuniverzálního omezeného vyhlazování jako ClearType se stane zbytečným.

Zpochybnění patentu

Na technologii ClearType byl udělen americký patent Metody a zařízení pro provádění operací vykreslování obrazu a rasterizace , který skončil v roce 2018.

Výzkumník Steve Gibson tento patent zpochybňuje a tvrdí, že Microsoft patentoval dříve známou věc [8]  - programátoři Apple II podobně zdvojnásobili efektivní rozlišení televizoru NTSC ( který byl použit místo monitoru). Ostatní počítačové společnosti udělaly totéž. Dokonce i v popisu Microsoft Basic for Apple II jsou odkazy na takové techniky.

Poznámky

  1. 1 2 Vývoj Windows 7: Pokroky v typografii a vykreslování textu ve Windows 7 . Získáno 1. 5. 2009. Archivováno z originálu 11. 3. 2010.
  2. ClearType-vyhlazování v Linuxu nebo fonty jako v Ubuntu / Linux pro každého / Habrahabr . Získáno 30. září 2016. Archivováno z originálu 7. srpna 2016.
  3. ↑ 1 2 Jak zapnout Cleartype v Ubuntu Linux? . Získáno 27. srpna 2011. Archivováno z originálu 5. září 2013.
  4. To je dobře vidět pod lupou, zobrazení jednoho bílého pixelu na černém pozadí na CRT monitoru a je to logicky pochopitelné: když opravíte geometrii obrazu, pixely se posunou, ale fosforová zrna ne.
  5. Technologie Anti-grain - Expozice rastrování textu (odkaz není k dispozici) . Získáno 14. července 2007. Archivováno z originálu 6. září 2013. 
  6. 1 2 3 Color-aware ClearType vyžaduje přístup k pevným pixelům pozadí, což je problém, pokud nevíte, jaké pixely pozadí jsou, nebo pokud nejsou pevné - The Old New Th... . Datum přístupu: 28. února 2015. Archivováno z originálu 22. března 2015.
  7. ClearType, v XP a Vista | Typophile Archived 13. října 2008 na Wayback Machine 
  8. Vzdálené počátky vykreslování sub-pixelových písem . Získáno 4. března 2007. Archivováno z originálu 21. července 2006.