获取火花窗口的位图
Posted
技术标签:
【中文标题】获取火花窗口的位图【英文标题】:Getting a bitmap of a spark window 【发布时间】:2014-08-21 09:27:10 【问题描述】:我有一个正在开发的 AIR 应用程序,我想基本上在一个单独的 spark 窗口中获得一个位图,了解正在发生的事情。用例是 spark 窗口的缩放预览,可能会在投影仪上显示在主显示器上。我想将位图泵入火花图像作为源。谷歌搜索这似乎并没有透露太多,或者我只是不知道谷歌的条款。谁能指出我正确的方向?有人有更好的方法来实现这一点吗?
谢谢!
【问题讨论】:
你要截屏吗? 【参考方案1】:如果您想制作某个 DisplayObject 的位图,无论是整个窗口(舞台)还是只是一个 Sprite,您都应该使用 BitmapData 的 draw() 方法。
以下代码将对整个舞台进行“屏幕截图”,制作位图图像并将其缩放到左上角:
var bd:BitmapData = new BitmapData(stage.stageWidth, stage.stageHeight);
bd.draw(stage);
var bitmap:Bitmap = new Bitmap(bd);
bitmap.width = 300;
bitmap.scaleY = bitmap.scaleX;
addChild(bitmap);
阅读有关 Bitmap 和 BitmapData 的更多信息以利用以下功能会对您有所帮助:
像素对齐 平滑 透明度和其他人。例如,平滑可以使图像在缩放时看起来更好,但它可以算作过滤器,并且可能会影响性能。这就是为什么在绘制时最好在位图数据上应用平滑(绘制缩放图像是用矩阵完成的),而不是在位图上;但仅当您不打算在运行时缩放图像时。
希望能回答您的问题!
【讨论】:
是的,这正是我所需要的!谢谢!以上是关于获取火花窗口的位图的主要内容,如果未能解决你的问题,请参考以下文章
我如何在 Windows 中获取正在运行的程序的窗口句柄 [关闭]