Re: Написание простого браузера
От: Aleх  
Дата: 24.07.10 22:38
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте

А>В учебных целях хочу написать простой браузер — парсер элементарного (упрощенная версия, с определенным мной подмножеством тегов) HTML и окно, которое отображает результат в виде красивых шрифтов, простого форматирования, и т.п.

А>Не смог найти простых примеров/статей по этой теме, поэтому возникли вопросы по тому, как это обычно делается (да искал я, правда искал Наиболее близкой по тематике оказалась книга Ахо о компиляторах).

А>Мое представление о том, как это делается, такое: загружается html-файл в память, и проводится его лексический анализ. Затем строится дерево (также как это делают XML-парсеры). Эта часть мне понятна. А вот дальше — собственно как обойти это дерево, применив к фрагментам текста (листьям этого дерева) атрибуты, вроде изменения размера шрифта, начертания, изменения цвета и т.п.?
А>Те кто занимался этими вопросами, можете набросать простую схему, что делать с деревом, чтоб превратить его в картинку? Или ссылки где почитать об этом
А>Спасибо

Вручную парсер писать не надо. Используй какой нибудь готовый XML DOM парсер. Получаешь дерево HTML файла в памяти. Посчитать размер шрифта — имеется ввиду по стилю css?
Самое сложное — посчитать разметку (ключевое слово layout engine).
Потом, уже когда определено положение всех элементов в окне, остается их только нарисовать. Для этого тоже можно найти какую нибудь удобную графическую библиотеку.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.