xzhongy 发表于 2015-6-29 15:26:00

Spread For WinForms不能准确打印表格内容

Spread For WinForms的打印功能存在以下问题:
1、部分边框线没有打印出来
2、有多行文本或自动换行的单元格,部分内容没有打印出来。
参见示例:
多行文本

打印预览


单行文本+自动换行

打印预览


请问这两个Bug如何能够解决?

frank.zhang 发表于 2015-6-29 17:31:00

您好,
第一个问题,我们经过测试,问题已经重现,我会将这个提问提交给产品组。如果有回复,我会第一时间通知您。

xzhongy 发表于 2015-6-30 09:59:00

回复 2楼frank.zhang的帖子

第二个问题:设置单元格为文本类型+自动换行,然后任意输入长一点的字符串,就可以重现了。

frank.zhang 发表于 2015-6-30 14:38:00

您好,
第二个问题已经重现,我已经将问题提交给产品组,如果有任何的进展,我会第一时间通知您。

frank.zhang 发表于 2015-6-30 17:15:00

您好,
经过调查,您可以使用以下代码实现打印
            PrintInfo info = new PrintInfo();
            info.BestFitRows = true;
            //info.BestFitCols = true;
            this.fpSpread1.SetPrintInfo(info, 0);
            this.fpSpread1.ShowPageSetup(this.fpSpread1.Sheets, true, true);

您可以尝试下,看是否能够解决这个问题。

希望能够帮助到您。

frank.zhang 发表于 2015-7-8 08:50:00

您好,
距离这个问题的最后回复已经过去了一段时间,不知道这个问题您是否已经解决?
如果没有解决,欢迎跟贴接续讨论,如果已经解决请对本次服务进行评分。我们会认真对待你提出的宝贵意见,谢谢
http://gcdn.gcpowertools.com.cn/attachment.aspx?attachmentid=10062

xzhongy 发表于 2015-7-10 14:15:00

回复 6楼frank.zhang的帖子

自适应行高本身就不准确,不能完全解决问题。边框问题依旧
另外该控件是否支持修订功能呢?

frank.zhang 发表于 2015-7-10 15:28:00

您好,
非常抱歉。
边框问题spread使用.net标准的printpreviewcontrol,但是该控件在在绘制时出现问题,所以这是一个limitation。

目前能够想到的方式是使用lineborder重新进行绘制。

希望能够帮助到您。

xzhongy 发表于 2015-7-10 21:11:00

回复 8楼frank.zhang的帖子

这个问题和PrintPreviewControl没有任何关系,它只是把Sperad绘制好的图像如实输出到打印设备上。
当年这个表格控件名字还叫FarPoint的时候就用了一次。打印效果做成如此样子,项目基本不可能交付给用户。
我们不得不基于GDI+完全重写了控件的打印模块,并且仍然是使用PrintPreviewControl打印的。
这种事情本来是控件开发商应该做的,过了这么多年,虽然现在改头换面重新包装了,但问题还是老样子,一点要修复的意思都没有,真让人失望。

frank.zhang 发表于 2015-7-13 11:03:00

您好,
非常抱歉。首先就给您带来的不便,表示歉意。

您提到在 Spread 早期版本时就已经开始使用我们的产品,是我们控件的老用户了,感谢您长期以来对葡萄城控件的支持。

在收到您的问题后我们和产品组进行了详细的调查,但由于产品本身很复杂,在整个框架中解决这个问题,会导致一些无法预估的结果。所以目前仅能给您提供了一种绕过的方案。

您提到了通过实现GDI+的方式,解决了这个问题。能否请您提供当前的解决方案,如果能够提供,我们可以给您提供200元的京东购物卡作为纪念。无论从我们产品团队角度还是从广大用户的角度,都会是很有意义的一件事。

再次对您提出的意见和建议表示真诚的感谢。

谢谢!
页: [1]
查看完整版本: Spread For WinForms不能准确打印表格内容