Board.KolibriOS.org

Официальный форум KolibriOS
Текущее время: Пн ноя 20, 2017 12:26 pm

Часовой пояс: UTC+03:00




Начать новую тему  Ответить на тему  [ 118 сообщений ]  На страницу Пред. 14 5 6 7 8
Автор Сообщение
 Заголовок сообщения: Re: Масштабируемые шрифты
СообщениеДобавлено: Пт авг 05, 2011 9:23 pm 
Не в сети
Kernel Developer
Аватара пользователя

Зарегистрирован: Пт авг 14, 2009 1:46 am
Сообщения: 1291
Sorcerer писал(а):
Увы, это только для части пиксельных шрифтов так.В реальности каждая буква иногда очень сильно отличается от своих родственников. ... кстати,к вопросу о букве б.Предлагаю тем же tahoma размера 16-20 (это гораздо меньше 63 пкс в высоту) набрать рядом буквы б и о. Разницу видно невооруженным глазом.
Да, согласен. В разных шрифтах - разные "родственники". Я сейчас вожусь с Курьером 9х16, там двойников больше и буквы тонкие - как раз то что надо. Размер 31х63 конечно абсурдно большой, я просто забил 6 бит на Y и 5 бит на Х, чтоб на все случаи жизни хватило. Мало ли что, может кто захочет себе крупный фонт 36х20 забабахать? Хотя на больших глифах конечно у безье-шрифтов будет преимущество в размере (но не в скорости отрисовки).
Sorcerer писал(а):
Насчет скорости-хочу непредвзятый тест производительности.И еще проблема-кто шрифты рисовать-то будет?Тяжелое и неблагодарное занятие.
Будет шрифт - будет и тест (MGB устроит в качестве непредвзятого теста?) .
Работка действительно муторная (я пока только до цифры 3 дошел), но чем дальше в лес- тем чаще партизаны - тем больше общих линий.


Вернуться к началу
 Заголовок сообщения: Re: Масштабируемые шрифты
СообщениеДобавлено: Пт авг 05, 2011 9:45 pm 
Не в сети

Зарегистрирован: Пн сен 24, 2007 11:11 am
Сообщения: 2814
Наверное;) катит только твой вариант только для тонких шрифтов, а это не годится для шрифтов в браузерах, продвинутых редакторах. А вместо старых системных-идея хорошая. Вместо запатентованного шрифта может лучше использовать что-то свободное и похожее?


Вернуться к началу
 Заголовок сообщения: Re: Масштабируемые шрифты
СообщениеДобавлено: Пт авг 05, 2011 9:55 pm 
Не в сети
Kernel Developer
Аватара пользователя

Зарегистрирован: Пт авг 14, 2009 1:46 am
Сообщения: 1291
Сейчас хотя бы что-нибудь читаемое, а то глаза совсем сели.
А потом - посмотрим на результаты.


Вернуться к началу
 Заголовок сообщения: Re: Масштабируемые шрифты
СообщениеДобавлено: Сб авг 06, 2011 12:59 am 
Не в сети

Зарегистрирован: Пт фев 18, 2011 3:13 pm
Сообщения: 201
art_zh писал(а):
Есть задумка сделать системные шрифты векторными, но НЕмасштабируемыми.


Идея не новая - в Apple II так кодировались спрайты чтобы быстро рисовать из Бейсика. Только назывались не спрайты, а как то по-другому (память уже не та...)
Разумно сделать кодировка 4-х битная. 3 бита на направление и 1 на действие - перемещение/рисование.
Кстати, эти изображения по существу векторные и их можно мащабировать.


Вернуться к началу
 Заголовок сообщения: Re: Масштабируемые шрифты
СообщениеДобавлено: Сб авг 06, 2011 12:51 pm 
Не в сети
Kernel Developer
Аватара пользователя

Зарегистрирован: Пт авг 14, 2009 1:46 am
Сообщения: 1291
johnfound
Масштабировать (х2, х3) конечно можно, но получится коряво - также как Zoom для маленьких растровых шрифтов.

Конечно идея стара как мир. Я помню более древние времена: в Turbo Pascal 3.0 была библиотека черепашьей графики, где трак тоже запоминался 4-битовыми цепочками.
И даже еще более древние: именно такой принцип кодировки был зашит в ROM (матрица с тысячами вручную впаяных диодов!) чуда советской электроники - векторно-растрового дисплея РИН-609.

Только всё-таки 3 битная кодировка линий на 25% короче. И даже такая упаковка оказывается избыточной: для плавных линий (без острых углов) можно обойтись и двумя битами на пиксель.


Вернуться к началу
 Заголовок сообщения: Re: Масштабируемые шрифты
СообщениеДобавлено: Сб авг 06, 2011 1:28 pm 
Не в сети

Зарегистрирован: Пт фев 18, 2011 3:13 pm
Сообщения: 201
art_zh писал(а):
johnfoundМасштабировать (х2, х3) конечно можно, но получится коряво - также как Zoom для маленьких растровых шрифтов.


Кодировка не все. Альгоритм рисования все. Ничего не мешает масштабировать х1.5 или х21.333 например.
Но в конце концов, лучше иметь полностью масштабируемые шрифты. Работа Sourcerer-а выглядела вполне перспективная. Жаль, человек на ассемблере не пишет и дело затягивается.


Вернуться к началу
 Заголовок сообщения: Re: Масштабируемые шрифты
СообщениеДобавлено: Сб авг 06, 2011 2:53 pm 
Не в сети

Зарегистрирован: Пн сен 24, 2007 11:11 am
Сообщения: 2814
Думаю,что на небольших размерах можно шрифты с помощью моего алгоритма делать,хотя и выйдет не так компактно,как вручную


Вернуться к началу
 Заголовок сообщения: Re: Масштабируемые шрифты
СообщениеДобавлено: Сб авг 06, 2011 4:13 pm 
Не в сети
Kernel Developer
Аватара пользователя

Зарегистрирован: Пт авг 14, 2009 1:46 am
Сообщения: 1291
Ну не годятся все эти безье и сплайны для маленьких букв. Для больших - да, нужно.
А 10-пиксельная линия всегда будет выглядеть коряво, даже с антиалайасингом.
Поэтому в комплекте к любому приличному шрифту всегда поставляются несколько его экранных версий в разных типоразмерах.
Допиленных вручную.
Wiki писал(а):
One issue is that fonts do not actually scale linearly at small sizes; features of the glyphs will become proportionally too large or small and they start to look wrong. PostScript avoided this problem with the inclusion of hints which could be saved along with the font outlines. Basically they are additional information in horizontal or vertical bands that help identify the features in each letter that are important for the rasterizer to maintain. The result was significantly better-looking fonts even at low resolution; it had formerly been believed that hand-tuned bitmap fonts were required for this task

http://en.wikipedia.org/wiki/PostScript


Последний раз редактировалось art_zh Сб авг 06, 2011 11:53 pm, всего редактировалось 1 раз.

Вернуться к началу
 Заголовок сообщения: Re: Масштабируемые шрифты
СообщениеДобавлено: Сб авг 06, 2011 4:49 pm 
Не в сети

Зарегистрирован: Пт фев 18, 2011 3:13 pm
Сообщения: 201
art_zh писал(а):
Ну не годятся все эти безье и сплайны для маленьких букв. Для больших - да, нужно....
...Допиленных вручную.


Что верно - то верно. Ручно нарисованные шрифты всегда лучше.


Вернуться к началу
 Заголовок сообщения: Re: Масштабируемые шрифты
СообщениеДобавлено: Сб авг 06, 2011 8:32 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Вт авг 25, 2009 4:45 pm
Сообщения: 788
turtle-графика открывает возможности для сколь-угодно глубокой детализации не только шрифтов... но и элементов интерфейса


Вернуться к началу
 Заголовок сообщения: Re: Масштабируемые шрифты
СообщениеДобавлено: Вс авг 07, 2011 1:49 pm 
Не в сети
Kernel Developer
Аватара пользователя

Зарегистрирован: Пт авг 14, 2009 1:46 am
Сообщения: 1291
XVilka
Одних turtle-линий для GUI недостаточно.

Нужно уметь определять (и переопределять на лету) кнопки, линии, фигуры, заливку, битмапы, градиенты -- всё, что сейчас крутится через GUI-функции.

Т.е. нужен полноценный метаязык, и [ядерный] парсер к нему.


Вернуться к началу
 Заголовок сообщения: Re: Масштабируемые шрифты
СообщениеДобавлено: Пн авг 08, 2011 9:57 pm 
Выделена тема Опять про X и Linux, просьба не загаживать больше эту тему оффтопом.


Вернуться к началу
   
 Заголовок сообщения: Re: Масштабируемые шрифты
СообщениеДобавлено: Вт сен 13, 2011 3:03 am 
Не в сети
Аватара пользователя

Зарегистрирован: Вт авг 25, 2009 4:45 pm
Сообщения: 788
по поводу метаязыка - что, если взять XML-метаязык, разработать/допилить спеки, а потом перевести в binary-xml? Быстро, компактано, и сравнительно легко парсить

Вот библиотека, для парсинга binary-XML https://libwbxml.opensync.org/


Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 118 сообщений ]  На страницу Пред. 14 5 6 7 8

Часовой пояс: UTC+03:00


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Limited
Русская поддержка phpBB