请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册

QQ登录

只需一步,快速开始

金牌服务用户

26

主题

93

帖子

243

积分

金牌服务用户

积分
243

金牌服务用户   /  发表于:2021-8-4 09:59  /   查看:1954  /  回复:9
1金币
image.png175140990.png image.png114444274.png

test.ssjson

114.37 KB, 阅读权限: 150, 下载次数: 3

最佳答案

查看完整内容

针对导出pdf显示不一致的问题,我们这边会做进一步调研,此贴为您改为保留处理(DOCXLS-4670) ——————————————————————————————————、 经调研,您设置的文本是富文本,即“编" 是宋体粗体和“制” 是“Calibri,bold”。 GcExcel导出了“编" 没有加粗是因为字体目录中没有加粗的Simsun文件。 Calibri无法渲染“制" 并将使用备份字体。

9 个回复

倒序浏览
最佳答案
最佳答案
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2021-8-4 09:59:01
来自 10#
本帖最后由 Derrick.Jiao 于 2021-8-26 13:47 编辑

针对导出pdf显示不一致的问题,我们这边会做进一步调研,此贴为您改为保留处理(DOCXLS-4670)

——————————————————————————————————、
经调研,您设置的文本是富文本,即“编" 是宋体粗体和“制” 是“Calibri,bold”。
GcExcel导出了“编" 没有加粗是因为字体目录中没有加粗的Simsun文件。
Calibri无法渲染“制" 并将使用备份字体。
回复 使用道具 举报

金牌服务用户   /  发表于:2021-8-4 10:09:55
2#
image.png564427794.png image.png587298583.png
单元格所有字体都是宋体,却有一部分显示乱码
回复 使用道具 举报
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2021-8-4 10:56:54
3#
浩 发表于 2021-8-4 10:09
单元格所有字体都是宋体,却有一部分显示乱码

您好,请问您附件的json是如何生成的呢?请问是否是GcExcel转换后的json呢?麻烦您将原始的JSON提供一下。或者试一下我的这份json。

1.ssjson

49.52 KB, 下载次数: 46

回复 使用道具 举报

金牌服务用户   /  发表于:2021-8-4 10:57:17
4#
image.png966736144.png image.png253511962.png 生成pdf后换行也不正确
回复 使用道具 举报

金牌服务用户   /  发表于:2021-8-4 10:58:38
5#
Derrick.Jiao 发表于 2021-8-4 10:56
您好,请问您附件的json是如何生成的呢?请问是否是GcExcel转换后的json呢?麻烦您将原始的JSON提供一下 ...

json是spreadjs导入excel后,在spreadjs中进行修改的

002107290001.xlsx

12.23 KB, 阅读权限: 150, 下载次数: 4

回复 使用道具 举报

金牌服务用户   /  发表于:2021-8-4 11:01:41
6#
Derrick.Jiao 发表于 2021-8-4 10:56
您好,请问您附件的json是如何生成的呢?请问是否是GcExcel转换后的json呢?麻烦您将原始的JSON提供一下 ...

image.png455058898.png image.png621106261.png 您提供的json也有这个问题
image.png370675658.png
回复 使用道具 举报
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2021-8-4 11:30:00
7#
浩 发表于 2021-8-4 11:01
您提供的json也有这个问题

请问您提供的名为002107290001.xlsx的文件是最原始的excel文件吗?这边在您的Excel文件中发现B29、G29、B31、G31这四个单元格中的字体并不都是宋体。另外,SpreadJS除了富文本外,是不支持像Excel那样可以一个单元格设置多个不同的字体的。
image.png680413207.png

另外,前端的展示与后端导出pdf由于平台的限制,可能会存在一些误差,您需要在后端导出pdf前,给列宽乘以一个系数,例如乘以1.02等将列宽放大。
下图是我直接用后端读取您的excel文件导出的pdf,氧气的下标也是正常显示的。
image.png287289427.png


下面这个图是我将您的Excel文件导入SpreadJS然后,导出json,用GcExcel进行生成pdf的截图。

image.png340886229.png

建议您提供一份能复现问题的demo,并详细描述一下你的需求,这边调研一下具体问题。
回复 使用道具 举报

金牌服务用户   /  发表于:2021-8-4 11:36:20
8#
本帖最后由 浩 于 2021-8-4 11:38 编辑
Derrick.Jiao 发表于 2021-8-4 11:30
请问您提供的名为002107290001.xlsx的文件是最原始的excel文件吗?这边在您的Excel文件中发现B29、G29、B ...

这里我们几乎没有代码操作,这个excel文件也是从spreadjs中导出的,我们是在spreadjs中导入了一个excel,使用spreadjs选中全部单元格设置为宋体的,json文件也是我们使用spreadjs导出的,就是我们生成的最终json文件 image.png247590331.png 我打开这个文件显示的确实是宋体
回复 使用道具 举报
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2021-8-4 12:12:21
9#
浩 发表于 2021-8-4 11:36
这里我们几乎没有代码操作,这个excel文件也是从spreadjs中导出的,我们是在spreadjs中导入了一个excel, ...

您可以打开002107290001.xlsx文件,然后在Excel中进入编辑状态,然后单独选中红框的字体看下,不要选中整个单元格。可以发现这些字体的名称都为Calibri,只有前面的字体才为宋体。


您在试一下我上传的new.xlsx,这种才全部都是宋体,因此,建议您到您的模板中调整您的字体,导入后才能正确显示。

new.xlsx

17.03 KB, 下载次数: 54

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部