Russian Qt Forum

Программирование => Общий => Тема начата: serega-5508 от Март 27, 2011, 00:52



Название: написание браузера
Отправлено: serega-5508 от Март 27, 2011, 00:52
помогите, пожалуйста! Вопрос такой: как можно написать на Qt свой Web браузер, который будет читать собственную разметку, а не HTML, конкретно свою!


Название: Re: написание браузера
Отправлено: merke от Март 27, 2011, 07:48
Так делай ему setHtml() или указывай Url к своему локальному .html файлу


Название: Re: написание браузера
Отправлено: serega-5508 от Март 27, 2011, 12:06
Александр, вы может чуть не поняли! Мне не нужно загружать файл с расширением .html, мне бы загружать входной файл с расширением .txt, в котором забит текст с собственными тегами! вот как прописать эти теги, чтобы браузер понимал, найдя тег, что делать с текстом.


Название: Re: написание браузера
Отправлено: Авварон от Март 27, 2011, 12:42
смотри плагины к вебкиту. правда хз как убрать стандартную разметку


Название: Re: написание браузера
Отправлено: serega-5508 от Март 27, 2011, 14:01
есть ещё варианты????


Название: Re: написание браузера
Отправлено: Авварон от Март 27, 2011, 14:12
Кроме как читать доку? Нет.


Название: Re: написание браузера
Отправлено: merke от Март 27, 2011, 14:18
Так пиши свой парсер, который будет преобразовывать твои теги в Html теги, а уже далее полученный Html файл подгружай в браузер.


Название: Re: написание браузера
Отправлено: serega-5508 от Март 27, 2011, 14:33
Александр, а как написать парсер и на чём???


Название: Re: написание браузера
Отправлено: merke от Март 27, 2011, 15:08
ну считываешь свой файл в память.
И парси, например у тебя тег свой <jirnyiText> Какой то текст </jirnyiText>
заменяешь на <b> Какой то текст </b> и так далее, ну я к примеру.


Название: Re: написание браузера
Отправлено: brankovic от Март 27, 2011, 19:37
Александр, а как написать парсер и на чём???

Возьмите лучше какой-нибудь стандартный парсер xml, например кутишый, почитайте его хэлп. Не представляю, что вы собрались такое особенное в "своих" тэгах писать, чего в обычном хтмл нет и как это потом рендерить, но хоть польза будет -- с xml разберётесь.


Название: Re: написание браузера
Отправлено: Denjs от Март 27, 2011, 20:08
Александр, а как написать парсер и на чём???
Если у вас совсем ваши теги и синтаксис собственный - то только "ручкми, ручками") и "на с++, на с++" )))

ну собственно я, например, так и делал в OTPD.
Делал я так по 2-и причинам. Во первых мне надо печатать на принтере. Во вторых - правила описания тегов у меня несколько иные чем в HTML или XML. Например у меня есть параметры закрывающего тега, значения по умолчанию (типа <page>...</page cut=false buffered> - здесь buffered = true). Ну и там разные попущения вида "песекающихся" тегов (типа <b>...<u>...</b>...</u> - вещь которую ну никак низя делать в XML).
Все это только для того, что бы упростить требования к исходному тексту и сделать его более "человеческим".

Как написать интерпретатор/парсер - Самый простой вариант - описываете машину состояний, правила переходов и условия. потом все воплощаете в коде.
Задача 3-го курса института. Там где на лекциях интерпретатор Small Basic пишут.

Не уверен, что нашел верно, но похоже - это вам мождет помочь: http://www.realcoding.net/articles/chast-vii-interpretatory-yazyka.html
Разберитесь как работает вычислитель математических выражений на "рекурсивных описаниях типов"... или как-то так...


Название: Re: написание браузера
Отправлено: panAlexey от Март 28, 2011, 14:44
Александр, а как написать парсер и на чём???
На Qt вестимо. А на чем еще?
На бизоне или нисходящим разбором.