【问题标题】:AS3 Print Job Not Working With ChromeAS3 打印作业不适用于 Chrome
【发布时间】:2013-02-28 16:57:36
【问题描述】:

所以我在使用 Chrome 时遇到了一个奇怪的问题,我无法在网上找到任何与类似问题相关的帖子。我在 AS3 应用程序中有一个脚本,该脚本将屏幕截图作为位图数据并将其与 PrintJob 对象一起发送到打印机。它可以在 Flash、我的桌面本地以及除 Chrome 之外的所有浏览器中正常工作。

当我使用 Chrome 打印时,位图图像仅显示为灰色框,而不是实际图像本身。如果我将位图添加到舞台并从 Chrome 中查看,我可以看到位图实际上包含除 50% 灰色填充之外的图像数据,但一旦将其发送到 PrintJob,Chrome 似乎就会将其从这些数据中删除。

这是我正在使用的代码:

function printImage(clip:Sprite){
      var printJob:PrintJob = new PrintJob();
      printJob.start();                 
      printJob.addPage(clip);           
      printJob.send();
};

var clip:Sprite = new Sprite();
clip.addChild(bitmap);
printImage(clip);   

另外值得注意的是,当我将 PrintJobOptions.printAsBitmap 设置为 true 时,灰色框开始出现在所有实例中,而不仅仅是 Chrome

非常感谢您的帮助!

【问题讨论】:

标签: actionscript-3 google-chrome


【解决方案1】:

Chrome 的一个已知问题是任何被分配用于打印的 DisplayObject 都需要在舞台上。

只需将其添加到舞台并在之后将其删除即可。

但是,我通常喜欢在所有东西后面设置一个容纳容器,以防止添加/删除孩子的眨眼。

【讨论】:

  • 我只是把上面的答案,因为这是谷歌的第一个结果,回答的原始帖子作为评论发布在这个线程中,也有一个特定的实现。
猜你喜欢
  • 2013-06-15
  • 2016-01-07
  • 1970-01-01
  • 1970-01-01
  • 2013-02-06
  • 1970-01-01
  • 2016-09-23
  • 2016-12-03
  • 2016-08-16
相关资源
最近更新 更多