找回密码
 立即注册

QQ登录

只需一步,快速开始

ws15355056237

金牌服务用户

28

主题

80

帖子

246

积分

金牌服务用户

积分
246

[已处理] picture

ws15355056237
金牌服务用户   /  发表于:2021-1-12 15:49  /   查看:3613  /  回复:4
let picture = sheet.pictures.add(options.objectId, options.url);  
picture.startRow(options.row);      
picture.startColumn(options.col);
picture.dynamicMove(false);      
picture.dynamicSize(false);      
picture.width(options.width);      
picture.height(options.height);
这样设置宽高没效果

4 个回复

倒序浏览
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2021-1-12 16:18:29
沙发
您好,我这边用width和height是可以正常设置宽高的,麻烦您提供更多复现问题的信息
回复 使用道具 举报
ws15355056237
金牌服务用户   /  发表于:2021-1-12 16:38:57
板凳
import GC from '@grapecity/spread-sheets';

export default {
  canUndo: true,
  execute: function (spread, options, isUndo) {
    let Commands = GC.Spread.Sheets.Commands;
    options.cmd = 'insertImage';
    if (isUndo) {
      Commands.undoTransaction(spread, options);
      return true;
    } else {
      Commands.startTransaction(spread, options);
      spread.suspendPaint();
      let sheet = spread.getSheetFromName(options.sheetName);
      if (!options.row || !options.col) {
        options.col = sheet.getActiveColumnIndex();
        options.row = sheet.getActiveRowIndex();
      }

      let picture = sheet.pictures.add(options.objectId, options.url);
      picture.width(options.width);
      picture.height(options.height);
      picture.startRow(options.row);
      picture.startColumn(options.col);
      picture.dynamicMove(false);
      picture.dynamicSize(false);

      // sheet.floatingObjects.add(img);
      spread.resumePaint();
      Commands.endTransaction(spread, options);
      return true;
    }
  },
};
我注册了一个这样的command 应用上没效果
回复 使用道具 举报
ws15355056237
金牌服务用户   /  发表于:2021-1-12 16:39:49
地板
大于我设置的宽度
document.querySelector('#insertImage').onclick = function () {
    let cell = {
      col: activeSheet.getActiveColumnIndex(),
      row: activeSheet.getActiveRowIndex(),
    };
    let exectue = {
      cmd: 'insertImage',
      sheetName: activeSheet.name(),
      url:
        'https://www.baidu.com/img/PCtm_d9c8750bed0b3c7d089fa7d55720d6cf.png',
      objectId: new Date().getTime() + '',
      ...cell,
      width: 640,
      height: 300,
    };
    commandManager.execute(exectue);
  };
image.png561859740.png
回复 使用道具 举报
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2021-1-12 18:02:41
5#
本帖最后由 DerrickJiao 于 2021-3-12 09:52 编辑
ws15355056237 发表于 2021-1-12 16:39
大于我设置的宽度
document.querySelector('#insertImage').onclick = function () {
    let cell = {

出现此问题是因为图片是异步加载,这边调研一下其他的实现方式,帖子为您改为保留处理,有进展会第一时间在本帖更新。(SJS-7207)

——————————————————————————
此问题已在14.0.8中修复,建议您升级至此版本。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部