【问题标题】:Printing Flex 4 application in Firefox using browser print使用浏览器打印在 Firefox 中打印 Flex 4 应用程序
【发布时间】:2011-12-30 09:10:27
【问题描述】:

在 Firefox 和 Chrome 浏览器中打印 Flash 内容存在一个众所周知的问题。因此,一个 solution 是由“AnyCharts”创建的。但它似乎不起作用。我也尝试实现 the latest version of the component 即现在托管和谷歌代码。我完全按照手册的规定做了,但它仍然不起作用。AnyChart 的人在他们的博客页面上说,也应该用 CSS 做一些事情,但你可以从 Flash-Print-Fix 的手册中看到主页,没有提到CSS设置。

我的代码是这样工作的:

在 HTML 中,我连接了 Flash_Print-Fix 提供的 JavaScript 类:

<script type="text/javascript"  src="lib/FlashPrintFix.js"></script>

在 Flex App 中,我将此行放在图表系列的 FlexEvent.UPDATE_COMPLETE 处理程序中:

private function  onLineComplete(e:Event):void{

     FlashPrintFix.initializeApp();
    }

它不起作用。打印预览仍然是空的。

任何人都有关于如何解决这个问题的详细设置说明? 谢谢。

更新: 好吧,经过一些更深入的研究,我发现了问题。问题是在 Flex FlashPrintFix 实用程序中,以下行是关键行:

 ExternalInterface.call("FlashPrintFix.setImg", ExternalInterface.objectID,    _base64encoder.toString());

必须设置 ExternalInterface.objectID 参数,否则实用程序的 JS 端将找不到 Flash 对象。不知何故,仍然不明白为什么,如果我使用可用的 JQuery 插件之一嵌入 Flash ExternalInterface.objectID 是empty.So 解决方法是在 Utility 的 JS 类中硬输入 Flash Object id: FlashPrintFix.js 内部:

FlashPrintFix.setImg = function(objId, imgData) {
   var obj = document.getElementById(yourFlashObjectID");
 ...
 .....

【问题讨论】:

    标签: flash apache-flex firefox printing


    【解决方案1】:

    发布更多代码以提供帮助。

    该链接中的代码示例对我来说很好用。预览就像应用程序一样。 它创建了 Image 并放置在 flash 内容下方的 html 中,就像

    检查你离开的地方。

    1) 使用调试器检查它是否被初始化。

    2)如果你得到下面的图像,那么它将显示预览。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-05-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-04-16
      • 2022-01-15
      • 1970-01-01
      相关资源
      最近更新 更多