找回密码
 立即注册

QQ登录

只需一步,快速开始

stwilson123456

金牌服务用户

1

主题

7

帖子

18

积分

金牌服务用户

积分
18
最新发帖
stwilson123456
金牌服务用户   /  发表于:2023-11-2 18:01  /   查看:4838  /  回复:14
1金币
    1. 具体现象:  
    1.1 字体选择Times New Roman:
     

     1.2 在代码运行在window下,pdf导出时,中文是 宋体,英文、数字部分是 Times New Roman



      1.3 在代码运行在linux下,pdf导出时,中文是 乱码,英文、数字部分是 Times New Roman

     2. 希望部署在linux下的程序,pdf导出的实际效果与1.2的效果一致

附件: 您需要 登录 才可以下载或查看,没有帐号?立即注册

14 个回复

正序浏览
Felix.LiWyn认证
超级版主   /  发表于:2023-11-15 12:29:52
16#
我们这边专门对错误字体做了个pdf的导出接口,本地测试目前没问题:

项目如下:

接口如下:

如果还想控制pdf的其他信息,可以通过前段传过来,然后设置pdfsetting
。然后页面已经隐藏掉pdf导出,并用专门的导出

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
Eden.SunWyn认证
超级版主   /  发表于:2023-11-7 14:44:18
15#
stwilson123456 发表于 2023-11-7 11:39
既然你们觉得是pdf本身的导出问题,那把Page.Settings的FallbackFonts的属性,在ui预览的地方,想办法用代 ...

您看11楼的回复:
https://gcdn.grapecity.com.cn/fo ... 3&fromuid=70395

目前推荐您使用这中办法解决呢。
目前咱们的使用的这字体不支持中文,就会有乱码,我们只能尽量去绕开这个问题。
回复 使用道具 举报
stwilson123456
金牌服务用户   /  发表于:2023-11-7 11:39:00
14#
既然你们觉得是pdf本身的导出问题,那把Page.Settings的FallbackFonts的属性,在ui预览的地方,想办法用代码特殊配置一下,就是现在解决这个问题的办法
回复 使用道具 举报
Bella.YuanWyn认证
超级版主   /  发表于:2023-11-7 11:14:43
13#
stwilson123456 发表于 2023-11-7 10:21
那现在意思是,其实没法用除了包含中英文字体以外的字体,就pdf导出功能而言

您好,pdf打开时其实依赖的是机器的字体,但是具体支持不支持中文只能是依据各个字体而言,字体本身如果不支持中文时,此时导出的pdf确实会乱码,不过您可以参考楼上版主回复的用其他字体代替该字体,这样就不会乱码。
回复 使用道具 举报
stwilson123456
金牌服务用户   /  发表于:2023-11-7 10:21:42
12#
那现在意思是,其实没法用除了包含中英文字体以外的字体,就pdf导出功能而言
回复 使用道具 举报
Felix.LiWyn认证
超级版主   /  发表于:2023-11-6 16:27:26
11#
那您是不是就是用我上面说的第二种方法:

用key和value去做映射操作。您截图的设置,是自己后端代码自定义导出设计的,但是页面上的导出是封装好的。没办法控制。
如果页面上要控制,就是我说的第二种。

页面指定的所谓的映射配置:
类似这种:
  1. fonts: [ 'Arial Black', 'Comic Sans MS', 'Courier New', 'Geneva', 'Georgia', { label: "Times New Roman", value: "SimSun" }, 'Trebuchet MS', 'Verdana', 'Yu Gothic']
复制代码
用户看到的还是Times New Roman,但是实际上请求的是别的字体,我这里只是用宋体举例,咱们可以找一个支持中文的,和新罗马类似的字体。

我们这边也做了测试,我用的宋体测试:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
stwilson123456
金牌服务用户   /  发表于:2023-11-6 15:36:18
10#
本帖最后由 stwilson123456 于 2023-11-6 15:47 编辑

这种方式字体还是对于用户来说是不正确的,因为他确实需要这个Time new Roman。我看到Page.Settings有一个FallbackFonts的属性,我测试了一下,乱码的部分会转成FallbackFonts指定的字体
      
我想知道有没有一个全局配置的来控制所有的pdf导出,或者代码也可以。当然如果可以控制某些字体的FallbackFonts,会更好吧。
特别是预览功能里面的pdf导出,那边是否能用代码控制

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
stwilson123456
金牌服务用户   /  发表于:2023-11-6 10:46:44
7#
设置宋体是我测试的是没问题,但是我还是想解决帖子上的问题,即 同样是设置Times New Roman字体,运行在linux里与运行在window的程序,导出的pdf效果一致;
回复 使用道具 举报
Bella.YuanWyn认证
超级版主   /  发表于:2023-11-6 10:23:14
6#
stwilson123456 发表于 2023-11-3 18:26
上一个回复中,图片上第一个红框就是Times New Roman的字体,其次linux下fc-list的字体是已安装字体

您好,Time new Roman,Arial 这两种字体都不支持中文,所以导出后可能是乱码,可以尝试设置中文的字体为宋体看是否能够导出。
回复 使用道具 举报
stwilson123456
金牌服务用户   /  发表于:2023-11-3 18:26:33
5#
上一个回复中,图片上第一个红框就是Times New Roman的字体,其次linux下fc-list的字体是已安装字体
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部