Movatterモバイル変換


[0]ホーム

URL:


Перейти до вмісту
Вікіпедія
Пошук

ClearType

Матеріал з Вікіпедії — вільної енциклопедії.
1 Букваа без згладжування;
2 Букваa, згладжена традиційним способом;
3 Букваa, згладжена ClearType.
Зверху масштаб 300%.

ClearType (відангл.«чистий шрифт») — методзгладжування тексту на певних видах комп'ютерних моніторів (особливо на РК), заснований на технології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

[ред. |ред. код]
27 пікселів в 9 пікселяхРК-монітора.

ВЕПТ-моніторах розташування червоних, зелених та синіх світловипромінюючих елементів ніяк не пов'язано з піксельною сіткою. Нарідкокристалічних дисплеях коженпіксель складається з трьох таких елементів: червоного, зеленого і синього. Ці елементи (назвемо їх субпікселями) єпрямокутникамишириною 1/3 пікселя івисотою 1 піксель, і розташовані вони суворо по порядку. ЗазвичайграфічнеПЗ розглядає піксель як єдине ціле. ClearType ж сприймає субпіксель як самостійні структурні одиниці.

Алгоритм роботи ClearType складається з двох кроків.

Масштаб 100%:
1 Лінія без згладжування;
2 Лінія, згладжена традиційним способом;
3 Лінія відображена з субпіксельним рендерингом.
Масштаб 1500%:
4 Лінія без згладжування;
5 Лінія, згладжена традиційним способом;
6 Лінія, відображена з субпіксельним рендерингом;
7 Та ж лінія, як вона буде відображена на моніторі.

Крок 1. Субпіксельний рендеринг

[ред. |ред. код]

Текст малюється з горизонтальноюроздільністю, втричі більшою, ніж вимагається. Кожен піксель отриманого тексту відповідає одному субпікселю екрану. Отриманий результат зображений на малюнку зліва (лінії 3, 6, 7).

На малюнку результуюча лінія (3) має білий колір, так як її ширина становить рівно три субпікселя. Часто товщина ліній не ділиться на 3, використовуються не всі субпікселі, і частини об'єкта, відображені в них, мають явний кольоровий відтінок. До того ж зелений піксель здається більш яскравим, а червоний з синім — більш насиченими. Для придушення цих колірних перепадів застосовується другий крок.

Крок 2. Розподіл яскравості

[ред. |ред. код]

На другому кроці текст розмивається в горизонтальному напрямку — тобто, частина яскравості, наприклад, червоного субпікселя, передається його зеленому і синьому сусідам.

Інтенсивність кожного субпікселя обчислюється за формулою

V=aV2+bV1+cV0+bV1+aV2{\displaystyle V=aV_{-2}+bV_{-1}+cV_{0}+bV_{1}+aV_{2}}

деV−2 — вихідна інтенсивність субпікселя, який знаходиться на 2 лівіше розглянутого,V−1 — вихідна інтенсивність субпікселя ліворуч від розглянутого, і т. д.;a,b іc — такі коефіцієнти, що 2a + 2b + c = 1. Класикою єa=19{\displaystyle a={\frac {1}{9}}},b=29{\displaystyle b={\frac {2}{9}}},c=13{\displaystyle c={\frac {1}{3}}}.

Таким чином, яскравість кожного субпікселя розподіляється між п'ятьма суміжними субпиксела, і кольорові артефакти стають менш помітними.

Даний алгоритм розподілу яскравості розрахований на дисплеї, у яких всі пікселі мають однакове розташування субпікселів (наприклад, RGB). Якщо в різних рядках послідовність під-пікселів різна, рівень розмиття можна зменшити, або взагалі обійтися без цього кроку.

Зліва: Субпіксельний рендеринг підвищує якість деяких елементів, наприклад, вертикальної палички букви «p». Але дрібні частини зразок зарубок найчастіше зовсім не сприймаються.
У центрі:ClearType розмиває субпіксельний рендеринг радіусом в 2/3 пікселі. Межі втратили різкість, але не помітно ні розкиду по яскравості, ні кольорових артефактів.
Справа: антіаліазінг, механічним чином побудований з субпіксельного рендеринга (залежно від кількості запалених пікселів встановлюємо інтенсивність в 0, 33, 67 або 100%). Межі чіткіше, ніж уClearType, але форма букв передана гірше.

Чому це працює

[ред. |ред. код]

Нашіочі можуть сприйняти якконтрасткольорів, так і контрастяскравості. Але на малих масштабах контраст кольорів сприймається майже в три рази слабкіше, тому текст, відображений за допомогою 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 шрифт розмитим.
  • Порядок під-пікселів в пікселі (RGB або BGR) повинен бути заздалегідь відомий.Windows XP за умовчанням передбачає, що порядок RGB, але його можна замінити на BGR черезреєстр; вручну або за допомогою спеціальнихутиліт (наприклад,ClearType Tuning PowerToy абоClearType Switch[Архівовано 3 лютого 2009 уWayback Machine.]). У РК-телевізорах сусідні рядки зрушують один щодо одного на 1,5 субпікселя; в поширених настільних ОС ClearType для таких екранів не реалізований.
Кольоровий текст на кольоровому тлі (масштаб 100% та 600%).
  • ClearType дає хороші результати тільки при виведенні темного тексту на світлому тлі або світлого тексту на темному тлі. Найбільша якість досягається, якщо чорний текст виводити на білому тлі (або навпаки). Спроба виведення кольорового тексту або використання кольорового тла не дасть високої якості кінцевого зображення, так як частина під-пікселів не задіяна. Наприклад, якщо виводити білий текст на червоному тлі, червоні субпікселі будуть запалені і для тексту, і для тла.
  • ClearType, як і будь-який інший типантіаліазінга, чутливий догами монітора. На неякісних моніторах без належної гама-корекції ClearType текст може бути зовсім чорним або дуже блідим.
  • УClearType, як і в антиаліазінгу, друкарський рушій повинен знати, яке тло знаходиться під текстом. А прикладний програміст повинен бути уважним: якщо двічі намалювати один і той же текст без антиаліазінгу, нічого не буде, а з антиаліазінгом — текст стане чорнішим і жирнішим, ніж треба. Втім, є суттєва відмінність: картинку з антіаліазінгом можна записати в графічний файл зальфа-каналом і накладати на будь-яке тло. УClearType тексті прозорість задається для кожного субпікселя окремо; така функція змішування проста, але в більшості графічних бібліотек не реалізована.

За першими трьома причинамиClearType не можна використовувати, якщо підготовлюваний малюнок повинен коректно відображатися на будь-якому моніторі, а не тільки на тому, на якому він підготовлений. Зокрема, з цієї причиниClearType відсутній у програмах на зразокAdobe Photoshop. При підготовціскриншотів також правилом хорошого тону буде вимиканняClearType.

ClearTypeзаважає людям з підвищеним відчуттям кольору, особливо на низькихdpi — для них краї шрифтів починають «підтікати» рожевим, блакитним або світло-зеленим кольором, викликаючи почуття дефектності дисплея. Їм рекомендується ClearType повністю відключити і залишити тільки стандартний метод згладжування. На думку одного з розробників підсистеми ClearType для Windows:[5]

Ліві лапки

[...]ВWPF використовується метод C[ClearType], але не у багатьох пристроїв роздільність настільки висока, щоб можливе розмиття нікому не заважало.[...]Когось влаштовує розмиття методу C, когось ні. Дивно, але факт: деяким зручно читати довгі тексти, відображені методом C на 96 dpi (наприклад, черезTimes Reader), але не подобаються вікна користувальницького інтерфейсу. Більшість людей не турбує кольорова облямівка ClearType, але деяких не влаштовує.[...]Як для моїх очей, на 96 dpi метод C читається гірше, ніж метод A[без антіаліазінга]. Для мене занадто розмито. А на 144 dpi не бачу жодних проблем — відмінно читається.

Праві лапки

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 є посилання на такі прийоми.

Примітки

[ред. |ред. код]
  1. абEngineering Windows 7: Advances in typography and text rendering in Windows 7. Архіворигіналу за 11 березня 2010. Процитовано 15 вересня 2013.
  2. ClearType-сглаживание в Linux, или шрифты как в Ubuntu / Linux для всех / Хабрахабр. Архіворигіналу за 1 січня 2012. Процитовано 15 вересня 2013.
  3. How to turn on Cleartype in Ubuntu Linux?. Архіворигіналу за 5 вересня 2013. Процитовано 15 вересня 2013.[Архівовано 2013-09-05 уWayback Machine.]
  4. Anti-grain technology — Text rasterization exposures. Архіворигіналу за 6 вересня 2013. Процитовано 15 вересня 2013.[Архівовано 2007-09-28 уWayback Machine.]
  5. ClearType, in XP and Vista | Typophile[Архівовано 13 жовтня 2008 уWayback Machine.](англ.)
  6. The Distant Origins of Sub-Pixel Font Rendering. Архіворигіналу за 21 липня 2006. Процитовано 15 вересня 2013.
Інструменти керування
Програми
Shell
Сервіси
Файлові системи
Сервер
Архітектура
Безпека
Сумісність
API
Ігри
Відкинуті
Інше


Незавершена стаття про Microsoft WindowsЦе незавершена стаття проMicrosoft Windows.
Ви можетедопомогти проєкту,виправивши або дописавши її.
Отримано зhttps://uk.wikipedia.org/w/index.php?title=ClearType&oldid=45131823
Категорії:
Приховані категорії:

[8]ページ先頭

©2009-2026 Movatter.jp