当前位置

关于firebird的粗斜体打印

主标签

ghostscript正常显示Simsun字体后, 发现firebird可以打印粗斜体。QT也可以打印了(pre5是空白),但是没有粗体。

[image:684]

评论

請問你的ghostscript怎麼會如此利害?

我用的是pre5,可以升級嗎?

qt print不需要对gs进行任何配置,即使进行了配置,qt缺省也不使用gs的字体设置,而是内嵌字体。

也就是说不配置gs,qt也可以打印中文,但是不支持粗体。

Mozilla类需要进行配置。

昨天,我测试了qt的非内嵌式打印并对字体进行了更复杂的配置,gs可以显示中文的粗体,粗斜体了。

昨天粗看了一下源码,QT打印默认外字体的时候用的是内嵌字体,默认字体是用系统的gs字体名称。如果系统没有生成默认的gs字体Fontmap,打印预览就会显示不出来。我没装打印机,还没试打印的结果。

Mozilla的处理方法和qt不同,它只使用默认的gs字体,并不使用内嵌字体。打印预览程序如果找不到相应的字体,会自动选择最接近语言编码的字体。这一点可以从生成的ps文件看出来。

akito的补丁对QT生成的gs字体名称进行了增强,使得QT可以通过freetype和xft自动找出ttf字体的gs名称,并生成相应的内嵌曲线,但里面没有加入对粗体的支持,这一点他也指出了。对于ps字形的粗体变换的实现,我想可以从ttfm.sh生成的虚拟粗体里寻找答案。

打出来的字还是那种默认的等宽字,形象的说就是一个一个字之间的间隔相对太大,就像原来在gvim里设置字体不合适一个效果。

把这一项去掉我的问题就搞掂了。。只有gtk2的gvim中文全角符号的问题了。