ClearTypeClearType (від англ. «чистий шрифт») — метод згладжування тексту на певних видах комп'ютерних моніторів (особливо на РК), заснований на технології SubPixel Rendering, зареєстрований корпорацією Microsoft. ІсторіяВперше ця технологія в тому вигляді, в якому вона зараз є, представлена на Comdex Fall 1998. У споживчому ПО ClearType з'явився в 2000 у в складі Microsoft Reader. Windows XP дозволила всім програмам (навіть старим) згладжувати текст за допомогою ClearType. Apple використовує ClearType за договором крос-ліцензування. ClearType входить до складу DirectX 10 — будь-яка відеоплата, що підтримує DirectX 10, може робити Субпіксельне рендеринг символів без участі центрального процесора. Подальший розвиток даної технології отримав назву Natural ClearType[1]. Ця технологія входить до складу DirectX 11. Якщо в Windows XP ClearType для зворотної сумісності не змінював ширину тексту, то Natural ClearType вже може це робити — але і являє собою особливе API, недоступне для старих програм. Технологія ClearType підтримується і в деяких дистрибутивах Linux — зокрема, Ubuntu[2][3]. Як працює ClearTypeВ ЕПТ-моніторах розташування червоних, зелених та синіх світловипромінюючих елементів ніяк не пов'язано з піксельною сіткою. На рідкокристалічних дисплеях кожен піксель складається з трьох таких елементів: червоного, зеленого і синього. Ці елементи (назвемо їх субпікселями) є прямокутниками шириною 1/3 пікселя і висотою 1 піксель, і розташовані вони суворо по порядку. Зазвичай графічне ПЗ розглядає піксель як єдине ціле. ClearType ж сприймає субпіксель як самостійні структурні одиниці. Алгоритм роботи ClearType складається з двох кроків. Крок 1. Субпіксельний рендерингТекст малюється з горизонтальною роздільністю, втричі більшою, ніж вимагається. Кожен піксель отриманого тексту відповідає одному субпікселю екрану. Отриманий результат зображений на малюнку зліва (лінії 3, 6, 7). На малюнку результуюча лінія (3) має білий колір, так як її ширина становить рівно три субпікселя. Часто товщина ліній не ділиться на 3, використовуються не всі субпікселі, і частини об'єкта, відображені в них, мають явний кольоровий відтінок. До того ж зелений піксель здається більш яскравим, а червоний з синім — більш насиченими. Для придушення цих колірних перепадів застосовується другий крок. Крок 2. Розподіл яскравостіНа другому кроці текст розмивається в горизонтальному напрямку — тобто, частина яскравості, наприклад, червоного субпікселя, передається його зеленому і синьому сусідам. Інтенсивність кожного субпікселя обчислюється за формулою де V −2 — вихідна інтенсивність субпікселя, який знаходиться на 2 лівіше розглянутого, V −1 — вихідна інтенсивність субпікселя ліворуч від розглянутого, і т. д.; a, b і c — такі коефіцієнти, що 2a + 2b + c = 1. Класикою є , , . Таким чином, яскравість кожного субпікселя розподіляється між п'ятьма суміжними субпиксела, і кольорові артефакти стають менш помітними. Даний алгоритм розподілу яскравості розрахований на дисплеї, у яких всі пікселі мають однакове розташування субпікселів (наприклад, RGB). Якщо в різних рядках послідовність під-пікселів різна, рівень розмиття можна зменшити, або взагалі обійтися без цього кроку. Чому це працюєНаші очі можуть сприйняти як контраст кольорів, так і контраст яскравості. Але на малих масштабах контраст кольорів сприймається майже в три рази слабкіше, тому текст, відображений за допомогою ClearType, виглядає монохромним і гладким. При уважному розгляді навколо тексту можна побачити червоно-сині «розводи», проте на читання при нормальних умовах не впливають. Роль горизонтального розташування субпікселівГоризонтальне (а не вертикальне) розташування субпікселів один щодо одного відіграє важливу роль у роботі ClearType. Підвищення горизонтальної роздільності в три рази дозволяє варіювати міжсимвольний інтервал, більш реалістично відображати жирний шрифт і курсив, а також точніше задавати ширину символів. Більше того, оскільки текст і так розмитий в горизонтальному напрямку з радіусом в 2 субпікселя, ClearType'овані символи можна зрушувати вліво-вправо без втрати якості з кроком в 1/256 субпікселя[4]. Ні в Windows Vista, ні в Mac OS ця техніка не застосовується (але застосовується в Adobe Acrobat і Natural ClearType, що з'явився в Windows 7[1]). Якщо субпіксель розташувати один під іншим (як у повернутому на 90° РК-моніторі), механізм субпіксельного рендеринга підвищив би вертикальну роздільність, що менш корисно. В Windows Vista, Windows XP Tablet PC Edition і FreeType є підтримка такого розташування під-пікселів (під назвою Y-direction anti-aliasing в Windows і vRGB/vBGR в FreeType). Якість тексту при такому виводі істотно нижче. ClearType на ЕПТ-моніторахClearType не працює на ЕПТ-моніторах і РК-моніторах в позаштатній роздільності (у яких немає доступу до окремих світловипрмінюючих елементів), а також на DLP-проекторах (у яких піксель не ділиться на субпіксель). Проте, і на них ClearType'ірований текст виглядає краще незгладженого, так як субпіксельний рендеринг є варіантом згладжування. Хоча в Windows XP якісне згладжування мається як частина ClearType, в «чистому» вигляді воно відсутнє. Саме з цієї причини деякі користувачі люблять включати ClearType на ЕЛТ-моніторах. Хоча на кинескопах з щілинною маскою (Trinitron, Diamondtron, Flatron) смуги люмінофора схожі на субпіксель РК-монітора, все одно програмного доступу до кожного з окремих світних елементів немає. Тому і на них ClearType допомагає рівно настільки, наскільки допомагає згладжування. За допомогою деяких програм (наприклад, [1] [Архівовано 23 серпня 2013 у Wayback Machine.]) можна порівняти ClearType і звичайне згладжування. На ЕПТ-моніторах більшість людей віддають перевагу саме згладжуванню. Обмеження ClearType
За першими трьома причинами ClearType не можна використовувати, якщо підготовлюваний малюнок повинен коректно відображатися на будь-якому моніторі, а не тільки на тому, на якому він підготовлений. Зокрема, з цієї причини ClearType відсутній у програмах на зразок Adobe Photoshop. При підготовці скриншотів також правилом хорошого тону буде вимикання ClearType. ClearType заважає людям з підвищеним відчуттям кольору, особливо на низьких dpi — для них краї шрифтів починають «підтікати» рожевим, блакитним або світло-зеленим кольором, викликаючи почуття дефектності дисплея. Їм рекомендується ClearType повністю відключити і залишити тільки стандартний метод згладжування. На думку одного з розробників підсистеми ClearType для Windows:[5]
Windows-реалізація ClearType для зворотної сумісності влаштована так, щоб текст збігався за габаритами з звичайним незгладженим рендерингом. Одні шрифти (Arial, Tahoma) відхінтовані під незгладжений рендеринг, і ClearType не може повністю позбавити букви від артефактів хінтингу. Інші (Consolas, Segoe UI) — під ClearType, і на простому згладжуванні виглядають погано. Дехто [хто?] вважає, що ClearType не має довгострокової перспективи: з розвитком якості і роздільної здатності дисплеїв буде достатньо універсального згладжування, і використання неуніверсального обмеженого згладжування зразок ClearType стане безглуздим. Оспорювання патентуНа технологію ClearType виданий патент США (US patent 6,307,566 «Methods and apparatus for performing image rendering and rasterization operations»). Деякі [хто?] люди оскаржують цей патент, стверджуючи, що компанія Microsoft запатентувала відому раніше річ[6] — програмісти під Apple II подібним чином вдвічі підвищували ефективну роздільність NTSC-телевізора (який використовувався замість монітора). Те ж саме робили й інші комп'ютерні фірми. Навіть в описі Microsoft Basic для Apple II є посилання на такі прийоми. Примітки
|