找回密码
 立即注册

QQ登录

只需一步,快速开始

huang1600

初级会员

23

主题

90

帖子

307

积分

初级会员

积分
307

微信认证勋章

huang1600
初级会员   /  发表于:2019-8-21 11:22  /   查看:3953  /  回复:7
本帖最后由 huang1600 于 2019-8-21 16:06 编辑

进行框选多个单元格进行统一字体设置时,仅对第一个单元格设置有效 image.png305628356.png image.png466418761.png

字体设置.rar

4.57 KB, 下载次数: 146

7 个回复

倒序浏览
Fiooona
论坛元老   /  发表于:2019-8-21 14:54:09
沙发
您好,我用在线表格编辑是试了下是可以正常设置的,估计是您那边的业务逻辑写的有问题,可以检查下是不是有表单保护之类的设置?还是不行的话可以上传一下能复现问题的Demo
组件化表格编辑器(预览版)试用进行中,点击了解详情!
请点击评分,对我的服务做出评价!5分为非常满意!
回复 使用道具 举报
huang1600
初级会员   /  发表于:2019-8-21 16:05:30
板凳
如果是表单保护应该不会每次框选多个单元格只对第一个单元格生效吧,表格已经在主楼中上传
回复 使用道具 举报
Fiooona
论坛元老   /  发表于:2019-8-21 17:33:23
地板
问题已复现,提交至研发处理 ,问题编号:SJS-1429
有进展会在该贴中第一时间跟进
组件化表格编辑器(预览版)试用进行中,点击了解详情!
请点击评分,对我的服务做出评价!5分为非常满意!
回复 使用道具 举报
huang1600
初级会员   /  发表于:2019-8-22 15:17:28
5#
因为我这边领导及客户比较着急需要处理这个问题。能不能提供一个从写方法 或者是先改好这个问题的 小版本升级包,提供呢?
回复 使用道具 举报
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2019-8-22 17:26:59
6#
改一下
src/spreadWrapper/spreadActions.js
[下午5:16] Zhai ChenHui (Brander)
   
       DesignerActionBase.prototype.setStyle = function (attribute, property, value, options, adjustValue, additionArgs) {
            var self = this, sheet = self._sheet, spread = self._spread;
            options._styles = {}; // prepare object to save related original information
            spread.suspendPaint();
            self.execInSelectionsForSetStyle(sheet, function (_sheet, row, column) {
                var style = _sheet.getStyle(row, column);
                if (!style) {
                    style = new GC.Spread.Sheets.Style();
                }
                options._styles[self.getKey(row, column)] = style[property];     // save related information, use row, column as the key


                if (adjustValue) {
                    value = adjustValue.apply(self, [_sheet, row, column, style, value].concat(additionArgs || []));
                    style[property] = value;
                    _sheet.setStyle(row, column, style);
                }
                if (["font-size", "font-weight", "font-style"].indexOf(attribute) >= 0) {
                    self.setFontStyle(style, attribute, value, row, column);
                } else if ("font-family" === attribute) {
                    style.themeFont = keyword_undefined;
                   var newValue = value;
                   if (value && value.indexOf("'") === -1 && value.indexOf('"') === -1) {
                        newValue = '"' + value + '"';
                    }
                    self.setFontStyle(style, attribute, newValue, row, column);

                } else {
                    style[property] = value;
                    _sheet.setStyle(row, column, style);
                    if (property === 'wordWrap' && !rowHigh[row] && self._sheet.defaults.rowHeight === self._sheet.getRowHeight(row)) {
                        _sheet.autoFitRow(row);
                    }
                }
            });
            spread.resumePaint();
        };



红色部分是修改的地方
回复 使用道具 举报
huang1600
初级会员   /  发表于:2019-8-22 17:36:45
7#
可以。修改后该问题已解决。
回复 使用道具 举报
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2019-8-22 17:38:45
8#
好的,那就行。正常流程还是等我们的修复版本,这次是特例
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部