Главное меню
Мы солидарны с Украиной. Узнайте здесь, как можно поддержать Украину.

Универсальный шрифт для многоязычного сайта

Автор poshat, октября 17, 2017, 01:09

0 Пользователи и 1 гость просматривают эту тему.

poshat

Вопрос не только по работе форму, но и других сайтов в сети, на которых не отображается корректно нужная информация из-за отсутствия необходимых шрифтов в операционной системе. Поиск и установка необходимых шрифтов в систему может оказаться довольно нетривиальной задачей, к тому же давно есть возможность подгружать необходимые шрифты через оформление сайта - его стили (через css файл), но это уже обязанность владельца ресурса - обеспечить посетителям нормальный просмотр информации без дополнительных телодвижений.
Подгрузка нужных шрифтов через стили осуществляется примерно таким образом:
@import url(//fonts.googleapis.com/earlyaccess/notosanskannada.css);
body {font-family: 'Noto Sans Kannada', sans-serif;}

Проблема в том, что разные шрифты поддерживают разные наборы символов юникода и для многоязычных сайтов, как, например, этот форум, придется подгружать довольно много шрифтов.
Вездесущий гугл выпустил универсальный шрифт Noto, полная версия которого весит 1Гб, что слишком много для загрузки через сайт.
А ведь нужна-то для начала поддержка пары десятков наборов символов:
арабский
тайский
деванагари (без остальных языков Индии)
китайский
корейский
японский
вьетнамский
кириллица

Можно, например, осуществлять подгрузку из html документа необходимого щрифта на каждой отдельной странице подобной конструкцией:

<style>
@import url(//fonts.googleapis.com/earlyaccess/droidsansthai.css);
div#content {
font-family: 'Droid Sans Thai', sans-serif;
}
</style>

Но хотелось бы чего-то более универсального для всего сайта. Может знаете такие универсальные шрифты.

TestamentumTartarum

Я уже как-то высказывался на эту тему. Даже просил либо добавить универсальный шрифт, либо сменить стандартный на него.
Есть шрифт Gentium, который охватывает часть нужд и весит не так много. Также есть вроде бы веб-версия этого шрифта.
И видимо, в подключении к форуму веб-шрифта и есть возможное решение, так как насколько знаю - на сервере места мало.
Но, увы, я без понятия как это сделать.
Например, на //typeit.org можно выбрать каким шрифтом будут отображаться специфические символы и буквы.
P.S. Мнение опубликовано. ГКК.
P.P.S. Осторожно, ругаюсь бронетанками!

Bhudh

Можно посмотреть в сторону SVG-шрифтов.
Плюсы: формат текстовый, при прямых руках и оптимизации начертаний будет весить считанные байты.
Минусы: понимается не везде как надо, часто сохраняется в форматах обрабатывающих программ, что превращает прямые байты в жирные мегабайты.
Про универсальные восточные шрифты надо узнавать, я как-то не интересовался.
Пиши, что думаешь, но думай, что пишешь.
MONEŌ ERGŌ MANEŌ.
Waheeba dokin ʔebi naha.
«каждый пост в интернете имеет коэффициент бреда» © Невский чукчо

Тайльнемер

Цитата: Bhudh от октября 18, 2017, 23:27
формат текстовый, при прямых руках и оптимизации начертаний будет весить считанные байты.
Бинарные форматы компактнее, особенно, woff.
XML требует столько писанины, что считанные байты не получатся даже с очень прямыми руками.

SVG-шрифты могут действительно быть меньше засчёт отсутствия информации о хинтинге — хинтинг они не поддерживают. Но это сложно назвать преимуществом.

Krasimir

Цитата: poshat от октября 17, 2017, 01:09
Но хотелось бы чего-то более универсального для всего сайта. Может знаете такие универсальные шрифты.
Перепробовал очень много шрифтов и пришёл к выводу: только Cambria справляется со всеми задачами.
Кажнай пō мадё̄ӷыт ай кажнай ӄвӭ̄л ӄолдо̄ӷыт таштып коштат, кужат тат шё̄шӄуй шэндсэ шарвачанд.©

Шё̄шӄуй ӭ̄җла ве̄с ӄулатӄо!


Make Europe Kamassian again.

Тайльнемер

Цитата: Тайльнемер от октября 19, 2017, 06:25
XML требует столько писанины
Точнее, это не совсем так.
Бо́льшую часть файла занимают кривые Безье, координаты узлов которых в бинарных файлах записаны 4-байтовыми числами с плавающей точкой, а в SVG — числами в десятичной записи.
Под прямостью рук вы, вероятно, имели в виду округление чисел для минимизации длины их десятичной записи. Действительно, двузначное неотрицательное целое в такой записи будет на байт меньше. Но уже трёхзначное, или отрицательное, или число с десятичной точкой не будет иметь преимущества перед float'ом. Так что, да, если значительную часть координат сделать неотрицательными двузначными целыми, мы можем выиграть в размере, но часть выигрыша съест XML-разметка.

Ещё в бинарных файлах есть индексы для быстрого доступа к данным шрифта. Они тоже занимают некоторое место.

Тайльнемер

Цитата: Krasimir от октября 19, 2017, 06:51
Перепробовал очень много шрифтов и пришёл к выводу: только Cambria справляется со всеми задачами.
Цитата: poshat от октября 17, 2017, 01:09
арабский
тайский
деванагари (без остальных языков Индии)
китайский
корейский
японский
вьетнамский
кириллица
Из всего этого Камбрия поддерживает только кириллицу и вьетнамскую латиницу.

Krasimir

Цитата: Тайльнемер от октября 19, 2017, 06:54
Цитата: Krasimir от октября 19, 2017, 06:51
Перепробовал очень много шрифтов и пришёл к выводу: только Cambria справляется со всеми задачами.
Цитата: poshat от октября 17, 2017, 01:09
арабский
тайский
деванагари (без остальных языков Индии)
китайский
корейский
японский
вьетнамский
кириллица
Из всего этого Камбрия поддерживает только кириллицу и вьетнамскую латиницу.
Зато она единственная, кто адекватно передаёт любые символы кир/лат с любой диакритикой. Мне хватает, и альтернативы нет. Про другие системы письма не знаю, таких шрифтов наверное, нет. Для тибетского и деванагари отдельные шрифты.
Кажнай пō мадё̄ӷыт ай кажнай ӄвӭ̄л ӄолдо̄ӷыт таштып коштат, кужат тат шё̄шӄуй шэндсэ шарвачанд.©

Шё̄шӄуй ӭ̄җла ве̄с ӄулатӄо!


Make Europe Kamassian again.

Bhudh

Цитата: Тайльнемер от октября 19, 2017, 06:52Под прямостью рук вы, вероятно, имели в виду округление чисел для минимизации длины их десятичной записи.
Не только. Ещё минимизацию количества самих кривых.
Пиши, что думаешь, но думай, что пишешь.
MONEŌ ERGŌ MANEŌ.
Waheeba dokin ʔebi naha.
«каждый пост в интернете имеет коэффициент бреда» © Невский чукчо

Wolliger Mensch

Цитата: Krasimir от октября 19, 2017, 06:56
Зато она единственная, кто адекватно передаёт любые символы кир/лат с любой диакритикой. Мне хватает, и альтернативы нет. Про другие системы письма не знаю, таких шрифтов наверное, нет. Для тибетского и деванагари отдельные шрифты.

Шрифт Charis из конторы SIL. Там, правда, нет греческого (для него — Gentium оттуда же), но опентайп там лучше реализован, чем в Камбрии.
«Вот интересно, каких лингвистических жемчуг можно найти в море отодвинутых книг», Ян Гавлиш.
«Впредь прошу помнить, что придумал игру не для любых ассоциаций, а для семантически оправданных. Например, чтó это такое: ,,рулетке" — ,,выпечке"?? Тем более, что сей ляпсус я сам совершил...», Марбол
«Ветхий Завет написан на иврите и частично на армейском», Vesle Anne
«МЛ(ять)КО ... ПЛ(ять)NЪ», Тася
«Вот откроет этот спойлер, например, Марго, ничего не подозревая, а потом будут по всему форуму блюющие смайлики...», Авал
«Томан приличный мужчина. Правда по патриархальным меркам слегка голодранец», Vesle Anne
«Возможен ли фонетический переход "ж" в "п с придыханием"», forest

Тайльнемер

Цитата: Bhudh от октября 19, 2017, 11:26
Не только. Ещё минимизацию количества самих кривых.
Ну, это любого формата касается.

poshat

Насколько понял из ответов универсальных шрифтов с поддержкой, к примеру, сразу и европейских символов, и азиатских не существует. Во многом из-за ограничений по размеру. Надо или для каждой страницы подгружать нужный шрифт с необходимым набором символов, или смотреть в сторону svg шрифтов, которые могут содержать сразу несколько наборов символов.
Вообще странно, что даже википедия не имеет встроенных возможностей для просмотра страниц на других языках без предварительных манипуляций с поиском и установкой нужных шрифтов на локальную машину. Можно же с помощью скрипта легко автоматизировать данный процесс и выдавать пользователям готовый к прочтению текст, а не ждать от пользователя, что он возьмет всю рутину на себя сам.


Bhudh

Встроенные шрифты на веб-странице и установленные в системе шрифты: это всё-таки несколько разные вещи.
Википедия так не делает, думаю, потому, что возможности браузеров по работе со встраиваемыми шрифтами разные, а энциклопедии желательно давать всем одинаковую информацию, поэтому используются, например, графическое расширение Hiero вместо уникодовских египетских иероглифов и отдача PNG вместо рендеринга в MathML.
Универсальные шрифты-то есть, та же Universalia, но если всякий хрен её подгружать начнёт...
Пиши, что думаешь, но думай, что пишешь.
MONEŌ ERGŌ MANEŌ.
Waheeba dokin ʔebi naha.
«каждый пост в интернете имеет коэффициент бреда» © Невский чукчо

Bhudh

Пиши, что думаешь, но думай, что пишешь.
MONEŌ ERGŌ MANEŌ.
Waheeba dokin ʔebi naha.
«каждый пост в интернете имеет коэффициент бреда» © Невский чукчо

Ботаник

Цитата: poshat от октября 17, 2017, 01:09
Вездесущий гугл выпустил универсальный шрифт Noto, полная версия которого весит 1Гб, что слишком много для загрузки через сайт.
Это исключительно за счёт шрифтов CJK.
Два основных стиля (Sans и Serif), четыре национальных варианта (JP, KR, TC, SC), в каждом по 7 начертаний, каждый национальный вариант по 115-125 МБ. Получается 2*4*120=960 МБ.

Все остальные шрифты в сумме 10 МБ.

Цитата: poshat от октября 17, 2017, 01:09
А ведь нужна-то для начала поддержка пары десятков наборов символов:
«Минимальный набор» понятие растяжимое. У каждого свои интересы, и одним что-то будет лишнее, а другим чего-то недоставать. В принципе производители софта в чём-то правы, что они не спешат создавать универсальный шрифт, а наоборот создают по шрифту на одну письменность (ну не считая шрифтов WGL4, плюс в новые версии некоторых старых шрифтов типа Arial, Tahoma, т.п. добавили арабский, иврит, тайский, и кое-что ещё — то есть самые главные алфавитные письменности уже давно полностью поддерживаются). Ибо большинство пользователей ограничиваются обычно одним или нескольким языками, все 140 письменностей им не нужны (0,01% любителей всех подряд языков не в счёт).

В самом обычном Windows ещё с версии XP было предостаточно шрифтов для основной массы письменностей, плюс с MS Office поставлялся Arial Unicode. Лично мне этого много лет хватало, наоборот я даже национальные шрифты удалял, ибо зачем мне, допустим, шрифт Mangal, если деванагари уже есть в Arial Unicode. Единственный минус: в Arial Unicode криво отображались комбинаторные диакритики, но для этого лучше использовать специальные шрифты (те же шрифты SIL или Cambria). И уж для полного счастья для тех, кого раздражают квадратики на месте редких письменностей, можно поставить Unifont.

Ботаник

Цитата: poshat от октября 17, 2017, 01:09
арабский
тайский
деванагари (без остальных языков Индии)
китайский
корейский
японский
вьетнамский
кириллица
Специально посмотрел свои шрифты. Вашему списку удовлетворяют Arial Unicode MS, Code2000, Unifont. Если убрать CJK, ещё добавится FreeSerif.
Не считая того, что в этих шрифтах присутствуют ещё куча других письменностей.

Bhudh

Unifont это который матричный?
Уже давно этому пиксельному навозу есть достойная альтернатива в виде Universalia/Universalia Plus.
Пиши, что думаешь, но думай, что пишешь.
MONEŌ ERGŌ MANEŌ.
Waheeba dokin ʔebi naha.
«каждый пост в интернете имеет коэффициент бреда» © Невский чукчо

Python

Цитата: Bhudh от октября 27, 2017, 11:23
Unifont это который матричный?
Уже давно этому пиксельному навозу есть достойная альтернатива в виде Universalia/Universalia Plus.
И то, и другое рендерится ужасно.

В Unifont'е больше всего добивает его недомоноширинность: ради совместимости с CJK часть символов имеют двойную ширину (что автоматически делает его несовместимым с консолью) и, что хуже всего, широкими сделаны не только иероглифы, но и общая псевдографика, например. Хотя, с другой стороны, диакритика с нулевой шириной выглядит естественнее, чем переделанная в моноширинную (как в Courir New), но ложится на моноширинные буквы лучше, чем в разноширинных шритах (как в той же Universalia).

У меня сейчас на LF выбрана Universalia,15px (если пиксели не задавать или задать не те, буквы калечатся), в текстовом редакторе — unifont (ну а что делать, если у меня в коде иногда и глаголица встречается? Впрочем, моноширинность, требуемая при редактировании кода, портится в unifont'е еще и тем, что жирные и обычные буквы имеют в этом шрифте разную ширину — что для кода с подсветкой цветом и выделением тоже плохо).
Пролетареві ніколи вчити європейських мов, бодай би свою знати добре і на ній принести до своєї хати світло знання (Гнат Хоткевич)
ÆC CASALI NAXI PRASQURI: AHOV CÆRU, MERTVÆRI TÆ SLAVUTÆT!
Вони просили його: «Скажи: кетум», а він говорив: «сатем», і не міг вимовити правильно.
Хотелось бы также отметить, что "Питон" - это "мышиный язык" : "пи+тон". © АБР-2

Bhudh

Универсалия делается не для красивости, у неё цель: именно представить весь актуальный Уникод.
Пиши, что думаешь, но думай, что пишешь.
MONEŌ ERGŌ MANEŌ.
Waheeba dokin ʔebi naha.
«каждый пост в интернете имеет коэффициент бреда» © Невский чукчо

Python

Это понятно, но зачем представлять юникод некрасиво, если можно и красиво?
Пролетареві ніколи вчити європейських мов, бодай би свою знати добре і на ній принести до своєї хати світло знання (Гнат Хоткевич)
ÆC CASALI NAXI PRASQURI: AHOV CÆRU, MERTVÆRI TÆ SLAVUTÆT!
Вони просили його: «Скажи: кетум», а він говорив: «сатем», і не міг вимовити правильно.
Хотелось бы также отметить, что "Питон" - это "мышиный язык" : "пи+тон". © АБР-2

Bhudh

А Вы хотите, чтобы шрифт с версией Уникода X выходил тогда, когда уже вышел Уникод версии X+1?
Пиши, что думаешь, но думай, что пишешь.
MONEŌ ERGŌ MANEŌ.
Waheeba dokin ʔebi naha.
«каждый пост в интернете имеет коэффициент бреда» © Невский чукчо

Python

Предположим, для новодобавленных символов действительно более важно их оперативное включение в шрифт, чем красивость. Но ведь бо́льшая часть юникода повторяется от версии к версии.
Пролетареві ніколи вчити європейських мов, бодай би свою знати добре і на ній принести до своєї хати світло знання (Гнат Хоткевич)
ÆC CASALI NAXI PRASQURI: AHOV CÆRU, MERTVÆRI TÆ SLAVUTÆT!
Вони просили його: «Скажи: кетум», а він говорив: «сатем», і не міг вимовити правильно.
Хотелось бы также отметить, что "Питон" - это "мышиный язык" : "пи+тон". © АБР-2

Ботаник

Цитата: Bhudh от октября 27, 2017, 12:03
Универсалия делается не для красивости, у неё цель: именно представить весь актуальный Уникод.
Судя по комментариям авторам, шрифт этот создавался с единственной целью поддержки китайского. И с 2013, судя по всему, автором не поддерживается и не обновляется, и откуда скачать — неясно.

Unifont был создан не как основной, а как fallback шрифт. Глупо жаловаться на то, для чего этот шрифт и не был предназначен.


Быстрый ответ

Обратите внимание: данное сообщение не будет отображаться, пока модератор не одобрит его.

Имя:
Имейл:
Проверка:
Оставьте это поле пустым:
Наберите символы, которые изображены на картинке
Прослушать / Запросить другое изображение

Наберите символы, которые изображены на картинке:

√36:
ALT+S — отправить
ALT+P — предварительный просмотр