Board.KolibriOS.org

Official KolibriOS board
It is currently Sat May 25, 2019 12:13 am

All times are UTC+03:00




Post new topic  Reply to topic  [ 55 posts ]  Go to page 1 2 3 4 Next
Author Message
 Post subject: Графика
PostPosted: Mon Jan 16, 2012 6:38 pm 
Offline

Joined: Mon Jan 16, 2012 5:58 pm
Posts: 50
Графика напоминает WindowsOS, почему нельзя какнибудь по интереснее? У меня есть кстати функция, рисует шрифты векторные очень чётко, использует сглажиавание, может её воткнуть.
Моя отрисовка с права, слева винда.
Только шрифт пока один, и то не дорисованный.


Attachments:
12.jpg
12.jpg [ 14.95 KiB | Viewed 3376 times ]
Top
   
 Post subject: Re: Графика
PostPosted: Mon Jan 16, 2012 8:32 pm 
Offline

Joined: Mon Sep 24, 2007 11:11 am
Posts: 2814
Что за функция, как рисует, на чем написана, какие форматы шрифтов используются?
У нас открытое сообщество. Не нравится графическое оформление по умолчанию - можно изменить. Например, использовать dock от Trolly. Или сделать свой док. Пока что у всех разработчиков других дел достаточно. Есть желание заняться - все будут только рады. Настраиваемую панель с плагинами уже давно многие ждут.


Top
   
 Post subject: Re: Графика
PostPosted: Tue Jan 17, 2012 3:46 am 
Offline

Joined: Mon Jan 16, 2012 5:58 pm
Posts: 50
Функция написана на фасме написал сам, сейчас использую в своей оси(тоже на фасме написана).
Очень быстрая, с возможностью поворота букв. Формат в виде заголовка из 256 смешений на символ описаный точками для кривой бизье второго порядка.
Если кто любитель шрифты рисовать могу дать редактор свой.Не могу дорисовать шрифты, уситчивости не хватает.
Там можно виндовский шрифт обводить просто моей линией.


Top
   
 Post subject: Re: Графика
PostPosted: Tue Jan 17, 2012 4:38 am 
Offline

Joined: Mon Jan 16, 2012 5:58 pm
Posts: 50
Есть разработка по проектиравании ядра, которая даёт уникальные возможности, с кем из разработчиков можно переписаться по обмену опыта?


Top
   
 Post subject: Re: Графика
PostPosted: Tue Jan 17, 2012 10:07 am 
Offline

Joined: Mon Sep 24, 2007 11:11 am
Posts: 2814
Молодец! Подобная функция есть в библиотеке векторной графики для Колибри (за исключением неправильной отрисовки кривых Безье, о которой автор знает, и невозможности изменить толщину линии). Под какой лицензией код твоей функции?

Обрисовывать шрифты Windows - неправильный подход. Во-первых, это противозаконно. Во-вторых, в формат библиотеки векторной графики для Колибри я шрифты переводил небольшим скриптом прямо из ttf. Скрипт утерян, но сложностей в этом никаких нет.

Поддерживает ли твоя функция заливку областей? Боюсь, что нет. А это очень большое ограничение для шрифтов. Посмотри, к примеру, на демку шрифтов BGI. Увы, скорость отрисовки при наличии заливаемых областей - падает.

Разработка - это реально разработка, или просто идея? Почему бы просто не написать на форуме в теме "Разное"/"Ядро" (в зависимости от применимости к Колибри)?


Top
   
 Post subject: Re: Графика
PostPosted: Tue Jan 17, 2012 10:22 am 
Offline

Joined: Mon Jan 16, 2012 5:58 pm
Posts: 50
Как заливки нет, вы шаго! Я эту заливку 2 года мучал. И скорость там нормальная.
Разработка реализована но не все её возможности показаны.


Attachments:
Безымянный.jpg
Безымянный.jpg [ 15.22 KiB | Viewed 3314 times ]
11.jpg
11.jpg [ 10.28 KiB | Viewed 3314 times ]
Top
   
 Post subject: Re: Графика
PostPosted: Tue Jan 17, 2012 10:27 am 
Offline

Joined: Mon Jan 16, 2012 5:58 pm
Posts: 50
Какая разница где писать, от этого мало что изменится.
Перерисовываю шрифты не виндовские а свободных рисователей, их в инете много.
Конвертировать готовые проще, но не хочу. Там на одной букве 50 точек, а у меня 15 получается.


Top
   
 Post subject: Re: Графика
PostPosted: Tue Jan 17, 2012 10:50 am 
Offline

Joined: Mon Sep 24, 2007 11:11 am
Posts: 2814
Офигенно, молодец! Я потратил на разработку алгоритма вывода шрифтов около месяца, правда, по кругу выводить он не умеет. Так что с лицензией кода? :)
У конвертации есть плюс. Можно написать конвертер, который будет работать в целевой ОС, и тогда можно будет просто в этой целевой ОС скачать шрифт из интернета и установить.
256 символов - мало, нужно выпускать вторую версию формата шрифтов, чтобы можно было задавать Юникодовые шрифты. У меня на этот счет большие планы.
Если что, я готов помочь с отрисовкой всяких там DejaVu.
В примерах не увидел ни одной буквы типа "ё". Можно такое делать в текущей реализации? Если нет, нужно будет добавить еще возможность составления шрифтов из разных глифов, но это всё мелочи. Чувак, ты крут.
Скорость отрисовки не замерял, кстати?


Top
   
 Post subject: Re: Графика
PostPosted: Tue Jan 17, 2012 10:54 am 
Offline

Joined: Mon Jan 16, 2012 5:58 pm
Posts: 50
Я сначало писал на delfi, там скорость рисовки 50 букв была с задержкой, но перевёл на фасм и заметности не стало. Рисовать можно несколько фигурок в одной букве.


Top
   
 Post subject: Re: Графика
PostPosted: Tue Jan 17, 2012 10:55 am 
Offline

Joined: Mon Jan 16, 2012 5:58 pm
Posts: 50
Шас закачаю редактор.


Top
   
 Post subject: Re: Графика
PostPosted: Tue Jan 17, 2012 10:58 am 
Offline

Joined: Mon Sep 24, 2007 11:11 am
Posts: 2814
Хм. Я замерял, сколько времени занимает отрисовка одной буквы в разрешении 10x10, 16x16 и 600x600, и сравнивал с FreeType.
И всё же - как ты планируешь распространять свой код? Как public domain, как gpl, bsd или вообще не хочешь никому показывать?:)

Кстати, форум поддерживает архивы в формате 7z, и ограничение на размер файла - 256 килобайт. Если что-то более тяжелое, то лучше залить на rghost или еще куда-нибудь.


Top
   
 Post subject: Re: Графика
PostPosted: Tue Jan 17, 2012 11:10 am 
Offline

Joined: Mon Jan 16, 2012 5:58 pm
Posts: 50
Вопрос распространения конечно труден, но решения всегда могут найтись.
Это просмотр шрифта, там можно покрутить.


Attachments:
Просмотр.rar [96.82 KiB]
Downloaded 157 times
Top
   
 Post subject: Re: Графика
PostPosted: Tue Jan 17, 2012 11:23 am 
Offline

Joined: Mon Jan 16, 2012 5:58 pm
Posts: 50
Редактор рисует, при сохранении 2 файда, второй копировать можно в просмоторшик и переименовывать font.
Начинать рисовать с 3 кнопки, дальне по часовой стрелке обводить, а внутри фигуры против часовой.
2 кнопка - добавить точку круглую, 3 прямой угол. 1 кнопка редактировать после добавления точек.
Соединять первую с последней обязательно, перед соединением последнюю выделять


Attachments:
Редактор.rar [178.65 KiB]
Downloaded 149 times
Top
   
 Post subject: Re: Графика
PostPosted: Tue Jan 17, 2012 11:36 am 
Offline

Joined: Mon Sep 24, 2007 11:11 am
Posts: 2814
Ага, выглядит очень здорово. Редактор, конечно, норовистый, но всё ок. Рисует вроде прилично быстро, нужно попробовать отрисовку в VESA-режиме кучей текста на весь экран на слабой машинке.
С кернингом еще косяки, но это всё херня, только пчё!
Думаю, что в качестве библиотеки это было бы очень здорово. С моей точки зрения, код библиотек в GPL-системе в основном должен быть GPL-ным. А вообще - дело автора. Лишь бы свободная реализация была.


Top
   
 Post subject: Re: Графика
PostPosted: Tue Jan 17, 2012 11:53 am 
Offline

Joined: Mon Jan 16, 2012 5:58 pm
Posts: 50
В принципи можно как бинарник подключить к Колибри функцию. Я её использую на весе, задаю ей размер картинки на которой рисовать и адрес массива с пикселями, или размер экрана и LFB, размер шрифта. По отрисовке букв двигает положение координаты х. Проверка на неотрисовку за границей есть.
Можно ф-ю использовать для отрисовки любых форм, например для отрисовки произвольной формы окошек с сглаженными краями. Сглаживается не субпиксельно.
Почему заливка не получалось прекрасно понимаю :) Были случаи, когда алгоритм признавал нереализуемым.


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 55 posts ]  Go to page 1 2 3 4 Next

All times are UTC+03:00


Who is online

Users browsing this forum: No registered users and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Limited