fb2pdf - Организация библиотеки на ПК/читалке | Приложения для ПК [Другое]



Реп: (2)
fb2pdf - Организация библиотеки на ПК/читалке | Приложения для ПК

Обсуждение конвертера изначально велось на the-ebook.org (ресурс закрыт с 1 марта 2019)

Описание
Скачать
Помощь
Установка
    Распакуйте куда-нибудь...

Настройки
    Настройки в файле /data/stylesheet.json.
    Изначально настроено для Sony Reader PRS-505.


Требования
    Для работы требует установленной последней Java. Проверьте версию Java

    На Win x64 рекомендуется две версии Java поставить, 32-bit и 64-bit.

    Возможно вместо полноценной установки Java использовать портативную версию jPortable


Запуск
    Простейший вариант запуска для пользователей Windows - в Windows Explorer перетащить мышкой *.fb2 или *.fb2.zip файл (или папку, содержащую такие файлы) и бросить его на fb2pdf.cmd. Он может также называться просто fb2pdf, если у Вас Windows Explorer настроен "скрывать известные раширения файлов". Такая иконочка с шестереночкой...

    Пользователи Linux+Gnome могут запускать конвертер, перетащив мышкой *.fb2 или *.fb2.zip файл на "launcher". Пример "launcher" включен в архив, это текстовый файл fb2pdf.desktop (Gnome скроет расширение .desktop, так что он будет выглядеть просто fb2pdf, такая иконочка с пружиночкой...). Перед использованием его следует отредактировать, заменив путь к fb2pdf.sh

    Запуск из командной строки:
    usage: fb2pdf [-h] [-s styles] [-l <log>] [-e <log>] <input> [-r] [<output>]
    Examples:
    fb2pdf test.fb2
    fb2pdf "c:\My Books"
    fb2pdf test.fb2 mybook.pdf
    fb2pdf -s data\myStylePart1.json -s data\myStylePart2.json
    test.fb2
    fb2pdf -l my_log.txt -e cp866 test.fb2
    -e,--encoding <arg> Log's encoding (default is cp1251)
    -h,--help Show usage information and quit
    -l,--log <arg> Log creation
    -o,--overwrite Overwrite existing pdf files
    -r,--recursive Process subdirectories
    -rt,--rotate <ROTATION> 90, 180 or 270
    -s,--stylesheet <PATH> Stylesheet file
    -t,--twoup Create two-up pdf


    Для пользователей Linux - fb2pdf.sh


GUI

Известные баги
Потенциальные улучшения
Технические характеристики
Операционная система: Другое
Тип экрана: Другой
Размер экрана, дюймы: Любой"
Разрешение экрана: Любое
Сенсорный экран: Да
Встроенная подсветка: [Подсветка]
Поддерживаемые текстовые форматы: PDF, FB2
Поддержка аудио: Да
Оперативная память, мб.: Любое
Встроенная память, мб.: Любое
Поддержка карт-памяти: Да
Поддержка Bluetooth: Да
Поддержка Wi-Fi: Да
Поддержка Text-to-Speech: Да
Емкость аккумулятора, мАч: Любое
Размеры, мм (Ш х В х Т): Любое
Вес, гр.: Любое
Сайт производителя: http://fb2pdf.vikz.info


Сообщение отредактировал fb2pdf-j - 27.02.19, 00:08



Реп: (8)
Это пишет бывший knigophil с бывшего the-ebook. Пытаюсь вычислить размеры экрана в миллиметрах для Kindle Oasis 2018 (1680x1264px, 300 ppi).
Помню, что нужно создать два тестовых pdf - полоска по высоте и полоска по ширине так, чтобы они целиком уместились на экране.
А вот что делать дальше, не помню.
Подскажите, пожалуйста.



Реп: (627)
* flugbottom, терема Пифагора помогает неплохо.

упд. соппсна, она даже и не нужна - есть размер в пикселях по вертикали и горизонтали. есть количество пикселей на дюйм. всё. если нужны милиметры - умножить на 25,4

Сообщение отредактировал Stopkin - 04.03.19, 07:34



Реп: (8)
Увы, это не так.
Киндл размещает экран только на части пространства экрана, то есть делает искусственные поля со все сторон страницы.
В итоге предельный размер страницы pdf меньше размеров экрана. Вот этот-то размер и нужно установить экспериментально.

Сообщение отредактировал flugbottom - 04.03.19, 08:24



Реп: (539)
flugbottom @ 04.03.19, 04:13 *
что делать дальше, не помню.

Снять скриншот, в каком-нибудь редакторе узнать точное число точек по выбранному измерению, посчитать общие дюймы/мм на пиксель, высчитать в мм ширину/высоту отображаемой части...



Реп: (8)
kaznelson @ 03.03.19, 21:36 *
Снять скриншот, в каком-нибудь редакторе узнать точное число точек по выбранному измерению, посчитать общие дюймы/мм на пиксель, высчитать в мм ширину/высоту отображаемой части...


Это-то я все уже проделал и получил сомнительные результаты: 84.825x106.227 что меньше того, что содержится в stylesheet.json от 2016 года для Voyage: 86.021х115.485
С отчаяния взял k2pdfopt, обработал имеющийся пдф (журнальная статья) с выходом на Oasis и в Adobe Reader подсмотрел размер выходной страницы. Получил 93.218x123.444.
Подставил эти размеры в fb2pdf и получил вполне приличный результат.
Может быть, все зависит от размеров полос в тестовых файлах? Я делал 250мм по высоте и 200 мм по ширине.



Реп: (539)
flugbottom @ 04.03.19, 08:55 *
получил сомнительные результаты: 84.825x106.227 что меньше того, что содержится в stylesheet.json от 2016 года для Voyage

Для семидюймового Оазиса расчёт в лоб дает размеры экрана ~142,24x107,02 мм. Имхо, из этого cложно получить отображаемую область меньше Вояжа... ;)



Реп: (2)
flugbottom @ 03.03.19, 17:13 *
Пытаюсь вычислить размеры экрана в миллиметрах для Kindle Oasis 2018 (1680x1264px, 300 ppi).
Помню, что нужно создать два тестовых pdf - полоска по высоте и полоска по ширине так, чтобы они целиком уместились на экране.
А вот что делать дальше, не помню.

https://sites.google.com/site/fb2pdfj/faq#TOC--5



Реп: (627)
flugbottom @ 04.03.19, 07:23 *
Увы, это не так.
как вы яхту назовете как был поставлен вопрос, так и дан ответ
flugbottom @ 04.03.19, 03:13 *
вычислить размеры экрана в миллиметрах



Реп: (8)
Спасибо всем ответившим насчет размера pdf страницы у Kindle Oasis 2018.
Уточняю только, что скриншот экрана с полосками нужно кропнуть, чтобы удалить белый фон.
Итак, размеры pdf страницы (портрет): 1580 x 1194 px. Размер одного пиксела при 300 ppi = 25,4мм/300 = 0,0847 мм.
В миллиметрах размер страницы: 133,783 х 101,092 мм.

Сообщение отредактировал flugbottom - 05.03.19, 09:26



Реп: (2)
2fb2pdf-j

На странице https://sites.google.com/site/fb2pdfj есть ссылка «Форум», ведущая на почившего в бозе the-ebook.

Наверное есть смысл заменить на актуальную? :)



Реп: (2)
OVG_at_F @ 05.03.19, 10:26 *
На странице https://sites.google.com/site/fb2pdfj есть ссылка «Форум», ведущая на почившего в бозе the-ebook.

А, еще одна. Спасибо, заменил.



Реп: (146)
Печально, что форум e-book умер. Поэтому попытаюсь спросить здесь. Можно как-то, имея сконвертированный pdf, определить настройки страницы (ширина, высота и размер шрифта)? Осталось несколько pdf сконвертированные по нужным параметрам, но сам конвертер при переустановке ОС потерялся, как и параметры. Найти нужные значения никак не получается.



Реп: (2)
Можно - в любом приличном редакторе PDF или выложи книгу куда-нибудь, я посмотрю



Реп: (0)
Подскажите как исправить.
После конвертации в PDF и закачки в книгу:
Зарубежный автор в библиотеке отображается на английском, название книги транслитом.

Необязательно но хотелось бы тоже поправить:
Поставил в настройках сноски в низу страницы, они формируются как внизу страницы так и в конце книги.
Хотелось бы оставить только внизу страницы.

Как убрать буковицы в начале абзаца?


В настройках конвертора два файла, можно ли создать вторую темную тему (белые буквы, на черном фоне) и переключаться на нее при необходимости при чтении на читалке.



Реп: (2)
https://sites.google.com/site/fb2pdfj/reference


bookeen @ 15.07.19, 00:05 *
Зарубежный автор в библиотеке отображается на английском, название книги транслитом.
transliterateMetaInfo

bookeen @ 15.07.19, 00:05 *
Поставил в настройках сноски в низу страницы, они формируются как внизу страницы так и в конце книги.
bodiesToRender

bookeen @ 15.07.19, 00:05 *
Как убрать буковицы в начале абзаца?
bodyDropCap - пустое значение

bookeen @ 15.07.19, 00:05 *
В настройках конвертора два файла, можно ли создать вторую темную тему (белые буквы, на черном фоне) и переключаться на нее при необходимости при чтении на читалке.
secondPassStylesheet

Сообщение отредактировал fb2pdf-j - 15.07.19, 18:40



Реп: (0)
fb2pdf-j @ 15.07.19, 17:59 *
secondPassStylesheet

Все сделал, кроме ночной темы.
Черный фон с белыми буквами получается. Но у меня это как бы еще один экземпляр книги размещенный следом за обычным вариантом. При этом не могу понять как - "Для "переключения" между двумя вариантами книги в содержание добавляется раздел, позволяющий быстро перейти с текущей страницы на соответствующую страницу второго варианта." В содержании такого раздела я не вижу.



Реп: (2)
bookeen @ 16.07.19, 01:35 *
При этом не могу понять как - "Для "переключения" между двумя вариантами книги в содержание добавляется раздел, позволяющий быстро перейти с текущей страницы на соответствующую страницу второго варианта." В содержании такого раздела я не вижу.

Анимация под спойлером (нажмите для просмотра полного изображения):

Прикрепленные изображения
Прикрепленное изображение


Сообщение отредактировал fb2pdf-j - 16.07.19, 18:31



Реп: (9)
Подскажите как сделать что бы на каждой странице сверху писало мелким шрифтом: слева название книги, а справа название главы. а снизу текущую страницу и оставшиеся до конца книги?



Реп: (539)
as12sa @ 08.08.19, 20:14 *
на каждой странице сверху писало мелким шрифтом
Cмотрите про верхний колонтитул (header) тут:
https://sites.google.com/site/fb2pdfj/reference

У меня для автор/название слева и страницы справа:
header: {
enabled: "true",
dynamic: "true",
skipBeforeSection: "true",
addHeightToMargin: "true",
chapterTitle: "replace(string-join(ancestor-or-self::section/title//*[name()!='a']/text(), '. '), '([^\\s\\w])\\. ', '$1 ')",
leftOdd: {
enabled: "true",
style: "headerLeft",
border: 2,
borderColor: "0x000000",
query: "fb:cut-right($authorFirstLastName, 75)"
},
centerOdd: {
enabled: "false"
},
rightOdd: {
enabled: "true",
style: "headerRight",
query: "$pageNum"
},
leftEven: {
enabled: "true",
style: "headerLeft",
query: "fb:cut-right($bookTitle, 75)"
},
centerEven: {
enabled: "false"
},
rightEven: {
enabled: "true",
style: "headerRight",
query: "$pageNum"
}
},

as12sa @ 08.08.19, 20:14 *
снизу текущую страницу и оставшиеся до конца книги?
Нижний колонтитул только для сносок. Общее число страниц не подсчитывается.

Сообщение отредактировал kaznelson - 08.08.19, 20:33



Реп: (2)
as12sa @ 08.08.19, 10:14 *
Подскажите как сделать что бы на каждой странице сверху писало мелким шрифтом: слева название книги, а справа название главы. а снизу текущую страницу и оставшиеся до конца книги?

1. Снизу не сделать никак. Только сверху.

2. Оставшиеся страницы не сделать никак. Только текущую.

3. Ознакомьтесь, пожалуйста, со справочником вот здесь: https://sites.google.com/site/fb2pdfj/reference
В частности, с описанием параметра header

4. Ознакомьтесь, пожалуйста, с примером применения параметра header в стандартных настройках из поставки. Включается посредством
enabled: "true"


5. Попробуйте следующий вариант настроек:
header: {
enabled: "true",
dynamic: "true",
skipBeforeSection: "true",
addHeightToMargin: "true",
//chapterTitle: "(ancestor-or-self::section)[2]/title//*[name()!='a']/text()",
//chapterTitle: "string-join(ancestor-or-self::section/title[.//text()[matches(., '[^\\d\\s]')]]//*[name()!='a']/text(), '. ')",
chapterTitle: "replace(string-join(ancestor-or-self::section/title//*[name()!='a']/text(), '. '), '([^\\s\\w])\\. ', '$1 ')",
leftOdd: {
enabled: "true",
style: "headerLeft",
border: 2, // TOP = 1; BOTTOM = 2; LEFT = 4; RIGHT = 8; NO_BORDER = 0; BOX = TOP + BOTTOM + LEFT + RIGHT;
borderColor: "0x000000",
// There are predefined variables $bookTitle, $authorFullName, $authorLastName, $authorFirstLastName, $authorFirstInitialLastName, $authorAllInitialsLastName
// There are predefined dynamic variables $pageNum, $chapterTitle
// There are predefined custom functions fb:cut-right(string, length) fb:cut-left(string, length)
// There are standard xquery functions http://www.w3schools.com/xpath/xpath_functions.asp
//query: "string-join(($authorFirstLastName, $bookTitle), ', ')"
query: "fb:cut-right($bookTitle, 30)"
},
centerOdd: {
enabled: "true",
style: "headerCenter",
border: 2,
query: "$pageNum"
},
rightOdd: {
enabled: "true",
style: "headerRight",
query: "fb:cut-right($chapterTitle, 45)"
},
leftEven: {
enabled: "true",
style: "headerLeft",
border: 2,
borderColor: "0x000000",
query: "fb:cut-right($bookTitle, 30)"
},
centerEven: {
enabled: "true",
style: "headerCenter",
border: 2,
query: "$pageNum"
},
rightEven: {
enabled: "true",
style: "headerRight",
query: "fb:cut-right($chapterTitle, 45)"
}
},


Сообщение отредактировал fb2pdf-j - 08.08.19, 21:01


Полная версия   Текстовая версия

Помощь   Правила

Сейчас: 28.03.24, 23:50