Проблемы с внутренними ссылками / якорями в выводе MOBI из Kindlegen - PullRequest
5 голосов
/ 08 февраля 2012

У меня есть хорошо структурированный файл EPUB, и я пытаюсь сгенерировать файл mobi, используя KindleGen ... EPUB заполнен сносками / аннотациями, которые являются внутренними ссылками / якорями.Все хорошо отформатировано, хороший HTML ... но созданный Kindlegen MOBI файл дросселирует:

  • Kindle Fire - все хорошо
  • Kindle - ссылки не работают
  • Kindle DX - ссылки не работают
  • Kindle iPhone - ссылки работают в Previewer, но не на моем iPhone
  • Kindle iPad - ссылки не работают

Конвертируя с Caliber, проблем со ссылками нет.

Используемый нами код выглядит следующим образом:

Ссылка NOTE из текста:

<a class="footnote" href="#footnote-3" id="return-footnote-3" title="Paul Johnson: Marks’s   
comments in this paragraph are excellent."><sup class="footnote">[3. Paul Johnson]</sup>
</a></p>

и код сноски к примечанию:

<p id="footnote-3"><a class="return-footnote" href="#return-footnote-3">3. <cite>Paul Johnson:
</cite> Marks’s comments in this paragraph are excellent.</a></p> 

Я попытался извлечь теги привязки, поэтому:

<a id="return-footnote-3"></a> <a class="footnote" href="#footnote-3" title="Paul Johnson:    
Marks’s comments in this paragraph are excellent."><sup class="footnote">[3. Paul Johnson]
</sup></a></p>

Но это не сработало.

Есть мысли?Предложения?

Ответы [ 2 ]

8 голосов
/ 08 февраля 2012

Проведя несколько минут, играя с этим, я сузил его до (как представляется,) ошибки в Kindle Previewer и различных приложениях для устройств.

Атрибут "title" в вашем теге [a] разрывает ссылку на ссылку на сноску. (Ссылка из сноски на ссылку работает во всех случаях).

Тем не менее, ссылки работают очень хорошо, когда загружены на мой настоящий Kindle (e-ink).

Вот моя расширенная версия вашего списка (выше):

Kindle Previewer:

  • Kindle Fire: все хорошо
  • Kindle: ссылка из ссылки на сноску не работает
  • Kindle DX: ссылка из ссылки на сноску не работает
  • Kindle iPhone: все хорошо
  • Kindle iPad: все хорошо

Kindle Apps:

  • Mac: не работает ссылка со ссылкой на сноску
  • iPhone: ссылка со ссылкой на сноску не работает
  • iPad: не работает ссылка со ссылкой на сноску
  • У меня нет других приложений для тестирования

Устройства:

  • Kindle: все хорошо
  • Kindle Fire: Нет ни одного доступного для тестирования
  • Kindle DX: У вас его нет, но можно предположить, что ссылки работают правильно, как с небольшим утомителем, Kindle

Итог:

Я бы посчитал это ошибкой, существующей в архитектуре Kindle Apps и Previewer. Но устройства, похоже, не разделяют ошибку (насколько я могу проверить в любом случае).

Временное решение:

Удалите атрибут title из тега [a].

Если кто-то еще захочет попробовать его на Kindle Fire , Kindle DX или на любом другом Apps , это было бы хорошо информация для добавления в этот пост.

Приветствия

Рон

0 голосов
/ 16 мая 2018

Приведенное выше разрешение не сработало, но заставило меня задуматься, работают ли все стили абзацев в формате .mobi. У меня был приличный файл EPUB с большим количеством ссылок. Они были закодированы, как показано ниже:

 <li id="footnote-52"><strong style="font-size: 1em;"><a href="../Text/5.Rozdzial_V.xhtml#footnote-ref-52">↑[52]</a></strong></li>

Проблема возникла, когда я преобразовал файл в mobi, атрибут «href =» из текста перемещался в начало раздела ссылок, так как не было ссылки для перемещения.

Решение этой проблемы не было очевидным. Оказалось, что Kindle не читает атрибут "li". Когда я попытался изменить «li» на «p» или «h», все стало работать без нареканий. Решение:

<h6 id="footnote-52"><strong style="font-size: 1em;"><a href="../Text/5.Rozdzial_V.xhtml#footnote-ref-52">↑[52]</a></strong></h6>

Приветствия

...