根据我的调研,结论如下:
在您上传的xlsx文件中,A10:AG10虽然在工具栏都显示Times New Roman字体,但它们的实际字体是不同的,您可以从单元格格式查看。对于公式单元格,它的字体的确是Times New Roman,但是对于非公式单元格,它的字体是宋体:
这和Excel处理字体的逻辑有关,Times New Roman是一个英文字体,其中并不包含中文字符,如果单元格中有中文字符,且字体为Times New Roman,Excel会将中文字符使用主题中的正文字体显示,并将单元格的字体保存下来,默认主题下,正文字体为宋体。所以您的Excel文件中,内页的G10字体为宋体。
而Excel处理公式单元格时,会按照正文字体显示,但不会将字体保存,所以A10的字体仍然为Times New Roman。
这个xlsx文件导入至SpreadJS后,我们会按照单元格的真实字体渲染,所以公式单元格的字体就是Times New Roman,由于其没有中文字符,所以会以默认的Calibri字体显示,这里和Excel稍有不同,我们不会去找主题中的正文字体,关于这一点我会继续和产品确认。
针对您遇到的问题,解决方案也非常简单,中文单元格不要使用Times New Roman字体,而是直接使用宋体。
您可以尝试一下,我这边帮您改好了一份,可以直接测试。
|
|