【问题标题】:P tag not rendering correctly in iBooks 2.0.1P 标签在 iBooks 2.0.1 中无法正确呈现
【发布时间】:2012-02-18 21:30:01
【问题描述】:

我有一个使用 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 正确显示无衬线字体。 提前致谢!


我们正在进步!!我添加了 com.apple xml 文件并将我的体型映射到 p 标签。现在它们显示 Futura,但前提是它们是直接的 p 标签或带有跨度的 p 标签(用于插入文本)。带有类的 P 标签仍然不使用 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:" 而不是 "font-family:" 我以前从未见过有人这样写 CSS。
  • 是否有其他样式表可以为p 元素设置font-family
  • 谢谢你们,但很遗憾,这些建议没有奏效。 @thenetimp InDesign 5.5 在导出到 EPUB 时会在冒号前插入那个空格,不知道为什么。

标签: epub ibooks


【解决方案1】:

您的 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>

这可能只是嵌入字体所必需的;我忘了。对不起,大声笑!让我知道这是否适合你!


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

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 和标记验证器,看看是否有其他干扰?

祝你好运!

【讨论】:

  • 感谢 Natasha,但不幸的是,它没有帮助。我认为这仅适用于嵌入式字体。
【解决方案2】:

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

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

如果您可以访问 iOS 模拟器,请将您的 XHTML 文件拖到模拟器中的 Safari 中并在那里进行测试 - 它有时对大小写等比较挑剔。也就是说,大写的类不是问题。

祝你好运!

【讨论】:

    【解决方案3】:

    好吧,我得到了它的工作,感谢大家的帮助。添加 Apple Display Options 文件就可以了。我希望 Adob​​e 能在未来的更新中找到一种自动生成此文件的方法。我最终将 font-family 属性留在了 p 标签中,因为这就是 InDesign 生成它的方式。既然它起作用了,我想,为什么要诱惑命运?

    顺便说一句,iBooks 似乎在最新版本中支持 img 宽度标签。

    【讨论】:

      【解决方案4】:

      Derrick Schultz,@dvsch 在推特上说:

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

      【讨论】:

      猜你喜欢
      • 2010-09-23
      • 1970-01-01
      • 1970-01-01
      • 2022-11-14
      • 2020-10-06
      • 1970-01-01
      • 2017-09-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多