我有一个半新手问题。我已经编程多年了,但我所有的早期经验都是 OOP 之前的,我的大脑就这样安定下来了。我也是 Actionscript 的新手。所以希望这对某人来说是一件容易的事。
我正在使用 as3svgrendererlib 导入 SVG。它工作得很好,但我需要能够序列化它输出的图形。但是我不能序列化精灵,所以我必须一直到 IGraphicsData 级别才能得到我能得到的东西。但是图书馆没有给我这些数据。它只给我精灵。所以我需要改变它。
由于它最终使用的绘图方法屈指可数(beginFill
、drawRect
等),我的想法是,如果我可以连接这些方法并用我自己的代码补充它们以输出 IGraphicsData,那么我就可以做生意了。现在我知道我可以通过使用“扩展”类来做到这一点,但这需要对库进行大量修改以将所有这些标准调用更改为我的自定义调用。
所以我想知道:是否有一种神奇的 OOP 方法来编写可以普遍拦截对现有方法的调用而无需修改原始调用的方法?
谢谢!:)
编辑:我需要独立于分辨率,因此将图形保存在矢量中而不是将它们转换为位图很重要。