关于中文 Truetype 字体太细,以及 Type1 字体粗细不均匀等问题,最近观察到一些很有趣的现象,现在与大家分享一下,共同讨论,看看能否有进展:

1. 我将 mytex 前辈寄给 CJK 作者的信 (关于 pdfLaTeX 生成的,嵌入 Type1 字体的 pdf 文件在 Acrobat/Reader 6 下粗细不均匀问题) 改了改寄给 Adobe 公司负责 CIDFont 的 Ken Lunde 先生,他的回复大意是,Acrobat 内建的渲染引擎每个版本都有改动,这个问题可能是由于错误的字体 hinting (即光栅化字体时,在小字体是对外观作的一些修饰工作) 造成的,小林剑先生的原话是:“In fact, no hinting is better than poor hinting. ”,然而,由于没有受到任何关于这个问题的 bug 报告,下个版本,也就是 Acrobat 7 没有关于这个问题作 bug fix,也就是说在下一个 major release 中,已经来不及对渲染引擎作出修正。("Unfortunately, it's too late in the development of Acrobat 7.0 to make changes in the built-in renderer. ") 更进一步的例子,包括截图、生成的 pdf,以及和其他软件 (dvipdfmx) 生成的 pdf 的比较等信息我已经寄给了小林剑先生,但尚未受到进一步回复。

2. 关掉 CoolType,pdfLaTeX 生成的,嵌入 Type1 的字体的效果同样很糟 (这很奇怪,在 Linux 下用 Acrobat 5 时,是打开 CoolType 时的中文效果很糟,关掉却可以正常观看),这令我猜测 dvipdfmx 生成的 pdf 版本太低 (1.3?),没有正确激活 CoolType 造成中文字体太细的。(事实上,我也有测试用 dvipdfmx 生成的 Truetype 字体,不管调节 CoolType 到哪个配置,效果都没有改变,这是否说明 CoolType 并未启用呢?)

3. 在我的笔记本的 LCD 上,Type3 (pk) 字体,即便打开 CoolType,效果依然很糟,远不如 Type1 清晰,然而我惊奇的发现,在一台 CRT 上,Type3 字体的效果和 Type1 一样...

4. 嵌入 OpenType 字形,众所周知,(而且 Ken Lunde 也提到:The hinting in AdobeSongStd-Light is very high quality, which would explain why the results are better.) Adobe 提供的 AdobeSongStd-Light 是一种 OpenType 格式的 CIDFont,生成的 pdf 使用者字体显示效果很好。然而,dvipdfmx 在 cid-x.map 中直接指定:

gbksong@UGBK@             UniGB-UTF16-H    STSong-Light

时并不嵌入这个字体的任何字形,显示依赖的是用户本地安装的字体。然而,在很多可以阅读 pdf 的地方,或者没有中文的 Acrobat/Reader,或者没有安装 Adobe 的 Asian Language Pack (Simplified Chinese 部分),这就无法显示这种 pdf 了。按照说明,dvipdfmx 是可以嵌入 OpenType 字形的,但在随 MikTeX 发布的 dvipdfmx 20031106 中这么尝试却失败了, (听说 20040411 可以,但我在 Linux 配置 20040411 时总出现问题,参见在下以前发表的帖子) 因为 dvipdfmx 嵌入字体时要求有 subfont 的 tex font metrics 信息,但 OpenType 哪来的 tfm?

dvipdfmx 的作者承诺说,在 12 月中旬有时间对上述问题作出解答,并编译一份 Win32 下新版本的 dvipdfmx。

5. 这个问题在 hooklee 的主页上已经提到了,用 dvipdfmx 转换 dvi 为 pdf 时,Adobe 原来错误的 (UCS2) CMap 会导致“·”、“…”这些字符的无法显示,改用 UniGB-UTF16-H 可以避免这个问题。

在 Adobe 关于 CIDFont 的 Technotes 中,提到 UCS2 的 CMap 已经停止维护了,可是 developers.adobe.com 并未提供 UTF16 的 CMap。不过可以在 Ken Lunde 的 Understanding CJKV Infomation Processing (O'Reilly 出版) 的 ftp 上找到这些新的 CMap。

转载于:https://www.cnblogs.com/jjgod/archive/2004/12/01/71542.html

再谈和字体有关的几个问题相关推荐

  1. 再谈JSON -json定义及数据类型

    再谈json 近期在项目中使用到了highcharts ,highstock做了一些统计分析.使用jQuery ajax那就不得不使用json, 可是在使用过程中也出现了非常多的疑惑,比方说,什么情况 ...

  2. C++_动态绑定,再谈const,new,delete

    C++_动态绑定,再谈const,new,delete

  3. 再谈HTTP2性能提升之背后原理—HTTP2历史解剖

    即使千辛万苦,还是把网站升级到http2了,遇坑如<phpcms v9站http升级到https加http2遇到到坑>. 因为理论相比于 HTTP 1.x ,在同时兼容 HTTP/1.1 ...

  4. 再谈工作的主动性和有效提问

    主动性是一个非常奇怪的词,每个人对这个词的理解都不一样.可能一个管理者对员工说,你要提高主动性,但是员工会非常苦恼,甚至崩溃:我都天天加班了,你居然还在谈提高主动性? 结合很多应届生在实际工作中遇到的 ...

  5. 再谈符号间干扰(一)

    在对话通信原理系列相关博文中,有这么一篇博文:通信系统之信道,这篇博文里面已经讲过符号间干扰(ISI),发生符号间干扰的原因在于信号带宽大于相干带宽,同一个意思的表达为:发送符号的周期小于最大时延扩展 ...

  6. 我的WCF之旅 (11): 再谈WCF的双向通讯-基于Http的双向通讯 V.S. 基于TCP的双向通讯...

    在一个基于面向服务的分布式环境中,借助一个标准的.平台无关的Communication Infrastructure,各个Service通过SOAP Message实现相互之间的交互.这个交互的过程实 ...

  7. “云计算”三部曲之二:与“云”共舞——再谈云计算

    引言:去年,我曾在一篇名为<未来计算在"云-端">的文章中指出,纯"云计算"并不是启动计算未来的"万能钥匙","云+端 ...

  8. 依图又斩获10冠!AI芯片拿下创新技术大奖,朱珑再谈智能密度

    乾明 李根 发自 厦门  量子位 报道 | 公众号 QbitAI 依图的AI芯片究竟怎么样? 今天国内规格最高的技术评选给出参考. 8月9日,由工信部.公安部及网信办三部委指导主办的"中国人 ...

  9. tensorflow和python先学哪个-前辈说先学会了这些Python知识点,再谈学习人工智能!...

    原标题:前辈说先学会了这些Python知识点,再谈学习人工智能! 首先我们看一看Python的优势: 开源,跨平台. 社区.不要小看这一点.社区意味着有很多教程.书籍,出了问题很容易google到,乃 ...

  10. python基础教程第三版怎么样-Python基础教程(第三版)(七)再谈抽象

    菜鸡的学习笔记. 7.1 对象魔法 多态:可对不同类型的对象执行相同的操作,但是操作将随对象所属的类型而异: 封装:对外隐藏对象内部工作原理的细节: 继承:可基于通用类创建出专用类. 按作者的意思,多 ...

最新文章

  1. 2022-2028年全球与中国闪光棉市场研究及前瞻分析报告
  2. UIButton防止按钮和手势的暴力点击
  3. 独家 | 使用机器学习预测房价(附链接)
  4. 高级算法专家储开颜:无端不视频 阿里视频云三大端上技术能力
  5. 热点面试题目—Java异常
  6. [翻译]Json.NET API-Linq to Json Basic Operator(基本操作)
  7. ML之xgboost:利用xgboost算法(自带,特征重要性可视化+且作为阈值训练模型)训练mushroom蘑菇数据集(22+1,6513+1611)来预测蘑菇是否毒性(二分类预测)
  8. 【网址收藏】Ubuntu使用OBS录制桌面时黑屏怎么办?
  9. Postgres 数据库安装、配置、备份还原及存储过程
  10. Vagrant使用简介
  11. oracle 升级前备份,rac(exadata)升级前的备份及LVM快照的恢复
  12. Makefile中支持的函数大全
  13. android webview 加载本地,webview加载本地资源的各种尝试
  14. Java类变量和类方法详解
  15. 【排序】LeetCode 75. Sort Colors
  16. iOS 蓝牙开发用到的一些格式转换
  17. avr单片机c语言大小比较,AVR单片机C语言入门知识
  18. 百度地图的经纬度转高德地图的经纬度
  19. golang微服务网关
  20. SSL基础:11:使用req子命令创建自签名证书

热门文章

  1. 在zephyr上使用mipi-sys-t
  2. opencv 缺少boostdesc_bgm.i等文件
  3. [转载]基于TFS实践敏捷-工作项跟踪
  4. 有了世界级的数据中心,你还会担心 “全年无休”吗?
  5. 30 个惊艳的 Bootstrap 扩展插件
  6. 一个Tomcat运行多个实例
  7. Android getReadableDatabase() 和 getWritableDatabase()
  8. HTML5实践 -- 介绍css3中的几个属性:text-shadow、box-shadow 和 border-radius
  9. SQL Server 设计开发系列(文章索引)
  10. 黑马程序员_java基础笔记(03)...面向对象