← All posts tagged шрифты

OCTAGRAM
шрифты ШГ cleartype SoapType Автор FixedSys Excelsior о борьбе с замыливанием шрифтов в Windows
Cleartype, microsoft’s sub-pixel anti-aliasing technology for lcd panels, has spread widely. Some people hate it; they usually just have it set up poorlyЯ честно пытался настроить, чтоб было не poorly. Ставил ClearType Tweak, оно там предлагало выбрать то один из 4х вариантов, то один 6, но на каждом шаге все 4 и все 6 — замыленные, как ни старайся перебрать все варианты. Это какое-то издевательство! Почему-то в Mac OS X у меня такой проблемы со шрифтами не возникало. Там вообще из коробки стояли приятные для глаза шрифты без хинтинга и замыливания, отлично вписываясь в общий внешний вид. И в Safari for Windows я без проблем находил нормальный вариант. В Linux тоже весь этот проклятый субпиксель за час можно найти, как отключить. А в Windows приходится идти на экстраординарные решения:
Even when a font has a perfectly straight line that matches up with screen pixels, CT will create a slight, tiny distortion to its right or left. It becomes more noticeable when the text is brightly colored. This spoils the precision of Fixedsys even though it is a rather minor effect. Now, Cleartype’s imprecision and incapability of improving vertical resolution is also why it fails with ideographic typefaces. It produces a smudged mess on complex letterforms like those used in Chinese. Even though only some fonts benefit from CT, the Cleartype implementers were seemingly too arrogant to allow font designers to override CT for better display (for example with embedded bitmaps, which Cleartype deliberately turns off). But they also knew that CJK fonts were unusable with CT, so they turned off CT for all fonts with both CJK support and embedded bitmaps. And that is why Fixedsys Excelsior 3.00 seems to have CJK support but actually does not: there is no other way to turn off cleartype on an individual basis.
Наверное, можно и с другими шрифтами это провернуть. Пропатчить все шрифты, как будто они CJK поддерживают, и мыло отступит.
OCTAGRAM
console acronis SWSoft TVGAScreen TDOSScreen Последовал совету и–таки получилось расковырять TVGAScreen в старом Акронисе.
Первые результаты таковы: внутренний буфер имеет 4 байта на ячейку. Голубенький фон кодируется 16#00005320#, в которых 20 — это определённо пробел. Верхний левый угол окна кодируется 16#00C07120#, затем 16#00407141#, 16#00407163# и т. п. кодируют надпись на заголовке окна «Acronis: …», причём, эти буквы — белого цвета, с тенью и поверх текстуры заголовка. При этом старший бит цвета символа в TDOSScreen используется, чтобы сделать 512 символов в текстовом режиме, но этот функционал и в графическом режиме TVGAScreen дублируется. Номер символа, таким образом, 9битный, разорванный на 1+8бит, как и в 512–символьном текстовом режиме. Красный крестик сверху справа у окна кодируется 16#00401F3B#, 16#00401F3C# — вот как раз, похоже, из доп.символов с номерами выше 256. Левая граница окна кодируется 16#00401D09#, правая — 16#00401D0A#. Серый фон окна — 16#00000520#. Левая нижняя граница — 16#00401D0F#, нижняя — 16#00401D06#, правая нижняя — 16#00401D10#.
Поставил несколько экспериментов. Гипотеза с цветами подтвердилась, но не совсем. Если я правильно интерпретирую наблюдения, старшие биты — это цвет символа, а младшие биты — цвет фона. А в реализации TDOSScreen, надо полагать, в знакогенераторе всем символам шрифт инвертировали, и, таким образом, в режиме 512 символов получили возможность использовать 16 цветов для символов и 8 для фона, а не наоборот, как будет, если просто поставить разные шрифты для разных значений старшего бита цвета символа. Ну и заварили же кашу кулхацкеры в этом вашем SWSoft''е! Могли бы выложить сорцы, чтоб не пропадали, всё равно у Acronis уже другой движок.
Эксперимент 1 с байтом цвета.
Вот так представлена в консольном буфере TVGAScreen панель инструментов
А это — выбранная линия с круглым краем, другой край не вошёл
А здесь — нижние кнопки, правда, одна из них, наверное, должна быть активной. Я перехватываю момент отрисовки, и в этот момент в буфере уже должна быть кнопка с фокусом на ней, а не экране DOSBox она ещё не отрисована.

Мне кажется, вот такая незамысловатая графика была бы для админов хорошей золотой серединой между суровостью tty и жирностью x11, vnc и т. п.
OCTAGRAM
дыбр macOS Думал, сегодня быстро обновлю Мак ОС до версии 10.4.10. Прошлый раз давно у меня получилось накатить koolkal 10.4.10, но я поставил какие-то лишние патчи, и звук у меня не работал, пришлось откатить. И надолго забил. Сегодня никак не везет, операционка не грузится после апдейта, приходится восстанавливать из бекапа и пробовать другую комбинацию патчей. А если оставаться на 10.4.8, нельзя поставить Safari 3 и нативный Remote Desktop из 2008ого Офиса. На Windows 2003го года почему-то работает Safari 4, а на МакОС 2005го года максимум третий Сафари и то хрен запустишь. В Remote Desktop я ожидал увидеть гладкие шрифты средствами Cocoa. Последний раз сейчас экспериментирую, если не получится, придется надыбать хакинтошный 10.6.