找回密码
 立即注册

QQ登录

只需一步,快速开始

lin666

初级会员

40

主题

139

帖子

439

积分

初级会员

积分
439
lin666
初级会员   /  发表于:2019-10-11 10:54  /   查看:2459  /  回复:3
TIM图片20191011105103.png 如图
TIM图片20191011105125.png TIM图片20191011105130.png 注册字体的代码如图
监理抽检表76-预制墩身抽检记录.zip (11.24 KB, 下载次数: 42)

3 个回复

倒序浏览
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2019-10-11 17:53:48
推荐
我知道了,这样的单元格应该是没有手动设置过字体的单元格,这样的单元格的字体显示会根据Excel默认字体的不同而进行不同的显示,如果是中文版的Excel默认是宋体,而英文版的Excel默认是calibri,而SpreadJS中默认字体为calibri,导入到SpreadJS中对应的单元格显示成了calibri。最后导致导出PDF出现乱码。

对于此,建议模板中将相关单元格手动设置为宋体(可以全选一并操作)或者更改fallback字体,在其中判断当字体是calibri时fallback为宋体,类似下面示例中的写法
https://demo.grapecity.com.cn/sp ... ntforPDFExport.html
回复 使用道具 举报
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2019-10-11 14:12:42
沙发
您好,因为出现乱码的字体我看了一下,您这边设置的是calibri light,这是一个西文字体,字体本身没有中文,而您所在的单元格中写的是中文,所以即使注册了字体,导出仍然是乱码。
另外,浏览器之所以能够设置成calibri light并显示中文,是因为浏览器本身自己会将字体自动fallback成一个能够显示出来的中文字体,至于fallback的字体是什么,不同浏览器的表现不一样,也无法获取到。

所以,这里的建议是如果单元格中有中文内容,不要将字体设置成西文字体,而是设置成中文字体。
回复 使用道具 举报
lin666
初级会员   /  发表于:2019-10-11 16:00:44
板凳
TIM截图20191011155941.png 我用wps打开 上面显示的是宋体啊
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部