Как удалить страницы из книги (и соответственно изменить содержание)

У меня есть относительно большой файл epub с током, в котором я заинтересован только частью страниц. (Более конкретно, это полный каталог заклинаний для ролевых игр, и я хочу оставить только те заклинания, которые мой персонаж выучил или может выучить).

Существует ли какой-либо инструмент, который позволяет легко удалять страницы и удалять удаленные страницы из оглавления и других ссылок?

До сих пор самый простой способ, который я вижу, - это конвертировать epub в html с калибром, а затем использовать огромный скрипт bash (sed) для изменения ссылок между всеми страницами (это означает оглавление для каждой главы и даже ссылки для перелистывания страниц) во всех файлах HTML.

Есть ли программы, которые лучше справляются с этим?

Большое спасибо!

1 ответ

Решение

Прочитав и попробовав некоторое время, я обнаружил, что любое преобразование в html ухудшает ситуацию. Читая о том, как на самом деле построен epub, приведите к следующим шагам:

  1. Разархивируйте файл epub (это действительный zip-файл с другим суффиксом)
  2. Внутри есть все главы, как *.xhtml файлы и два важных файла content.opf а также toc.ncx
  3. С помощью toc.ncx могут быть идентифицированы ненужные файлы xhtml (удалите ненужные navPoint раздел потом)
  4. content.opf содержит manifest и spine раздел.
  5. В разделе манифеста идентификатор присваивается каждому файлу. Порядок этих идентификаторов в разделе позвоночника - это порядок, в котором файлы глав встречаются в книге.
  6. Удалите соответствующую линию из секции позвоночника, и глава исчезла.
  7. Затем вы можете удалить строку из манифеста и удалить файл xhtml. Все работает без этого шага, но это просто мертвый вес.
  8. Застегните его снова и измените суффикс на epub.

Эти шаги достаточно хорошо подходят для сценариев, поэтому моя проблема решена.

Другие вопросы по тегам