0
가장 간단한 그래피티 앱. 코드는 바탕 화면과 Android에서 잘 작동합니다. iOS (실제 기기 - iPad 2에서 테스트)에서 동일한 작업을 수행하려고하면이 오류가 발생합니다. ArgumentError : Error # 2015 : Invalid BitmapData.ArgumentError : 오류 # 2015 : 잘못된 BitmapData입니다. iOS에서
기본적으로 BitmapData의 크기가 큰 이유는 분명합니다.
왜 그런가? 그리고 왜 iOS에서만? 비트 맵 코드
private var maskLine:Sprite = new Sprite();
stage.addEventListener(MouseEvent.MOUSE_MOVE,onMove);
stage.addEventListener(MouseEvent.MOUSE_DOWN,onDown);
stage.addEventListener(MouseEvent.MOUSE_UP,onUp);
protected function onDown(ev:MouseEvent):void {
maskLine.graphics.lineStyle(20, 0x33CC00, 1);
maskLine.graphics.moveTo(mouseX, mouseY);
stage.addEventListener(MouseEvent.MOUSE_MOVE, onMove);
}
protected function onUp(ev:MouseEvent):void {
stage.removeEventListener(MouseEvent.MOUSE_MOVE, onMove);
}
protected function onMove(ev:MouseEvent):void {
maskLine.graphics.lineTo(mouseX, mouseY);
}
저장 :
maskLine.filters = [new BlurFilter(4, 4, 1)];
trace (Capabilities.screenResolutionX + ' ' + Capabilities.screenResolutionY + ' ' + maskLine.width + ' ' + maskLine.height);
//768 1024 107374182.35 107374182.35
// Here is get error
var bmpd:BitmapData = new BitmapData(maskLine.width, maskLine.height, true, 0x000000);
bmpd.draw(maskLine);
꼭 그렇지는 않습니다. 'width'또는 'height'매개 변수 중 하나가 양수가 아닌 경우 (즉, 음수, 0 또는 NaN)이 오류가 발생합니다. – weltraumpirat
BitmapData 생성자 참조를 확인하십시오. 그 이유는 다음과 같습니다. http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/display/BitmapData.html#BitmapData() – weltraumpirat
@weltraumpirat You trace를 볼 수 있습니다 - maskLine.width == 107374182.35 – Astraport