SynSou 发表于 2016-2-8 16:09:00

ActiveReport 引入OCRB字体,pdf导出报错

客户需要显示OCR-B字体,默认的设置中没有
1.网上下载OCRB字体,导入到系统的字体库
2.在activereport初始化时候,代码修改其字体
(http://hongouru.blogspot.jp/2010/10/c-how-to-add-fonts-ttf-true-type-fonts.html)
3.印刷机印刷没有问题,打印出的字体是OCRB
report.Document.Print(false, false, false); // プリンタ送信
4.pdf导出时候报错,空对象错误,应该是字体的原因(用系统中有的字体完全OK)
this.pdfExport.Export(report.Document, fileName);

现在使用的ActiveReport版本是 ActiveReports for .Net 3.0J,请问支持OCRB字体吗

Lenka.Guo 发表于 2016-2-14 14:17:00

抱歉回复晚了,您说的问题之前还未有用户遇到,需要时间验证,验证后给您回复。

SynSou 发表于 2016-2-15 08:31:00

谢谢
补充个现象
1。ocrb字体导入到系统字体库,就报错
2. 把ocrb字体从系统库中删除掉,pdf就能够出力,只不过字体不是ocr-b,可能是默认字体

Lenka.Guo 发表于 2016-2-15 12:03:00

抱歉让您久等了,因为需要重新安装测试环境所以回复较慢,抱歉。
我将OcrB字体导入系统字体库,导出PDF是没有问题的



测试程序:



OcrB 字体:

SynSou 发表于 2016-2-15 13:17:00

谢谢,不过我这边有这样的问题
我的动作顺序如下
1.安装提供的字体(看类型是TrueType)
2.打开报表设计画面,选中textbox的font选项,这个时候出现了ocrb字体选项,选中
3.OK按钮
4.error出现
(TrueType字体仅仅被支持,这个不是TrueType字体)

备注:提供的字体不就是truetype吗

Lenka.Guo 发表于 2016-2-15 13:31:00

怀疑是字体资源的问题,您尝试将我提供的字体,安装到系统文件,试试看是否会出同样的问题?

SynSou 发表于 2016-2-15 14:01:00

直接通过设定去选字体报错,不过用代码在运行时去修改字体,可以按预期效果导出pdf
不过呢,也有个奇怪的地方
字体应该以二进制形式嵌入项目中了
1.发布的机器不安装orcb字体,pdf显示的字体是完全OK的
2.发布的机器也安装orcb字体,从字体形态上看还是ocrb字体,不过显示的字体间隔变窄了,缩小了

具体看看客户那边能不能读取,再来麻烦,谢谢

Lenka.Guo 发表于 2016-2-15 14:21:00

不客气,解决了就好。发布的机器安装orcb字体导致字体变形,可能是因为不同的机器对于字体的处理,渲染机制不一样所导致的。
页: [1]
查看完整版本: ActiveReport 引入OCRB字体,pdf导出报错