P标签在iBooks 2.0.1中无法正确呈现

时间:2012-02-08 22:18:24

标签: epub ibooks

我有一个用InDesign 5.5创建的EPUB,我正试图在iPad上使用内置的Futura。 H1和H2标签在iBooks 2.0.1中正确呈现,但P标签和类默认为Times Roman。我试过了samp hack,但没有运气。这是一个例子:

p.Narrative-Body {
font-family : Futura, Arial, sans-serif;
font-weight : normal;
font-style : normal;
font-size : 1em;
font-variant : normal;
line-height : 1.6;
text-align : left;
color : #000000; }

这是html:

<p class="Narrative-Body">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus sapien lorem, semper ac tempus quis, imperdiet quis dui. Morbi sed sollicitudin elit.</p> *Real copy covered by non-disclosure.*

在电子制作网站上找不到任何答案,我重新安装了iBooks。同样的问题。但是,它在ADE和Safari中正常工作,Calibre正确显示sans-serif。 提前谢谢!


我们正在取得进步!我添加了com.apple xml文件并将我的体型映射到p标签。现在他们显示了Futura,但前提是他们是直接的p标签或带有跨度的p标签(用于磨合文本)。 P标签w /类仍然不使用Futura。就像测试一样,我在html和css中将类名称设为小写,但仍然没有运气。这是经过修改的HTML:

<p><span class="Quote-RunIn">“Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci.” </p>

CSS现在是:

p {
font-family: Futura, Arial, sans-serif;
font-weight: normal;
font-style: normal;
font-size: 1em;
font-variant: normal;
line-height: 1.6;
text-align: left;
margin: 0 0 1em 0;
orphans: 2;
widows: 2;

}

Natasha,因为我没有使用samp标签,所以我应该在p标签中指定font-family,对吧?

4 个答案:

答案 0 :(得分:2)

您的META-INF中是否有com.apple.ibooks.display-options.xml文件?它应该包含在其中:

<?xml version="1.0" encoding="UTF-8"?>
<display_options>
<platform name="*">
<option name="specified-fonts">true</option>
</platform>
</display_options>

这可能只是嵌入字体所必需的;我忘了。对不起,哈哈!如果这对您有用,请告诉我!


没错。虽然字体系列在h标签内部工作,但它在p标签内部不起作用。您想要取出p标签中的font-family。这样做:

p.Narrative-Body {
font-weight : normal;
font-style : normal;
font-size : 1em;
font-variant : normal;
line-height : 1.6;
text-align : left;
color : #000000; }
samp { font-family : Futura, Arial, sans-serif; }

标记应该是:

<p class="Narrative-Body"><samp>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus sapien lorem, semper ac tempus quis, imperdiet quis dui. Morbi sed sollicitudin elit.</samp></p>

请注意,您还需要我在META-INF文件夹中提到的文件。

这绝对有效;如果你发现它没有,那么可以运行CSS和Markup验证器,看看是否有其他干扰?

祝你好运!

答案 1 :(得分:1)

您肯定需要使用指定字体= true的META-INF中的Apple Display Options文件。此设置适用于所有指定的字体 - 嵌入式和系统式。

p {font-family:Futura;}是很好的语法 - 它可以在iBooks中使用。

如果您可以访问iOS模拟器,请将XHTML文件拖放到模拟器中的Safari中并在那里进行测试 - 它有时候会更加关注大写等等。也就是说,大写的类不是问题。

祝你好运!

答案 2 :(得分:1)

好吧,我得到了它的工作,感谢各位的帮助。添加Apple Display Options文件就可以了。我希望Adobe能够在将来的更新中自动生成此文件。我结束了将font-family属性留在p标签中,因为这就是InDesign生成它的方式。既然它正在工作,我想,为什么诱惑命运?

BTW,iBooks似乎在最新版本中尊重img width标签。

答案 3 :(得分:-1)

Derrick Schultz,@ dvsch在twitter上说:

  

无法与ePub对话,但在HTML中无法验证,因为类需要以小写字母开头。

相关问题