2014-06-06 3 views
1

x 및 y 좌표로 캔버스의 모든 영역을 복사 한 다음 이미지에 붙여 넣기를 원합니다. 예에서J2ME - Canvas에서 이미지로 영역을 복사하는 방법은 무엇입니까?

:

Image image = Image.createImage(30, 20); 
image.drawImage(canvas); 
+0

다음과 같이 작동 할 수 있습니다 :'canvas.paint (image.getGraphics());', 일부 클립 만 있으면됩니다. – Ales

+0

Ales를 오해 한 것 같습니다. 캔버스에서 영역을 복사하여 이미지에 붙여 넣으려고합니다. 다른 방법은 아닙니다. –

답변

0

그것은 CanvasGameCanvas 데이터를 복사하는 것은 불가능하다.

원하는 것을 얻으려면 더블 버퍼링을 사용해야합니다. 즉, 그려야 할 버퍼로 Image bufferImg을 사용하고 그 다음 bufferImgCanvas에 그려야합니다. ,이 같은 다른 Image 위에 Image에서

그런 식으로 복사 할 수 있습니다 : g 당신이에 그리려는 2 ImageGraphics 목적

bufferImg.getRGB(int[] rgbData, int offset, int scanlength, int x, int y, int width, int height); 

다음

g.drawRGB(int[] rgbData, int offset, int scanlength, int x, int y, int width, int height, boolean processAlpha); 

.

이와 같은 더블 버퍼를 사용하면 물론 일부 장치에서는 다소 느려지지만 화면의 일부를 "추출"하려면 다른 방법으로는 할 수 없습니다.

관련 문제