Я тоже боролся с этим - надеюсь, кто-нибудь еще придет, чтобы объяснить все! Я генерировал ежедневную версию Guardian для Kindle и не нашел документации о том, как сделать это правильно в периодическом издании.
Тем не менее, я объясню, что я понимаю по этому поводу до сих пор - теперь мы можем генерировать файлы, которые работают на Kindle в качестве периодических изданий, используя kindlegen из файлов .opf
и .ncx
. Тем не менее, результаты еще не совсем идеальны, а именно: Я не знаю, как добавить топовый заголовок на страницу разделов и статей . Обновление: благодаря подсказке от Марко в комментариях, это работает сейчас, по крайней мере, с Kindlegen 1.1 - более поздние версии могут не работать. Я обновил приведенные ниже примеры файлов, добавив в них изображение заголовка.
Документацию для файлов .opf
и .ncx
можно найти здесь , но они только объясняют, как создавать книги, а не периодические издания.
Предположительно, вы можете получить документацию от Amazon через , зарегистрировавшись у них для публикации газеты , но это должно быть одобрено ими, и в моем случае в моем случае я не отвечаю условия и положения. (Хотя мне разрешено использовать данные из API Guardian, я не владею ими.)
Калибр генерирует документы в периодическом формате, но напрямую генерирует файл .mobi
/ .azw
, а не через .opf
и .ncx
. Я считаю, что это было сделано путем обратного инжиниринга двоичного формата. Calibre является открытым исходным кодом, поэтому вы можете использовать этот код для создания периодического издания.
В исходном коде Calibre есть подсказка, что ваш верхний уровень navPoint
должен иметь class="periodical"
, и действительно, кажется, что kindlegen создает книгу, которая представляется как периодическое издание.
Наряду с обнаружением предыдущего прорыва oldmanuk разработал, как получить имена авторов и резюме в список статей, который сводится к добавлению этих элементов под navPoint
каждой статьи:
<mbp:meta name="description">A summary of this article here</mbp:meta>
<mbp:meta name="author">The list of authors here</mbp:meta>
На случай, если это пригодится, я поместил здесь пару примеров файлов:
... и исходный код проекта находится здесь: