蹒跚的蜗牛 发表于 2024-1-26 16:06:55

【WinForms】【求助】C1PrintDocument导出的PDF内容错位的问题该如何解决


运行环境:
      Windows 10, .net framework 4.5, ComponentOne v4.0
现象描述:
       1). Windows桌面的显示比例非100%的情况下,使用C1PrintDocument控件预览时,显示内容的位置是正确的,可以居中显示,但是使用C1PrintDocument导出到PDF文件后,pdf的内容的输出位置不居中(代码中设置的是居中显示),向左偏移明显
       2).桌面显示比例为100%时,不存在上述,pdf和预览效果都正常;



C1PrintDocument设置参数:
       var _pd = new C1PrintDocument
       {
             CreationDevice = MeasurementDeviceEnum.Screen,
             AllowNonReflowableDocs = true,
             UseGdiPlusTextRendering = true,   // 使用该参数解决屏幕缩放比例不是100%的情况下,预览模式下显示内容错位的情况,如果该参数为false,预览内容显示时会错位
        };

       由于客户习惯了将桌面比例设置成125%或者150%, 如何在桌面显示比例非100%的情况,让C1PrintDocument导出的PDF文件的效果与预览效果保持一致,不出现错位的现象?

问题现象截图:
桌面缩放比例设置:

预览效果正常:

导出的PDF内容明显向左偏移:

      

蹒跚的蜗牛 发表于 2024-1-29 18:23:11

Richard.Ma 发表于 2024-1-29 18:07
提到的问题在最新版本可以复现。我会报给研发,看看是否有解决方案

需要注意的是,如果是产品bug。可能 ...

请帮忙向研发咨询下,是否可以通过设置什么参数,或者重写PdfExporter的某些函数来规避掉这个问题,谢谢

Richard.Ma 发表于 2024-1-26 18:20:07

麻烦还是提供一个可以运行的的vs项目 demo,能复现问题即可。需要以此报给研发。

蹒跚的蜗牛 发表于 2024-1-29 12:27:33

Richard.Ma 发表于 2024-1-26 18:20
麻烦还是提供一个可以运行的的vs项目 demo,能复现问题即可。需要以此报给研发。

附件是演示项目的代码;



电脑桌面缩放比例非100%时,点击演示项目的Preview按钮,预览效果正常,整个表格居中显示;但是点击Export Pdf按钮后,导出的Pdf文件中表格不是居中的,明显向左偏移; 电脑桌面100%缩放比例时,预览和导出Pdf时,整个表格都是居中的

蹒跚的蜗牛 发表于 2024-1-29 12:30:31

Richard.Ma 发表于 2024-1-26 18:20
麻烦还是提供一个可以运行的的vs项目 demo,能复现问题即可。需要以此报给研发。


电脑桌面缩放比例125%时:
预览效果(整个表格是居中显示的):


导出Pdf的效果(表格整体偏左了,而不是居中显示):

Richard.Ma 发表于 2024-1-29 18:07:35

本帖最后由 Richard.Ma 于 2024-1-29 18:37 编辑

提到的问题在最新版本可以复现。我会报给研发,看看是否有解决方案 C1WIN-31584

需要注意的是,如果是产品bug。可能没有办法对老版本提供解决办法,只能是在新版本做修复。

帖子保留处理,后续进展会在帖子中更新

Richard.Ma 发表于 2024-1-29 18:37:56

好的

hdffzxf 发表于 2024-3-4 14:07:12

跟下,请问有什么具体解决方案没?

Richard.Ma 发表于 2024-3-5 01:31:33

有新的进展会在帖子中更新
页: [1]
查看完整版本: 【WinForms】【求助】C1PrintDocument导出的PDF内容错位的问题该如何解决