找回密码
 立即注册

QQ登录

只需一步,快速开始

huang1600

初级会员

23

主题

90

帖子

305

积分

初级会员

积分
305

微信认证勋章

huang1600
初级会员   /  发表于:2019-7-15 18:14  /   查看:8248  /  回复:22
1金币

spreadjs代码

image.png998731079.png


gcexel代码
image.png912293395.png


gcexel跟spreadjs一样的 打印设置,为何出来的pdf区别那么大,如何保证他们是一致。 而且当有表格里存在图片的时候,有时候图片错乱,跟字跌在一起了,

test.zip

14.24 MB, 下载次数: 105

最佳答案

查看完整内容

我这边测试您附件提供的ssjson导出PDF在最新的2.2.2版本下没有任何问题,您用的版本是多少呢 另外,对于之前您的疑问,您说的没错两个产品在方向上是要互通的,但是保持一致的标准参考是Excel,之前的问题其实是SpreadJS没有与Excel保持一致,修复之后的版本应该是两者导出的时候均没有边框,这个确实是我们的问题,以至于利用了这样的错误造成了模板设计没有按照Excel的规范,导致最终导出结果不一致,对您造成的不便深感抱歉 ...

22 个回复

倒序浏览
最佳答案
最佳答案
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2019-7-15 18:14:40
来自 23#
我这边测试您附件提供的ssjson导出PDF在最新的2.2.2版本下没有任何问题,您用的版本是多少呢
image.png42448119.png
另外,对于之前您的疑问,您说的没错两个产品在方向上是要互通的,但是保持一致的标准参考是Excel,之前的问题其实是SpreadJS没有与Excel保持一致,修复之后的版本应该是两者导出的时候均没有边框,这个确实是我们的问题,以至于利用了这样的错误造成了模板设计没有按照Excel的规范,导致最终导出结果不一致,对您造成的不便深感抱歉。不过话说回来产品很难保证不出任何问题,出现了问题我们都是全力配合并且第一时间进行调研与修复的,这个bugSpreadJS应该会在下个修复版本中就会包含。
回复 使用道具 举报
huang1600
初级会员   /  发表于:2019-7-15 18:21:03
2#


spreadjs版本11.1.2 ,gcexel  2.2.1
回复 使用道具 举报
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2019-7-16 09:54:43
3#
我看一下,有结果了,在这里再回复您
回复 使用道具 举报
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2019-7-16 12:13:38
4#
我看到您发的demo中simsunbd.ttf其实是黑体的ttf字体,请问这个simsunbd.ttf是前端导出时候引用了,还是后端导出时候引用了?
回复 使用道具 举报
huang1600
初级会员   /  发表于:2019-7-16 13:54:59
5#
ClarkPan 发表于 2019-7-16 12:13
我看到您发的demo中simsunbd.ttf其实是黑体的ttf字体,请问这个simsunbd.ttf是前端导出时候引用了,还是后 ...

不太明白你的意思,不过我spreadjs跟gcexel用的字体是有些区别,因为spreadjs用的字体在gcexel上设置字体文件夹报错,所以我替换了字体。我把spreadjs用的字体打附件给你

fonts2.zip

13.58 MB, 下载次数: 85

回复 使用道具 举报
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2019-7-16 18:41:07
6#
好的,我再试一下,完了给您反馈。
回复 使用道具 举报
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2019-7-17 14:48:04
7#
我这边还是没太明白
image.png794616088.png
图中红框所示是黑体粗体字体,这里给我发的两个字体一个是宋体,一个是宋体加粗。
您spreadjs注册到底是怎么注册的?注册代码给我发一下
回复 使用道具 举报
huang1600
初级会员   /  发表于:2019-7-17 15:40:46
8#
ClarkPan 发表于 2019-7-17 14:48
我这边还是没太明白

图中红框所示是黑体粗体字体,这里给我发的两个字体一个是宋体,一个是宋体加粗。

首先我把给你的字体转换成base64,放到js文件中。在页面中调用注册。你看一下demo

demo 2.zip

17.39 MB, 阅读权限: 150, 下载次数: 8

回复 使用道具 举报
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2019-7-17 17:56:31
9#
这个问题有以下两个原因导致:
1.前后端由于平台不同导出PDF时会存在一定的差异,这个目前是已知问题,暂时没有好的解决办法。
2.字体设置也有一部分原因,我上面截图所示设置的是黑体粗体,前端您注册给黑体粗体的字体实际上是宋体粗体,再一个黑体粗体是一个比较特殊的字体,官方没有任何ttf文件提供,后端GCExcel机制不同会自动根据黑体模拟出黑体粗体,而前端没有模拟功能,注册的是什么字体就是什么。这就导致了前后端PDF导出后显示的字体是不一致的。
两者综合起来造成了目前的问题。
第一个问题目前只能后端单独去调整打印设置,来尽量与前端保持一致。
第二个问题注册字体与设置字体保持一致即可。
回复 使用道具 举报
123下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部