2013-04-09 86 views
0

嗨我有问题与卡特琳娜字体,我在我的web应用程序中使用。我需要使用mPDF将一些文本从html/css转换为pdf。问题是,这些数字看起来很尴尬。卡特琳娜字体中的数字

http://prntscr.com/zv9rl

但是当我在Photoshop中全部使用大写字母的功能,它们看起来不错。

http://prntscr.com/zv9xw

我只需要他们在同一条线上。有什么办法,我怎么能转换他们在PHP或与CSS看起来像在Photoshop(所有帽子)?

+0

'p {text-transform:uppercase; } ??? – str 2013-04-09 12:10:25

+0

我没有看到你的屏幕截图中的数字没有问题。第一次我看到数字的大写字形也是:) – 2013-04-09 12:52:13

+0

只是在黑暗中拍摄,但在PS中你有一些字距或其他东西,所以它使字体看起来像是在同一行上。在其他地方你没有这种控制水平,所以字体显示了作者的意图。你必须使用另一种字体可能是 – 2013-04-09 14:04:28

回答

0

尝试font-size: 24px; line-height: 26px; vertical-align: baseline;

如果baseline不起作用,要么尝试text-topbottomtext-bottom

希望这些作品出来的一个...

+0

text-transform:大写不起作用,我知道它看起来很疯狂,但我需要这些数字在同一行,我只是认为如果它可以用photoshop解决所有大小写的功能,那么它将可以在CSS或PHP中实现。 – Frees 2013-04-09 13:38:54

+0

查看编辑答案 – 2013-04-09 13:55:45

1

从图像,似乎字体包含“旧式”(或“小写”)数字和“衬里”(或“大写”)数字。它们将是字形变体,而不是单独的字符(如“a”和“A”),旧式数字是默认字符。据推测,Photoshop中的所有CAPS都会选择衬里数字;这有点奇怪,但可能 - 毕竟,typographically衬里数字应该用于由大写字母和数字组成的表达式。 - 我无法真正确认这一点,因为我没有字体,而围绕网络的名为卡捷琳娜的字体看起来非常不同。

在HTML中,过去不可能选择字形变体,但事情正在改变。查看我的demo page字体功能。如果您的系统中安装了Katerina,请在现代浏览器上打开该页面,在其中输入字体名称,然后使用“lnum”查看该行;它应该显示衬里数字。如果是这样的话,你可以使用下面的CSS声明,要求这样的数字,在使用的字体支持时:

-webkit-font-feature-settings: "lnum"; 
-moz-font-feature-settings: "lnum"; 
font-feature-settings: "lnum"; 

这样的造型是否会被转移到生成的PDF是一个不同的问题。我不是PDF的专家,但我希望它对OpenType功能有一些支持(这是关于这一点的)。

+0

谢谢,你的方式在浏览器中工作,但不是在mpdf中,但现在没关系,我在字形编辑器中打开了字体并自己修改了它。 – Frees 2013-04-16 12:23:27