FB2 Reader

...
  • Для этого его надо написать. Это не так быстро, как хочется.
  • akron1 wrote:При чем здесь паскаль? В чем проблема оформить загрузчик в виде MS COFF? Ну вот как системные библиотеки console.obj, libimg.obj и т. д. Они же не на паскале написаны.
    А для kf шрифтов ты obj библиотеку написал или внутри программы реализовал алгоритм?
    Технологии меняют мир, а я - меняю технологии.
  • pavelyakov
    И то, и другое. Алгоритм встроен в программу, но у меня есть и obj-библиотека. Просто я пока не стал ее публиковать, потому что она написана на Обероне, и поэтому ее производительность не на высоте, хотя и достаточна для многих программ. Но если надо, я могу выложить здесь.
  • Библиотека для работы с kf-шрифтами.
    В архиве исходник и бинарник библиотеки, исходник и бинарник примера использования (пример, правда, на Обероне, но думаю там можно понять как использовать библиотеку). Для работы примера, библиотеку скопировать в /rd/1/lib. Есть описание функций.
    Я не уверен, что компилятор Oberon-07 правильно генерит obj-библиотеки, но подключение этой библиотеки из Оберон-приложений выполняется таким же способом, как и любой другой (console.obj, libimg.obj...). И это работает. Подключать из других языков не пробовал.
    Attachments
    kfonts.zip (15.76 KiB)
    Обновлен 24.11.2016
    Downloaded 300 times
    Last edited by akron1 on Thu Nov 24, 2016 7:57 pm, edited 1 time in total.
  • akron1 wrote:Библиотека для работы с kf-шрифтами.
    В архиве исходник и бинарник библиотеки, исходник и бинарник примера использования (пример, правда, на Обероне, но думаю там можно понять как использовать библиотеку). Для работы примера, библиотеку скопировать в /rd/1/lib. Есть описание функций.
    Я не уверен, что компилятор Oberon-07 правильно генерит obj-библиотеки, но подключение этой библиотеки из Оберон-приложений выполняется таким же способом, как и любой другой (console.obj, libimg.obj...). И это работает. Подключать из других языков не пробовал.
    Теперь бы переписать на asm и оптимизировать алгоритмы и будет красота.
    Технологии меняют мир, а я - меняю технологии.
  • Вот уж чего не ожидал... А сейчас чем плохо?
  • Лично меня всё более-менее устраивает. Но по-хорошему, подобные прикладные библиотеки надо писать на C. На асме слишком хлопотно, трудно сделать в приемлимые сроки и с приемлимой надежностью. C++ слишком сложный и требует высокой квалификации разработчика, иначе получится код в стиле "Си с классами", не думаю, что это лучше, читабельней и надежней, чем просто Си. Oberon-07 сильно уступает в эффективности результирующего кода. C-- лучше вообще не использовать для разработки новых приложений.
  • А, то-есть это уже не та библиотека, что pavelyakov писал, а написанная на Oberon-07 с нуля? А впрочем все равно, пока вывод через VESA что-либо оптимизировать нет смысла.
  • Мне надо было реализовать работу с kf-шрифтами, но никакой документации по структуре kf-файлов нет, во всяком случае, я не нашел. На SVN есть файл font.h написанный на C--. Pavelyakov его написал, или кто -- не знаю, там не подписано. Тогда я, чтобы понять как это всё устроено, решил перевести этот файл на Оберон, конечно не весь, а только самое важное. Когда я во всем разобрался, то написал заново с полным функционалом уже без опоры на код C--, используя только знание структуры файлов kf.
  • Дабы расставить точки над "i".

    Идея kf шрифтов принадлежит pavelyakov, также как и конвертер ttf->kf, и первая версия исходника библиотеки на С--.
    Я же оптимизировал исходник, добавил базовый алгоритм сглаживания и сделал рисование в буфер и вывод одной картинкой.

    Уважуха akron1, что смог этот исходник разобрать и даже с пользой использовать.
    Из хаоса в космос
  • r6694
    v0.9
    Поддержка атрибута rowspan -> полная поддержка таблиц.
    Attachments
    1.png
    1.png (14.89 KiB)
    Viewed 8118 times
  • Вах! Таблицы с rowspan это круто.
    Небольшой оффтоп: возможно, посоветуешь хороший и простой редактор FB2 ?
    Из хаоса в космос
  • Leency, редакторами мне пользоваться не приходилось.

    Вообще, формат fb2 предназначен преимущественно для представления текстов художественной литературы и поэтому таблицы в fb2-документах встречаются редко (для тестов пришлось взять html-таблицу с сайта и модифицировать). Можно было их и не делать. Но это открывает теоретические возможности для просмотра более сложно-форматированных типов документов через конвертеры. Конвертер всё же сделать проще чем вьювер.
  • Еще можно рассматривать FB2 потом как печатный формат.

    Минибаги
    - в "Descr." едет форматирование
    - если изменить размер окна, то съезжает место чтения

    Листает быстро, аж завидно.
  • Who is online

    Users browsing this forum: No registered users and 3 guests