找回密码
 立即注册

QQ登录

只需一步,快速开始

[已处理] 打印Spread问题

dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2019-4-28 11:46:21
11#
还是我一直给您说的,打印是异步的,不建议批量给打印机发送任务。上一页还没打印又发送新的任务出去。
还是建议您将打印内容生成PDF,然后控制打印pdf具体某一页。Spread不适合连续调用PrintSheet
回复 使用道具 举报
bingdaoice
中级会员   /  发表于:2019-4-28 15:18:05
12#
你们不会对这两个问题进行修复吗?
解决的办法就只能是转PDF再进行打印?
回复 使用道具 举报
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2019-4-28 17:02:53
13#
这种多任务同一时间的打印还不支持。
另一种方案就是前一个打印任务完成后再开启下一个,而不是同时发起多个。
  1.        printset.PageStart = 1;
  2.             printset.PageEnd = 2;
  3.             fpSpread1.PrintMessageBox += FpSpread1_PrintMessageBox;
  4.             fpSpread1.Sheets[0].PrintInfo = printset;
  5.             fpSpread1.PrintSheet(0);
复制代码

  1.         private void FpSpread1_PrintMessageBox(object sender, FarPoint.Win.Spread.PrintMessageBoxEventArgs e)
  2.         {
  3.             if (e.BeginPrinting == false)
  4.             {
  5.                 if (fpSpread1.ActiveSheet.PrintInfo.PageStart < 4)
  6.                 {
  7.                     fpSpread1.ActiveSheet.PrintInfo.PageStart = fpSpread1.ActiveSheet.PrintInfo.PageEnd+1;
  8.                     fpSpread1.ActiveSheet.PrintInfo.PageEnd= fpSpread1.ActiveSheet.PrintInfo.PageEnd + 1;
  9.                     fpSpread1.PrintSheet(0);
  10.                 }
  11.             }
  12.         }
复制代码
回复 使用道具 举报
bingdaoice
中级会员   /  发表于:2019-4-29 10:57:21
14#
你们会对打印的这些问题做出处理吗?
回复 使用道具 举报
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2019-4-29 17:57:08
15#
bingdaoice 发表于 2019-4-29 10:57
你们会对打印的这些问题做出处理吗?

这里暂时不会改动,一般用户直接打印所有sheet或者单独sheet都没有。有您这样需求的也可以按照我提供的方案去解决,所以暂时没有更多用户场景支持的话,不会改动。
回复 使用道具 举报
12
您需要登录后才可以回帖 登录 | 立即注册
返回顶部