outtext.gsub!('<p><big><strong>','<epigraph><p>')

outtext.gsub!('</strong></big></p>','</p></epigraph>')

outtext.gsub!('&nbsp;',(160).chr)

outtext.gsub!(/&(?!lt;|gt;)/,'&amp;')

annotation.gsub!(/&(?!lt;|gt;)/,'&amp;')

outtext.gsub!('<br>','</p><p>')

outtext.gsub!('<br>','</p><p>')

# чистим мусор

outtext.gsub!(/x01|x12|x18|x1E/, '?')  # удаляем непечатные символы

# корректируем неправильное использование '<' и '>'

# заодно прибиваем ненужные тэги

outtext.gsub!(/(<p>)(.*)(</p>)/) do |line|

  subl1,subl2,subl3 = $1,$2,$3

  subl2.gsub!('<','x8b')

  subl2.gsub!('>','x9b')

  line=subl1+subl2+subl3

end

# а линки выделим жирным

outtext.gsub!(/x8Ba href.+?x9B(.*?)x8B/ax9B/) {|line| line='<strong>'+$1+'</strong>'}

# компьютерное тире - в типографское

outtext.gsub!(/s-s/,' x97 ')

outtext.gsub!('<p>-', '<p>x97')

annotation.gsub!(/s-s/,' x97 ')

# добавляем заголовок

outtext='<?xml version='1.0' encoding='windows-1251'?>

<FictionBook xmlns='http://www.gribuser.ru/xml/fictionbook/2.0' xmlns:l= 'http://www.w3.org/1999/xlink'>

<description>

<title-info>

<genre>nonfiction</genre>

<author>

<nickname>Редакция журнала</nickname>

</author>

<book-title>'+fbtitle[0]+fbtitle[1]+fbtitle[2]+'</book-title>

<annotation> '+annotation+'</annotation>

<date>'+fbtitle[2][-7,4]+'</date>

<lang>ru</lang>

<sequence name=''+fbtitle[0]+'' number=''+fbtitle[1][1,2]+''/>

</title-info>

<document-info>

<program-used>Yuzich Ruby script (WiseSoft -> FB2)</program-used>

<src-url>http://www.wisesoft.ru</src-url>

</document-info>

</description>

<body> '+outtext

if flagSect then outtext=outtext+'</section>' end # если надо, закроем последнюю секцию раздела

outtext=outtext+'</body> </FictionBook> ' # добавляем хвост

# в имени выходного файла не должно быть двоеточия

fbtitle[0].gsub!(':','-')

# и типографские кавычки - это не есть хорошо

fbtitle[0].gsub!((171).chr,'`')

fbtitle[0].gsub!((187).chr,'`')

# сохраняем выходной файл

wfile = File.new(fbtitle[0]+fbtitle[1]+'.fb2','w')

wfile.puts outtext

wfile.close

Вам останется только загрузить готовый FB2-файл в FB Editor и доделать, то, с чем не справился скрипт: вставить обложку, разметить подзаголовки и цитаты,  подправить эпиграфы. Но это не должно отнять много времени. Основную часть работы проделал скрипт.

Рабочие версии этих скриптов вы можете взять с моего сайта http://yuzzich.narod.ru.

Часть IV

Редактирование книг. FB Editor

Как уже говорилось, файл книги, после конвертации, в обязательном порядке требует окончательной доводки.

Для этого существует программа FB Editor, входящая в пакет FB Tools. Разумеется, это далеко не единственное стредство редактирования FB2-книг.

Данное описание соответствует оригинальной версии FB Editor 1.0 от 23 февраля 2005 года.

Автор FB Editor, Михаил Мацнев, не стал утруждать себя написанием help-а, не без основания считая, что разобраться, как работать с программой, можно и без такового.

Однако, судя по количеству вопросов на форумах fictionbook.org  и прочих, описание программы все- таки требуется.

§ 4.1 Установка программы

Для работы FB Tools требуется операционная система семейства Windows NT: лучше всего Windows 2000 или Windows XP.

Также понадобится MSXML 4.0 SP2 и Internet Explorer версии не ниже 5.5 и (внимание!) не выше 6.0 SP1.

Скачать MSXML 4.0 можно с официального сайта Micro$oft. При этом проверка Windows на легальность не производится :).

==ВАЖНО========================

Если у вас установлен Internet Explorer 7.0 и выше, ставить FB Editor, не стоит и пытаться — работать не будет. Вам придется воспользоваться альтернативной разработкой — FB Writer или версией FBE от «ЛитРес».

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

Добавить отзыв
ВСЕ ОТЗЫВЫ О КНИГЕ В ИЗБРАННОЕ

0

Вы можете отметить интересные вам фрагменты текста, которые будут доступны по уникальной ссылке в адресной строке браузера.

Отметить Добавить цитату