您可以编写动作脚本来进行闪存打印
有没有办法打印定义iframe中的内容并打印?
例如:
这是一个很好的flash打印演示脚本。
print_btn.addEventListener(MouseEvent.CLICK,printContent);
function printContent(evt:MouseEvent) {
var printJob:PrintJob = new PrintJob();
if (printJob.start()) {
if (content_mc.width>printJob.pageWidth) {
content_mc.width=printJob.pageWidth;
content_mc.scaleY=content_mc.scaleX;
}
printJob.addPage(content_mc);
printJob.send();
}
}
content_mc在.fla文件中定义。我希望动作脚本能够查看当前的网页并在ifame中打印内容。 可以这样做吗? 示例将有所帮助,因为我只是在学习动作脚本。 谢谢你的帮助!
答案 0 :(得分:1)
直接没有。有几个“黑客”是的。因此,要开始使用,您可以在Flex中使用ExternalInterface与javascript进行通信。这是必要的,因为你无法直接渲染IFrame作为浏览器在Flex中的范围(除了AIR,即使如此,它也不会在所有情况下都是1:1匹配)。第二步是在javascript函数中调用window.print()。您的AS看起来像这样:
ExternalInterface.call( “doJSPrint”);
最后一个“黑客”涉及将媒体设置为css,以便在HTML页面中的其他元素上正确打印/屏幕,以便打印IFrame。
相关链接:
http://www.w3.org/TR/CSS2/media.html
http://www.spikything.com/blog/index.php/2009/08/23/externalinterface_howto/
祝你好运,如果你认为我可以提供更多信息,请告诉我。