Генеральный спонсор проекта The-eBook.orgpocketbook.ua Устройства Магазины Сервис Поддержка bookland.net.ua Книги
fb2pdf
Goto page 1, 2, 3 ... 28, 29, 30  Next [all]
 
View unanswered posts
Post new topic   Reply to topic    The-eBook Forum Index -> Общий раздел по программному обеспечению
 

Какие новые возможности/исправления самые желанные?
добавить обратные ссылки из примечаний
12%
 12%  [ 2 ]
добавить опцию начать главу с новой страницы
6%
 6%  [ 1 ]
добавить подстраничные сноски
62%
 62%  [ 10 ]
добавить колонтитулы
0%
 0%  [ 0 ]
исправить "знаки препинания после сносок переносятся на новую строку"
6%
 6%  [ 1 ]
исправить "разные проблемы переносов с дефисом,слэшем, неразрывным пробелом и т.п."
12%
 12%  [ 2 ]
исправить "разные проблемы с именами и путями в скриптах запуска под линукс"
0%
 0%  [ 0 ]
Total Votes : 16

Author Message

viktorz
Член клуба The eBook

Член клуба The eBook


Joined: 22 Sep 2007
Posts: 1407
Location: San Jose, CA

PostPosted: Wed Feb 25, 2009 2:58 am     Quote

"Еще один" конвертер FB2 -> PDF.
Разработка начиналась на http://fb2pdf.com (Автор оригинального кода - trivee)

Java, command-line, open-source (code.google.com/p/fb2pdf/)

http://viktorz.s3.amazonaws.com/fb2pdf/fb2pdf-j.20100402.zip
http://viktorz.s3.amazonaws.com/fb2pdf/fb2pdf-j.20100424.zip
http://viktorz.s3.amazonaws.com/fb2pdf/fb2pdf-j.20100604.zip

Установка: распакуйте куда-нибудь...

Простейший вариант запуска для пользователей 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

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

Запускать из командной строки Windows так:
Code:

usage: fb2pdf [-h] [-s styles] <input_file_or_dir> [-r] [<output>]
 -h,--help          Show usage information and quit
 -r,--recursive     Process subdirectories
 -s,--stylesheet    Stylesheet file

Examples:

   fb2pdf test.fb2

   fb2pdf test.fb2.zip

   fb2pdf "c:\My Books"

   fb2pdf test.fb2 mybook.pdf

   fb2pdf -s data\mystyle.json test.fb2




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

Пользователям Windows 7, возможно, придется в fb2pdf.cmd в начале добавить строчку вроде "set JAVA_HOME=c:\Program Files (x86)\Java\jre6", обратите внимание - без \bin\ на конце, без кавычек, и без пробелов лишних в конце, и путь должен соответствовать реальному пути к Java

Пользователям Max OS X, возможно, придется добавить в fb2pdf.sh в начале строчку вроде JAVA_HOME="/System/Library/Frameworks/JavaVM.framework/Versions/1.6/Ho me/" (нужно убрать пробел в слове Home в конце пути, это баг форматирования на форуме


================

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


Потенциальные улучшения:
обратные ссылки из примечаний
опция начать главу с новой страницы
rightIndent
управляемый tracking
subscript/superscript
опция строгого порядка картинок
отключение борьбы со вдовами-сиротами
подсказка по параметрам командной строки
параметр командной строки для отключения создания log-файла
опция отключения "висячей пунктуации"
опции масштабирования обложки
борьба с киндлообрезанием страниц
+ подстраничные сноски
+ колонтитулы
+ настройки оформления ссылок на примечания
+ настройки оформления текста примечаний
+ отдельные размеры для шрифтов bold, italic, bolditalic
++ замена длинного тире на короткое в буквицах
+ параметр отключения картинок совсем
+ локализация текстовых строк в конфиге в зависимости от языка книги
+ свежие шаблоны переносов


Плюсами помечены приоритеты.
+ = в долгом ящике
++ = при случае
+++ = первым делом
_________________
Nothing Is Ever Easy


Last edited by viktorz on Wed Jun 30, 2010 8:02 pm; edited 61 times in total
 
View user's profile Send private message ^

Condorino
Кандидат в члены клуба The eBook

Кандидат в члены клуба The eBook


Joined: 05 Oct 2007
Posts: 293
Location: Россия, Тверь

PostPosted: Thu Feb 26, 2009 1:27 am     Quote

viktorz, пакетное преобразование как-то реализовано? Или по одному файлу только?
Я попробовал, в общем-то форматирование понравилось, только там некоторые стили по умолчанию я бы другие настроил — вместо курсива без засечек сделал курсив из шрифта с засечками, в аннотации например.
Неудобно, если файл fb2 назван как-то длинно. Надоест вбивать имя или переименовывать его перед этим.
 
View user's profile Send private message E-mail ICQ ^

viktorz
Член клуба The eBook

Член клуба The eBook


Joined: 22 Sep 2007
Posts: 1407
Location: San Jose, CA

PostPosted: Thu Feb 26, 2009 2:33 am     Quote

Condorino wrote:
пакетное преобразование как-то реализовано? Или по одному файлу только?


Можно пакетно обработать - пишем другой скрипт запуска. Например вот такой runmeloop.cmd в windows cконвертит файлы из директории:
Code:
for %%f in ("%~d1%~p1*.fb2") do "%~d0%~p0\fb2pdf.cmd" "%%f" "%%f.pdf"
for %%f in ("%~d1%~p1*.zip") do "%~d0%~p0\fb2pdf.cmd" "%%f" "%%f.pdf"
Запускается так:
Code:
runmeloop.cmd "C:\Documents and Settings\viktorz\My Documents\Books\"

Вот только толковой статистики в конце процесса не хватает. Пока так.

Добавлено спустя 8 минут 20 секунд:

Condorino wrote:
в общем-то форматирование понравилось, только там некоторые стили по умолчанию я бы другие настроил — вместо курсива без засечек сделал курсив из шрифта с засечками, в аннотации например


Отредактируйте .\data\stylesheet.json по вкусу.
Например замените вот это
Code:
        {
            name:             "annotation",
            baseStyle:        "default",
            fontSize:         "11.0pt",
            fontStyle:        "italic",
            alignment:        "justified",
            firstSpacingBefore:   "0.3em",
            spacingAfter:     "0.3em"
        },
на вот это
Code:
        {
            name:             "annotation",
            baseStyle:        "default",
            fontFamily:       "serif",
            fontSize:         "11.0pt",
            fontStyle:        "italic",
            alignment:        "justified",
            firstSpacingBefore:   "0.3em",
            spacingAfter:     "0.3em"
        },
и так далее в том же духе.

И не забудьте поделится результатом с общественностью!

Добавлено спустя 3 минуты 47 секунд:

Condorino wrote:
Неудобно, если файл fb2 назван как-то длинно. Надоест вбивать имя или переименовывать его перед этим.

Эту мысль я не совсем уловил. Ну да, неудобно (в консоли виндовс). Но что я с этим могу сделать в коммандлайновой утилите, кромe как GUI присобачить?

Добавлено спустя 28 минут 27 секунд:

А кстати, из разряда "Знаете ли вы, что...". В виндовс можно таскать мышкой файлы из окна Explorer в окно консоли, он тогда путь к файлу копирует в командную строку. Вот и не надо руками вводить.

Добавлено спустя 2 минуты 50 секунд:

А еще лучше вместо стандартной консоли в виндовс пользовать FAR...
_________________
Nothing Is Ever Easy
 
View user's profile Send private message ^

Condorino
Кандидат в члены клуба The eBook

Кандидат в члены клуба The eBook


Joined: 05 Oct 2007
Posts: 293
Location: Россия, Тверь

PostPosted: Thu Feb 26, 2009 6:22 am     Quote

viktorz, спасибо, попробую.
 
View user's profile Send private message E-mail ICQ ^

viktorz
Член клуба The eBook

Член клуба The eBook


Joined: 22 Sep 2007
Posts: 1407
Location: San Jose, CA

PostPosted: Sat Feb 28, 2009 7:04 am     Quote

Обновлено:
- двухуровневое содержание в ридере
- опционально выбор файла стилей в командной строке
- пакетная обработка директории с файлами *.fb2 и *.fb2.zip
- имя выходного файла по умолчанию, если не указано
- Drag&Drop Smile
- человеческая инфо в процессе (подробности в *.fb2.log)

Новую версию поверх старой лучше не копировать. Во избежание.
_________________
Nothing Is Ever Easy
 
View user's profile Send private message ^

Mitikas
Новенький участник форума

Новенький участник форума


Joined: 01 Jan 2009
Posts: 9
Location: Moscow

PostPosted: Sat Feb 28, 2009 11:32 pm     Quote

Попробовал - работает супер!
Спасибо!
_________________
"Born To Race"
 
View user's profile Send private message ^

Condorino
Кандидат в члены клуба The eBook

Кандидат в члены клуба The eBook


Joined: 05 Oct 2007
Posts: 293
Location: Россия, Тверь

PostPosted: Sun Mar 01, 2009 5:51 pm     Quote

viktorz, а можно сделать поддержку шрифтов Type 1?
 
View user's profile Send private message E-mail ICQ ^

viktorz
Член клуба The eBook

Член клуба The eBook


Joined: 22 Sep 2007
Posts: 1407
Location: San Jose, CA

PostPosted: Mon Mar 02, 2009 1:59 am     Quote

Condorino wrote:
viktorz, а можно сделать поддержку шрифтов Type 1?
Это *.afm? Кажется, можно. А нужно ли? У Вас есть какой-то замечательный фонт, котрого нет в ttf?

Добавлено спустя 2 часа 21 минуту 55 секунд:

Обновлено:
- опционально рекурсивная обработка поддиректорий
- исправлена проблема с конвертированием fb2, имеющих более одного тега title-info/sequence в заголовке
- исправлена проблема с отображением двух и более авторов в ридере
- изменен стиль по умолчание (new.stylesheet.json)

Новую версию поверх старой лучше не копировать. Во избежание.
_________________
Nothing Is Ever Easy


Last edited by viktorz on Tue Mar 03, 2009 12:00 pm; edited 1 time in total
 
View user's profile Send private message ^

Condorino
Кандидат в члены клуба The eBook

Кандидат в члены клуба The eBook


Joined: 05 Oct 2007
Posts: 293
Location: Россия, Тверь

PostPosted: Mon Mar 02, 2009 9:03 am     Quote

viktorz wrote:
Это *.afm?

*.pfm Там на самом деле 4 файла: *.pfm, *.pfb, *.afm, *.inf
viktorz wrote:
Кажется, можно. А нужно ли? У Вас есть какой-то замечательный фонт, котрого нет в ttf?

Есть Smile Но если это очень ресурсоемко, то и фиг с ним.
 
View user's profile Send private message E-mail ICQ ^

viktorz
Член клуба The eBook

Член клуба The eBook


Joined: 22 Sep 2007
Posts: 1407
Location: San Jose, CA

PostPosted: Mon Mar 02, 2009 9:42 am     Quote

Я тут попробовал - хватило двух файлов, *.afm и *.pfb.

Добавлено спустя 1 час 10 минут 50 секунд:

Обновлено:
- В файле настройки стилей можно указать encoding для шрифта (по умолчанию Identity_H):
Quote:

{
name: "serif",
regular: "./data/antiq6.afm#cp1251",
bold: "./data/antiq7.afm#cp1251",
italic: "./data/antiq5.afm#cp1251",
boldItalic: "./data/antiq4.afm#cp1251"
}


Condorino
В принципе шрифты *.afm + *.pfb поддерживались изначально. Но те, которые я пробовал, не поддерживали кодировку Identity_H, которую конвертор хотел. Так что я добавил возможность кодировку указать явно, как в примере выше. Честно говоря, я смутно понимаю, о чем говорю... Но сконвертить русскую книжку с такими настройками получается. Файлы antiq* - это AntiquaPSCyr из пакета шрифтов PSCyr для ТеХ. Надеюсь, это то, чего Вы хотели? А что за замечательный шрифт у Вас?
_________________
Nothing Is Ever Easy
 
View user's profile Send private message ^

Condorino
Кандидат в члены клуба The eBook

Кандидат в члены клуба The eBook


Joined: 05 Oct 2007
Posts: 293
Location: Россия, Тверь

PostPosted: Mon Mar 02, 2009 11:46 am     Quote

viktorz wrote:
Надеюсь, это то, чего Вы хотели?

Вечером дома посмотрю Smile
viktorz wrote:
А что за замечательный шрифт у Вас?

Что-то полюбился мне Swift, последнее время им верстаю для PDF, даже в ридер его прошил.
 
View user's profile Send private message E-mail ICQ ^

elf/2
Недавний участник форума

Недавний участник форума


Joined: 12 Sep 2008
Posts: 10

PostPosted: Tue Mar 03, 2009 9:20 am     Quote

во-первых спасибо за тул!

во-вторых пара багов/ограничений:
1. fb2pdf не завелся с jre 1.5 u16, но завелся с jre6 u12. Причем в первом случае ругался как-то некрасиво
2. не получилось отключить транслитерацию метаинформации Sad. Пробовал transliterateMetaInfo: "false", и совсем закоментировать generalSttings в stylesheet.json. если вдруг это важно, то исходный fb2 был в utf8
 
View user's profile Send private message ^

viktorz
Член клуба The eBook

Член клуба The eBook


Joined: 22 Sep 2007
Posts: 1407
Location: San Jose, CA

PostPosted: Tue Mar 03, 2009 11:59 am     Quote

elf/2 wrote:
1. fb2pdf не завелся с jre 1.5 u16, но завелся с jre6 u12. Причем в первом случае ругался как-то некрасиво

Я погляжу, но неплохо бы мне знать, как именно оно ругалось
elf/2 wrote:
2. не получилось отключить транслитерацию метаинформации Sad. Пробовал transliterateMetaInfo: "false", и совсем закоментировать generalSttings в stylesheet.json. если вдруг это важно, то исходный fb2 был в utf8

В последней версии стиль по умолчанию new.stylesheet.json. Есть у меня такое подозрение, Вы не тот файл редактируете Smile
_________________
Nothing Is Ever Easy
 
View user's profile Send private message ^

elf/2
Недавний участник форума

Недавний участник форума


Joined: 12 Sep 2008
Posts: 10

PostPosted: Tue Mar 03, 2009 11:11 pm     Quote

viktorz wrote:
Я погляжу, но неплохо бы мне знать, как именно оно ругалось

вот так примерно
Code:
D:\apps\fb2pdf>fb2pdf.cmd Zelinski_Erni__Uspeh_bez_ofisnogo_rabstva_www.Litru.ru_36296.fb2.zip
Converting Zelinski_Erni__Uspeh_bez_ofisnogo_rabstva_www.Litru.ru_36296.fb2.zip.. .

Caught: java.lang.NoSuchMethodError: java.lang.String.isEmpty()Z
        at launcher.translate(launcher.groovy:86)
        at launcher.run(launcher.groovy:59)

или чуть по другому если пускать через "java -jar lib/fb2pdf.jar <fb2> <pdf>"
Code:

Loaded binary #zelinski.jpg (image/jpeg)
Hyphenation is on
Language of the FB2: RU
Exception in thread "main" java.lang.NoSuchMethodError: java.lang.String.isEmpty()Z
        at org.trivee.fb2pdf.FB2toPDF.setupHyphenation(FB2toPDF.java:1249)
        at org.trivee.fb2pdf.FB2toPDF.run(FB2toPDF.java:248)
        at org.trivee.fb2pdf.FB2toPDF.translate(FB2toPDF.java:1206)
        at org.trivee.fb2pdf.FB2toPDF.translate(FB2toPDF.java:1200)
        at org.trivee.fb2pdf.FB2toPDF.main(FB2toPDF.java:1218)


viktorz wrote:
В последней версии стиль по умолчанию new.stylesheet.json. Есть у меня такое подозрение, Вы не тот файл редактируете

какая неудача Smile, если редактировать правильный файл то метаинформация остается по-русски. спасибо. но тогда еще пара наблюдений:
1. в лог вместо русских букв пишутся знаки вопроса (если транслитерация отключена)
Code:

Loaded binary #zelinski.jpg (image/jpeg)
Hyphenation is on
Language of the FB2: RU
Hyphenation language is: RU
Adding author: ????  ????????
Adding title: ????? ??? ???????? ???????
Loading image at #zelinski.jpg
...

2. в свойствах pdf'а название книги нормальное, а автор в кавычках. вроде бы это ничему не мешает, но как-то некрасиво
 
View user's profile Send private message ^

viktorz
Член клуба The eBook

Член клуба The eBook


Joined: 22 Sep 2007
Posts: 1407
Location: San Jose, CA

PostPosted: Wed Mar 04, 2009 1:29 am     Quote

elf/2 wrote:
в свойствах pdf'а название книги нормальное, а автор в кавычках. вроде бы это ничему не мешает, но как-то некрасиво

Кажется, это не я. Это Акробат Ридер из каких-то своих смутных соображений делает, и то не всегда. В свойствах файла в эксплорере этого нет, в других ридерах этого нет, собственно внутри pdf этого тоже нет.

Добавлено спустя 32 минуты 23 секунды:

Обновлено:
- совместимость с Java 1.5
- создание лог-файлов в кодировке "cp1251"

Новую версию поверх старой лучше не копировать. Во избежание.
_________________
Nothing Is Ever Easy
 
View user's profile Send private message ^

elf/2
Недавний участник форума

Недавний участник форума


Joined: 12 Sep 2008
Posts: 10

PostPosted: Wed Mar 04, 2009 4:29 pm     Quote

viktorz wrote:
Кажется, это не я. Это Акробат Ридер из каких-то своих смутных соображений делает, и то не всегда.

понятно

viktorz wrote:

Обновлено:
- совместимость с Java 1.5
- создание лог-файлов в кодировке "cp1251

спасибо, теперь в лог файле красота

кстати, а есть какие-нибудь планы развития/улучшения тулзы или уже все что хотелось сделано?
 
View user's profile Send private message ^

viktorz
Член клуба The eBook

Член клуба The eBook


Joined: 22 Sep 2007
Posts: 1407
Location: San Jose, CA

PostPosted: Wed Mar 04, 2009 11:14 pm     Quote

footnotes хотелось бы, но требует много возни
_________________
Nothing Is Ever Easy
 
View user's profile Send private message ^

elf/2
Недавний участник форума

Недавний участник форума


Joined: 12 Sep 2008
Posts: 10

PostPosted: Thu Mar 05, 2009 1:03 pm     Quote

viktorz wrote:
footnotes хотелось бы

какая правильная хотелка!
 
View user's profile Send private message ^

allanbradl
Новенький участник форума

Новенький участник форума


Joined: 18 Mar 2009
Posts: 3

PostPosted: Wed Mar 18, 2009 7:26 am     Quote

Я извиняюсь за может быть глупые вопросы, но мне много непонятно, в режиме онлайн у меня нет возможности изменить спейсинг между строками и увеличить шрифт, при попытке включить зум на ридере 505 все сбивается в одну строчку, я предпочитаю иметь плотно упакованный текст и шрифт вердана.
Вопрос в том что и как мне нужно изменять чтобы уменьшить расстояние между строкам (по сравнению с онлайн версией),как установить привычный шрифт и куда деваются якобы сконвертированные книги после того как я перетаскиваю их на .cmd (у меня выскакивает на секунду окно похожее на дос и на этом все кончается) Где и что я делаю неправильно?
 
View user's profile Send private message ^

viktorz
Член клуба The eBook

Член клуба The eBook


Joined: 22 Sep 2007
Posts: 1407
Location: San Jose, CA

PostPosted: Wed Mar 18, 2009 10:10 pm     Quote

1. Я так понимаю, "онлайн" - это сайт fb2pdf.com?
Tо, что лежит здесь никакого отношения не имеет к тому, что работает на сайте fb2pdf.com. "Еще один конвертер от тех же людей" - не значит "тот же самый", ага?

2. При перетаскивании файла fb2 на fb2pdf.cmd якобы сконвертированные книги появляются в той же директории, где лежит оригинальный файл, который перетаскивали. Там же появляются файлы с расширением .log, в которых подробный отчет о проделанной работе, и где можно увидеть ошибки, если что. Если не появляется ни того, ни другого, значит что-то сильно нехорошее. Например, на компьютере не установлена свежая Java. Если запустить из командной строки, а не перетаскиванием, то, вероятно, можно увидеть, как именно программа ругается, и тогда можно будет понять, где и что сделано неправильно.

3. Для того, чтобы изменять расстояние между строк и шрифт, следует редактировать файл new.stylesheet.json в поддиректории /data. Пример выглядит так

Code:
       
...
        {
            name:             "body",
            fontFamily:       "serif",
            fontSize:         "11.0pt",
            alignment:        "justified",
            firstLineIndent:  "1.5em",
            leading:          "1.2em"
        },
...

Здесь leading - растояние между строк. Какой именно шрифт будет "serif", настроено в этом же файле выше:
Code:
    ...
    fontFamilies: [
        {
            name:         "sansSerif",
            regular:      "./data/verdana.ttf",
            bold:         "./data/verdanab.ttf",
            italic:       "./data/verdanai.ttf",
            boldItalic:   "./data/verdanaz.ttf"
        },
        {
            name:         "serif",
            regular:      "./data/georgia.ttf",
            bold:         "./data/georgiab.ttf",
            italic:       "./data/georgiai.ttf",
            boldItalic:   "./data/georgiaz.ttf"
        }
    ],
    ...

_________________
Nothing Is Ever Easy


Last edited by viktorz on Fri Apr 17, 2009 11:16 pm; edited 2 times in total
 
View user's profile Send private message ^
Display posts from previous:   
Post new topic   Reply to topic    The-eBook Forum Index -> Общий раздел по программному обеспечению All times are GMT + 3 Hours
Goto page 1, 2, 3 ... 28, 29, 30  Next [all]
Page 1 of 30

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

© The-eBook, 1999-2010. © Design by Prohorenkov
Syndicating News | Powered by phpBB © 2001, 2005 phpBB Group.
Хостинг предоставлен компанией DatForce