找回密码
 立即注册

QQ登录

只需一步,快速开始

前端小菜鸟

初级会员

23

主题

86

帖子

259

积分

初级会员

积分
259
前端小菜鸟
初级会员   /  发表于:2023-3-14 11:39  /   查看:2041  /  回复:15
30金币
我有一个 模板,其中某几个sheet页面中设置了打印区,到导入模板并展示在网页中后打印区设置消失。请问我在导入时候需要做哪些设置?



  getTemplate() {
    this.loading = true
    this.closeLoadingTimer()
    this.loadFile().then((file: any) => {
      let excelIo = new Excel.IO();
      excelIo.open(file, (json) => {
        let workbookObj = json;
        this.spread.fromJSON(workbookObj);
        if (this.readonly) {
          this.sharedimpservice.lockSpread(this.spread, this.sheet);
        }
        this.loadEnd = true
      }, (error) => {
        this.msg.error('导入异常' + error);
      }, {});
    });
  }

  loadFile() {
    return new Promise((resolve) => {
      // this.record.template_id
      this.http.get(global.host + "/****/*****/download2",
        { id: this.record.template_id }, { responseType: 'blob' }).subscribe((data: any) => {
          const blob = new Blob([data], { type: 'application/octet-stream' });
          resolve(blob)
        });
    })
  }


最佳答案

查看完整内容

打印需要使用到print相关资源,建议您在package.json中下载完整的依赖(如不使用数据透视表,此依赖可不下载),根据需要引入。 附件为示例package.json,供参考。

15 个回复

倒序浏览
最佳答案
最佳答案
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2023-3-14 11:39:22
来自 5#
打印需要使用到print相关资源,建议您在package.json中下载完整的依赖(如不使用数据透视表,此依赖可不下载),根据需要引入。
附件为示例package.json,供参考。

package.json

1.09 KB, 下载次数: 51

回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2023-3-14 17:46:47
2#
您好,
“某几个sheet页面中设置了打印区”
您是如何设置的?请结合具体的文件详细描述下您的问题。
回复 使用道具 举报
前端小菜鸟
初级会员   /  发表于:2023-3-24 10:12:24
3#
Lynn.Dou 发表于 2023-3-14 17:46
您好,
“某几个sheet页面中设置了打印区”
您是如何设置的?请结合具体的文件详细描述下您的问题。

请问 这些插件  和我这个问题有关系么  我好像 只有一个 excelio插件 是有的
这些都需要单独安装么  安装方法有么

<script src="http://cdn.grapecity.com/spreadjs/hosted/scripts/gc.spread.sheets.all.14.2.3.min.js"></script>
    <script
        src="http://cdn.grapecity.com/spreadjs/hosted/scripts/plugins/gc.spread.sheets.charts.14.2.3.min.js"></script>
    <script
        src="http://cdn.grapecity.com/spreadjs/hosted/scripts/plugins/gc.spread.sheets.shapes.14.2.3.min.js"></script>
    <script
        src="http://cdn.grapecity.com/spreadjs/hosted/scripts/plugins/gc.spread.sheets.print.14.2.3.min.js"></script>
    <script
        src="http://cdn.grapecity.com/spreadjs/hosted/scripts/plugins/gc.spread.sheets.barcode.14.2.3.min.js"></script>
    <script src="http://cdn.grapecity.com/spreadjs/hosted/scripts/plugins/gc.spread.sheets.pdf.14.2.3.min.js"></script>
    <script
        src="http://cdn.grapecity.com/spreadjs/hosted/scripts/plugins/gc.spread.pivot.pivottables.14.2.3.min.js"></script>
    <script src="http://cdn.grapecity.com/spreadjs/hosted/scripts/interop/gc.spread.excelio.14.2.3.min.js"></script>
    <script
        src="http://cdn.grapecity.com/spreadjs/hosted/scripts/resources/zh/gc.spread.sheets.resources.zh.14.2.3.min.js"></script>

    <script src="http://cdn.grapecity.com/spreadjs/hosted/scripts/gc.spread.sheets.designer.resource.cn.14.2.3.min.js"></script>
    <script src="http://cdn.grapecity.com/spreadjs/hosted/scripts/gc.spread.sheets.designer.all.14.2.3.min.js"></script>
回复 使用道具 举报
前端小菜鸟
初级会员   /  发表于:2023-3-24 10:13:56
4#
本帖最后由 前端小菜鸟 于 2023-3-24 10:41 编辑
Lynn.Dou 发表于 2023-3-14 17:46
您好,
“某几个sheet页面中设置了打印区”
您是如何设置的?请结合具体的文件详细描述下您的问题。

package里只有这四个


"@grapecity/spread-excelio": "^14.2.5",
    "@grapecity/spread-sheets": "^14.2.5",
    "@grapecity/spread-sheets-angular": "^14.2.5",
    "@grapecity/spread-sheets-resources-zh": "^14.2.5",


还需要增加哪些呢?
回复 使用道具 举报
前端小菜鸟
初级会员   /  发表于:2023-3-24 13:59:06
6#
本帖最后由 前端小菜鸟 于 2023-3-24 14:08 编辑
Lynn.Dou 发表于 2023-3-24 12:12
打印需要使用到print相关资源,建议您在package.json中下载完整的依赖(如不使用数据透视表,此依赖可不下 ...

"@grapecity/spread-excelio": "^14.2.5",
    "@grapecity/spread-sheets": "^14.2.5",
    "@grapecity/spread-sheets-angular": "^14.2.5",
    "@grapecity/spread-sheets-resources-zh": "^14.2.5",
    "@grapecity/spread-sheets-charts": "^14.2.5",
    "@grapecity/spread-sheets-shapes": "^14.2.5",
    "@grapecity/spread-sheets-print": "^14.2.5",
    "@grapecity/spread-sheets-barcode": "^14.2.5",
    "@grapecity/spread-sheets-pdf": "^14.2.5",
    "@grapecity/spread-sheets-designer-resources-cn": "^14.2.5",
    "@grapecity/spread-sheets-designer": "^14.2.5",

目前是引入这些。

angular.json 里也配置了

"styles": [
              "node_modules/primeicons/primeicons.css",
              "node_modules/primeng/resources/themes/nova-light/theme.css",
              "node_modules/primeng/resources/primeng.min.css",
              "src/styles.less",
              "node_modules/@grapecity/spread-sheets/styles/gc.spread.sheets.excel2013white.css",
              "node_modules/@grapecity/spread-sheets-designer/styles/gc.spread.sheets.designer.min.css",
              "src/assets/primeflex/primeflex.css"
            ],
            "scripts": [
              "node_modules/ajv/dist/ajv.bundle.js",
              "node_modules/mockjs/dist/mock-min.js",
              "node_modules/@grapecity/spread-sheets/dist/gc.spread.sheets.all.min.js",
              "node_modules/@grapecity/spread-sheets-charts/dist/gc.spread.sheets.charts.min.js",
              "node_modules/@grapecity/spread-sheets-shapes/dist/gc.spread.sheets.shapes.min.js",
              "node_modules/@grapecity/spread-sheets-print/dist/gc.spread.sheets.print.min.js",
              "node_modules/@grapecity/spread-sheets-barcode/dist/gc.spread.sheets.barcode.min.js",
              "node_modules/@grapecity/spread-sheets-pdf/dist/gc.spread.sheets.pdf.min.js",
              "node_modules/@grapecity/spread-sheets-resources-zh/dist/gc.spread.sheets.resources.zh.min.js",
              "node_modules/@grapecity/spread-excelio/dist/gc.spread.excelio.min.js",
              "node_modules/@grapecity/spread-sheets-designer-resources-cn/dist/gc.spread.sheets.designer.resource.cn.min.js",
              "node_modules/@grapecity/spread-sheets-designer/dist/gc.spread.sheets.designer.all.min.js",
              "node_modules/crypto-js/crypto-js.js",
              "node_modules/echarts/dist/echarts.js"
            ]


但是还是和之前一样导入不进来那些样式


和我这种标签式的写法有关系么??


<gc-spread-sheets [hostStyle]="hostStyle" (workbookInitialized)="workbookInit($event)">
                <gc-worksheet name="sheet">
                </gc-worksheet>
              </gc-spread-sheets>


回复 使用道具 举报
前端小菜鸟
初级会员   /  发表于:2023-3-24 17:35:25
7#
Lynn.Dou 发表于 2023-3-24 12:12
打印需要使用到print相关资源,建议您在package.json中下载完整的依赖(如不使用数据透视表,此依赖可不下 ...

这些插件使用 需要授权么????
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2023-3-24 17:45:47
8#
本帖最后由 Lynn.Dou 于 2023-3-24 17:47 编辑


关于授权:
如果本地测试的话,不加授权也是可以的。跟你此前引入的其他SpreadJS组件一样,不需要再引入额外的授权。

另外,关于您问题本身而言,您这个模板文件是一个excel文件吗? ”打印区设置“消失指的又是什么?
结合demo或图片等详细说明下您的问题                 
回复 使用道具 举报
前端小菜鸟
初级会员   /  发表于:2023-3-24 18:07:26
9#
1679652265151.png70575865.png

模板样式,设置了打印区 蓝色框


这是导入后的效果
1679652422327.png17915648.png
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2023-3-27 14:05:37
10#
本帖最后由 Lynn.Dou 于 2023-3-27 14:07 编辑

关于蓝色打印边框,在您另一个贴中回复到类似问题,目前SpreadJS不支持蓝色框效果,不过支持设置是打印预览线,会有一个灰色虚线(分页预览线)便于查看分页位置。
另一个类似形状的浅蓝色边框,目前判断不出是何原因,您将上传的excel文件提供下,这边导入验证看看。



回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部