#html #css #xml #fonts #epub
#HTML #CSS #xml #шрифты #epub
Вопрос:
У меня возникли некоторые проблемы с боковыми книгами, в которых неправильно отображаются моноширинные шрифты на моем Kobo Libra H2O. У меня есть несколько книг по программированию, в которых для отображения частей кода используются моноширинные шрифты. Когда я читаю их на Calibre, все они отображают форматирование без проблем. Однако на Kobo некоторые из них отображают его правильно, в то время как некоторые-нет, т. Е. Просто отображают все одним и тем же шрифтом с засечками (даже если выбрано предпочтение шрифта издателя).
Из того, что я прочитал, это, как правило, проблема со встроенными шрифтами; однако, похоже, что они оба содержат файлы шрифтов Ubuntu Mono otf в архиве .epub, поэтому я думаю, что это означает, что они «встроены», но я не уверен, какие другие настройки вызывают проблему.
Вот сравнение head
элемента и css
файла как для книги, которая правильно отображается на Кобо, так и для той, которая этого не делает. Есть ли что-то, что я мог бы адаптировать от того, что работает, к тому, что не работает, что могло бы заставить его работать должным образом? Спасибо.
Не работает:
epub.css:
code { font-family: "Ubuntu Mono", monospace; -webkit-hyphens: none; hyphens: none; adobe-hyphenate: none; overflow-wrap: break-word; }
ch01.html:
lt;?xml version="1.0" encoding="UTF-8"?gt; lt;!DOCTYPE htmlgt;lt;html xmlns:epub="http://www.idpf.org/2007/ops" xmlns="http://www.w3.org/1999/xhtml"gt; lt;headgt; lt;titlegt;Your First Web Scraperlt;/titlegt; lt;link rel="stylesheet" type="text/css" href="epub.css"/gt; lt;/headgt;
container.xml:
lt;?xml version="1.0" encoding="UTF-8"?gt; lt;container xmlns="urn:oasis:names:tc:opendocument:xmlns:container" version="1.0"gt;lt;rootfilesgt;lt;rootfile full-path="OEBPS/content.opf" media-type="application/oebps-package xml"/gt;lt;/rootfilesgt;lt;/containergt;
контент.opf:
lt;manifestgt; ... lt;item id="epub.embedded.asset.1" href="DejaVuSans-Bold.otf" media-type="application/vnd.ms-opentype"/gt; lt;item id="epub.embedded.asset.2" href="DejaVuSerif.otf" media-type="application/vnd.ms-opentype"/gt; lt;item id="epub.embedded.asset.3" href="UbuntuMono-Bold.otf" media-type="application/vnd.ms-opentype"/gt; lt;item id="epub.embedded.asset.4" href="UbuntuMono-BoldItalic.otf" media-type="application/vnd.ms-opentype"/gt; lt;item id="epub.embedded.asset.5" href="UbuntuMono-Italic.otf" media-type="application/vnd.ms-opentype"/gt; lt;item id="epub.embedded.asset.6" href="UbuntuMono-Regular.otf" media-type="application/vnd.ms-opentype"/gt; lt;/manifestgt;
Working fine:
core.css:
code { font-family: "Ubuntu Mono", monospace; }
ch01.html:
lt;?xml version="1.0" encoding="UTF-8" standalone="no"?gt; lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"gt; lt;html xmlns="http://www.w3.org/1999/xhtml"gt; lt;headgt; lt;titlegt;Chapter 1. Starting Outlt;/titlegt; lt;link rel="stylesheet" href="core.css" type="text/css"/gt; lt;meta name="generator" content="DocBook XSL Stylesheets V1.74.0"/gt; lt;/headgt;
container.xml:
lt;?xml version="1.0" encoding="utf-8" standalone="no"?gt; lt;container xmlns="urn:oasis:names:tc:opendocument:xmlns:container" version="1.0"gt; lt;rootfilesgt; lt;rootfile full-path="OEBPS/content.opf" media-type="application/oebps-package xml"/gt; lt;/rootfilesgt; lt;/containergt;
контент.opf:
lt;manifestgt; ... lt;item id="epub.embedded.font.2" href="DejaVuSans-Bold.otf" media-type="font/opentype"/gt; lt;item id="epub.embedded.font.1" href="DejaVuSerif.otf" media-type="font/opentype"/gt; lt;item id="epub.embedded.font.4" href="UbuntuMono-Bold.otf" media-type="font/opentype"/gt; lt;item id="epub.embedded.font.5" href="UbuntuMono-BoldItalic.otf" media-type="font/opentype"/gt; lt;item id="epub.embedded.font.6" href="UbuntuMono-Italic.otf" media-type="font/opentype"/gt; lt;item id="epub.embedded.font.3" href="UbuntuMono-Regular.otf" media-type="font/opentype"/gt; lt;/manifestgt;