?

Log in

No account? Create an account
title'; DROP TABLE `users` -- Day [entries|friends|calendar]
Курю бамбук. Дорого.

[ website | GQ's blog ]
[ userinfo | livejournal userinfo ]
[ calendar | livejournal calendar ]

Окончательная победа над шрифтами? [11 Nov 2007|05:07pm]

Здравствуйте, мои маленькие любители Linux.

Сегодня мы продолжаем цикл увлекательнейших статей про fontconfig и шрифты. Как вы помните, в прошлый раз мы победили шрифты семейства DejaVu, понизив их приоритет ниже шрифтов Microsoft. Принесло ли это нам полное удовлетворение? Не совсем. Существует немалое количество сайтов, созданных любителями Open Source. И эти любители, не моргнув глазом, прописывают шрифты семейства DejaVu в своих CSS. Слава богу, таких людей все же не так много, и с убогостью их сайтов можно смириться.

Но и это еще не все. Александр Соловьёв, в комментариях к предыдущей записи обратил мое внимание на то, что на некоторых сайтах скачет размер букв, то есть кириллические буквы заметно ниже латинских при том же размере шрифта. Воспроизвелось это крайне просто:

Default font: serif<br>
<br>
Latin O:   O<br>
Latin o:    o<br>
Cirillic O:  О<br>
Cirillic o:   о<br>
<br>
Here they come interleaved:<br>
OОOОOОOОOОOО<br>
oоoоoоoоoоoо<br>

Что привело к очаровательнейшей картинке:
interleaved.png

Но сам по себе Times New Roman содержит одинаковые по высоте глифы! Отгадка нашлась быстро. В предыдущий раз мы всего-лишь подвинули ниже строчку со шрифтами семейства DejaVu. А стоящий на первом месте шрифт семейства Bitstream Vera мы (я уж точно) не трогали. В обычной жизни этого было бы достаточно, так как шрифт семейства Bitstream Vera не содержит кириллицы и по текущей локали fontconfig выдает нам первый шрифт, в котором есть кириллица, то есть шрифт от Microsoft. Но Gecko (а следовательно Firefox) позволяет отрисовывать страницу, содержащую символы из различных алфавитов и, видимо, для большей универсальности, он запрашивает у fontconfig шрифт отдельно для латиницы, кириллицы, греческого, арабского, китайского и прочих алфавитов. И получилось, что для латиницы он использовал семейство Bitsream Vera, а для кириллицы шрифты от Microsoft.

Так что правильным будет передвинуть Microsoft’ские шрифты на первое место.

Вот такая вот история вышла. Интересно, это конец?

Upd: В Debian и, скорее всего, в Ubunte, а может быть и в других дистрибутивах, достаточно положить файлик local.conf с правильно заданными приоритетами в /etc/fonts.

permalink Add comment

Окончательная победа над шрифтами? [11 Nov 2007|05:07pm]

Здравствуйте, мои маленькие любители Linux.

Сегодня мы продолжаем цикл увлекательнейших статей про fontconfig и шрифты. Как вы помните, в прошлый раз мы победили шрифты семейства DejaVu, понизив их приоритет ниже шрифтов Microsoft. Принесло ли это нам полное удовлетворение? Не совсем. Существует немалое количество сайтов, созданных любителями Open Source. И эти любители, не моргнув глазом, прописывают шрифты семейства DejaVu в своих CSS. Слава богу, таких людей все же не так много, и с убогостью их сайтов можно смириться.

Но и это еще не все. Александр Соловьёв, в комментариях к предыдущей записи обратил мое внимание на то, что на некоторых сайтах скачет размер букв, то есть кириллические буквы заметно ниже латинских при том же размере шрифта. Воспроизвелось это крайне просто:

Default font: serif<br>
<br>
Latin O:   O<br>
Latin o:    o<br>
Cirillic O:  О<br>
Cirillic o:   о<br>
<br>
Here they come interleaved:<br>
OОOОOОOОOОOО<br>
oоoоoоoоoоoо<br>

Что привело к очаровательнейшей картинке:
interleaved.png

Но сам по себе Times New Roman содержит одинаковые по высоте глифы! Отгадка нашлась быстро. В предыдущий раз мы всего-лишь подвинули ниже строчку со шрифтами семейства DejaVu. А стоящий на первом месте шрифт семейства Bitstream Vera мы (я уж точно) не трогали. В обычной жизни этого было бы достаточно, так как шрифт семейства Bitstream Vera не содержит кириллицы и по текущей локали fontconfig выдает нам первый шрифт, в котором есть кириллица, то есть шрифт от Microsoft. Но Gecko (а следовательно Firefox) позволяет отрисовывать страницу, содержащую символы из различных алфавитов и, видимо, для большей универсальности, он запрашивает у fontconfig шрифт отдельно для латиницы, кириллицы, греческого, арабского, китайского и прочих алфавитов. И получилось, что для латиницы он использовал семейство Bitsream Vera, а для кириллицы шрифты от Microsoft.

Так что правильным будет передвинуть Microsoft’ские шрифты на первое место.

Вот такая вот история вышла. Интересно, это конец?

Upd: В Debian и, скорее всего, в Ubunte, а может быть и в других дистрибутивах, достаточно положить файлик local.conf с правильно заданными приоритетами в /etc/fonts.

permalink Add comment

Окончательная победа над шрифтами? [11 Nov 2007|05:07pm]

Здравствуйте, мои маленькие любители Linux.

Сегодня мы продолжаем цикл увлекательнейших статей про fontconfig и шрифты. Как вы помните, в прошлый раз мы победили шрифты семейства DejaVu, понизив их приоритет ниже шрифтов Microsoft. Принесло ли это нам полное удовлетворение? Не совсем. Существует немалое количество сайтов, созданных любителями Open Source. И эти любители, не моргнув глазом, прописывают шрифты семейства DejaVu в своих CSS. Слава богу, таких людей все же не так много, и с убогостью их сайтов можно смириться.

Но и это еще не все. Александр Соловьёв, в комментариях к предыдущей записи обратил мое внимание на то, что на некоторых сайтах скачет размер букв, то есть кириллические буквы заметно ниже латинских при том же размере шрифта. Воспроизвелось это крайне просто:

Default font: serif<br>
<br>
Latin O:   O<br>
Latin o:    o<br>
Cirillic O:  О<br>
Cirillic o:   о<br>
<br>
Here they come interleaved:<br>
OОOОOОOОOОOО<br>
oоoоoоoоoоoо<br>

Что привело к очаровательнейшей картинке:
interleaved.png

Но сам по себе Times New Roman содержит одинаковые по высоте глифы! Отгадка нашлась быстро. В предыдущий раз мы всего-лишь подвинули ниже строчку со шрифтами семейства DejaVu. А стоящий на первом месте шрифт семейства Bitstream Vera мы (я уж точно) не трогали. В обычной жизни этого было бы достаточно, так как шрифт семейства Bitstream Vera не содержит кириллицы и по текущей локали fontconfig выдает нам первый шрифт, в котором есть кириллица, то есть шрифт от Microsoft. Но Gecko (а следовательно Firefox) позволяет отрисовывать страницу, содержащую символы из различных алфавитов и, видимо, для большей универсальности, он запрашивает у fontconfig шрифт отдельно для латиницы, кириллицы, греческого, арабского, китайского и прочих алфавитов. И получилось, что для латиницы он использовал семейство Bitsream Vera, а для кириллицы шрифты от Microsoft.

Так что правильным будет передвинуть Microsoft’ские шрифты на первое место.

Вот такая вот история вышла. Интересно, это конец?

Upd: В Debian и, скорее всего, в Ubunte, а может быть и в других дистрибутивах, достаточно положить файлик local.conf с правильно заданными приоритетами в /etc/fonts.

permalink Add comment

navigation
[ viewing | November 11th, 2007 ]
[ go | previous day|next day ]