找回密码
 立即注册

QQ登录

只需一步,快速开始

晓名

初级会员

28

主题

101

帖子

397

积分

初级会员

积分
397
晓名
初级会员   /  发表于:2024-7-16 10:06  /   查看:1033  /  回复:11
1金币
设置样式后会多出一个themeFont: "Body"的属性,然后就无法设置样式不生效了,怎么能够处理
image.png964681701.png

最佳答案

查看完整内容

好的,或者也可以升级到V17,直接使用API去控制。

11 个回复

倒序浏览
最佳答案
最佳答案
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-7-16 10:06:30
来自 12#
好的,或者也可以升级到V17,直接使用API去控制。
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-7-16 17:34:29
2#
您好,请问您具体是如何设置样式后再设置样式不生效了呢?是否有相关的Demo或代码能够让我复现您的这个问题?
回复 使用道具 举报
晓名
初级会员   /  发表于:2024-7-16 17:53:06
3#
Joestar.Xu 发表于 2024-7-16 17:34
您好,请问您具体是如何设置样式后再设置样式不生效了呢?是否有相关的Demo或代码能够让我复现您的这个问题 ...

就是有些xlsx文件导入或者使用getActualStyle获取再setStyle之后,会生成上图中的themeFont:"Body"这一个属性,然后在修改的时候font属性的值被改了,但是因为有themeFont存在,导致不能显示font属性的格式,我直接把themeFont:null,会不会有什么影响
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-7-17 09:31:39
4#
您好,根据您的描述我无法复现出您的问题,“然后在修改的时候font属性的值被改了,但是因为有themeFont存在,导致不能显示font属性的格式”,关于这个现象是否有相关的文件和代码能够让我本地复现出来呢?
回复 使用道具 举报
晓名
初级会员   /  发表于:2024-7-17 10:08:26
5#
本帖最后由 晓名 于 2024-7-17 10:16 编辑
Joestar.Xu 发表于 2024-7-17 09:31
您好,根据您的描述我无法复现出您的问题,“然后在修改的时候font属性的值被改了,但是因为有themeFont存 ...

就是有些xlsx文件导入或者使用getActualStyle获取再setStyle之后,会生成上图中的themeFont:"Body"这一个属性,然后在修改的时候font属性的值被改了,但是因为有themeFont存在,导致不能显示font属性的格式,我直接把themeFont:null,会不会有什么影响

demo如下:里边的操作已在注释中标注



默认时:
image.png320553283.png
修改后:我用:华文琥珀(便于区分)
image.png712770690.png

demo2.rar

1.28 KB, 下载次数: 106

回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-7-17 17:34:41
6#
您好,看上去您只是想要修改某个单元格的字体,在V17中您可以直接使用fontFamily来进行修改。

getActualStyle接口是用来获取单元格实际的渲染样式的(为了解决样式优先级问题,可参阅:https://demo.grapecity.com.cn/spreadjs/help/docs/faqs/cells/style/style-priority-level#%E9%97%AE%E9%A2%98spreadjs%E6%A0%B7%E5%BC%8F%E4%BC%98%E5%85%88%E7%BA%A7%E5%92%8C%E6%A0%B7%E5%BC%8F%E6%B1%A1%E6%9F%93),不建议获取到后修改其中的属性再设置回单元格本身。

我调整了一下您提供的Demo的代码,请参考附件。

image.png537840880.png

demo2.html

3.37 KB, 下载次数: 109

回复 使用道具 举报
晓名
初级会员   /  发表于:2024-7-18 09:11:06
7#
本帖最后由 晓名 于 2024-7-18 09:39 编辑
Joestar.Xu 发表于 2024-7-17 17:34
您好,看上去您只是想要修改某个单元格的字体,在V17中您可以直接使用fontFamily来进行修改。

getActual ...

我的是16,我没下到16的版本,我就用的17,功能是要操作如图这个功能 image.png694582824.png ,有字体,字号,粗,斜,下划线,增减字号分别修改,我要在原有样式style的基础上修改"font": "14.6667px STCaiyun normal normal"等,里边不是包含着:字体,字号,粗,斜属性的吗?
image.png841928710.png
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-7-18 17:32:29
8#
您好,V16中如果要修改字体的话可以参考这篇文章:https://gcdn.grapecity.com.cn/showtopic-169158-1-1.html

另外,之前提供的Demo中没有使用fontFamily也是可以正常设置的,您可以先参考其中的这部分代码试试看。

image.png50665892.png
回复 使用道具 举报
晓名
初级会员   /  发表于:2024-7-18 17:38:29
9#
本帖最后由 晓名 于 2024-7-18 17:56 编辑
Joestar.Xu 发表于 2024-7-18 17:32
您好,V16中如果要修改字体的话可以参考这篇文章:https://gcdn.grapecity.com.cn/showtopic-169158-1-1.ht ...

是这样设,问题在于font里边包含的加粗,斜体,字号,字体,我都要分别修改,而且font中的顺序有不确定,且我的有些引用使用的是styleName设置的,这种不适用,当时就是问了你们分别改需要用到你注释掉的那种
需要操作如图里边的格式修改: image.png213359679.png
比如:font: "normal 400px 12.234pt STHupo" -> 第一次我设置字体为黑体,然后我设置字号为19px,然后我设置加粗,斜体,然后我取消斜体
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部