我正在尝试分析缩放在 ActionScript 内部是如何工作的。
我创建了一个小场景:
- 创建了一个 2 X 2 jpg 图像并在 flex 中导入。图像现在有 4 个像素
创建一个位图并使用 getPixel(x, y) 并打印出值。
Values of bitmap 2 X 2 ╔══════════╦══════════╗ ║ 16777215 ║ 16777215 ║ ╠══════════╬══════════╣ ║ 16777215 ║ 16777215 ║ ╚══════════╩══════════╝
现在我将位图缩放到 scaleX = 2 并打印出像素值。
for (var x:int =0; x < original.width; x = x+1) { for (var y:int = 0; y < original.height; y = y+1) { tempUnit = original.bitmapData.getPixel(x,y); outputString1 = outputString1 + tempUnit.toString() + '\t'; } outputString1 = outputString1 + '\r\n'; }
缩放后位图的值
Values of bitmap ╔══════════╦══════════╗ ║ 16777215 ║ 16777215 ║ ║ 16777215 ║ 16777215 ║ ╠══════════╬══════════╣ ║ 0 ║ 0 ║ ║ 0 ║ 0 ║ ╚══════════╩══════════╝
位置 (2,0), (2,1), (3,0), (3,1) 的像素取什么值?它不取现有像素的平均值吗?
我只用了这 4 个像素来分析。我得出的结论是,在相对于显示对象进行缩放后,他的 X 和 Y 轴单位正在改变。
我是 ActionScript 和图像处理的新手。请指出我正确的方向。