koreec
Релиз 1.6.0
Теперь можно и на покой ![]()
Так будет ли "двойка" ?
Ответ: скорее нет чем да. По-крайней мере, в той форме, в которой нужно было бы это сделать - переписать "с нуля", заменить движок БД, добавить модульность и т.п.
Что новенького?
Разработка идет своим чередом сразу по нескольким направлением. Прежде все это работа с FBD, которая вылилась в отдельный проект - FBD Maker. В MHL осталась только базовая часть - конвертация при импорте с базовым набором полей и конвертация ранее каталогизированных книг. Все остальное уехало в FBD Maker, который на по идеологии напоминает известную софтину для работы с тегами mp3 Tag&Rename. Только в нашем случае все намного сложнее, потому как полей больше.
На данный момент функционал такой:
- Ручная конвертация в FBD (ну это банально)
- Автоматическая конвертация с получением информации из имени файла (по шаблону)
- Режим массового редактирования с перезаписью отдельных полей как в Tag&Rename
- Автоматическая конвертация с использованием БД библиотеки Генезис
Лично мне больше всего нравится последний пункт. Поскольку значительная часть ходящих по рунету технических книг уже осела в Генезисе, то шансы найти там данные достаточно велики. Работает это все примерно следующим образом: программа считает контрольную сумму файла и отправляет на специальный сервер, который при наличии данных отдает уже готовый фбд - файл. Остается прикрутить обложку (для djvu это уже автоматизировано), и готово!
Подключение обложек к pdf пока работает в полуавтоматическом режиме - если в папке с книгой есть соответствующая картинка, она цепляется автоматом. Заготовить же картинки заранее можно используя софт типа Pdf2Image. Надеюсь, в ближайшее время этот процесс удастся полностью автоматизировать.
В данный момент основная трудность заключается в том, что не сконвертированных в фбд книг у меня не осталось. Приходится запускать процесс по второму кругу :-(
Подержка формата FBD
При пересмотре структуры БД, в таблицах было предусмотрено место для обложки и аннотации к книгам. Планировалось хранить там данные для не-fb2. Но с реализацией такого функционала возникли сложности. Засунуть картинку в бащу не проблема, а вот что делать потом, при экспорте-импорте коллекций и пр. ... Короче говоря, процесс застопорился.
И тут по наводке либрусека и товарищей было найдено кардинальное решение - формат FBD. Кто не в курсе FBD - это Fiction Book Description, формат хранения метаинформации для не-fb2 книг. Представляет собой контейнер (zip) в котром лежит книга в любом формате и файл описания fbd. Файл fbd по сути является заголовком fb2.
Зачем это надо? Теперь можно хранить аннотацию, обложку, ключевые слова и издательскую информацию в формате, удобном для программ - каталогизаторов. Теперь все прелести fb2 - отображение обложки и пр. теперь доступны для любых форматов. Ну и самое главное - существенно упрощается добавление книг в коллекцию - он ничем не отличается от импорта fb2. Заодно решается проблема целостности - данные всегда внутри "книги", вероятность потерять обложку или аннотацию при таком подходе равна нулю.
В последних тестовых сборках MyHomeLib уже можно пользоваться всеми преимуществами fbd, импорт и отображение информации уже работают. Сейчас потихоньку перевожу свою не-fb2 коллекцию в FBD, заодно отлаживаю встроенный конвертер. Конечно, получается не очень быстро, но результат того стоит.
C обновленьицем
Выложил очередной релиз версии 1.5. В основном - работа над ошибками, но и полезных нововведений тоже набралось не мало.
