2016-11-08 7 views
1

이다내가 페이드 인 이미지의 알파 값을 변경하여 내 BD-J 응용 프로그램에 대한 DvbBufferedImage를 사용하여 애니메이션을 만들려고 해요 0

doubleBuffer = new DVBBufferedImage(1920, 2180, DVBBufferedImage.TYPE_ADVANCED); 

하지만, 버퍼를 생성 한 후 너비와 높이가 0이고 그래픽을 얻으려고 할 때 :

null을 반환합니다.

그 후, 버퍼에 이미지를 그려야하고 NullPointerException이됩니다. 의견이 있으십니까?

protected BufferedImage bufImage = new BufferedImage(1920, 2180, BufferedImage.TYPE_INT_ARGB); 

는 말한다 : 나는이 코드를 사용 BufferedImageDvbBufferedImage를 교체 할 때 때문에이 내 라이브러리에 관한 생각

생성자로 BufferedImage (int, int, int)를 정의되지를

나는 Bd-j 응용 프로그램을 개발하기 위해 사용자 정의 Eclipse를 사용하고 있으며 Java 버전은 jre1.8.0_77입니다. 이 응용 프로그램에 사용

클래스는 다음과 같습니다 :

basis.jar 
btclasses.zip 
j2me_xml_cdc.jar 
javatv.jar 
jsse-cdc.jar 
pbp_1_0.jar 
SonicBDJ.jar 

당신의 도움이 사전에이 문제에 대한 감사를 이해할 수있을 것이다!

+0

'1920x2180'? 그게 무슨 해결책 이니? – Kayaman

+0

이 1920x2180 이미지를 내지도로 사용하여 버퍼 (dvb 버퍼 이미지의 bufferedimage)에로드하고이 버퍼의 일부를 그려 내 최종 이미지를 생성합니다. 그 다음이 이미지를 (알파 값을 변경하여) 애니메이션을 실행하는 데 사용합니다. – Arvin

답변

0

메모리 문제와 관련이있을 수 있습니다.

블루 레이 플레이어는 사양에 따라 4MB의 메모리가 있어야합니다. 여기에는 현재로드 된 실제 JAR 파일의 공간이 포함됩니다. 따라서 1920x2180 픽셀의 이미지를 고품질로 사용하는 경우 JAR은 이미 1-2 메가 바이트를 차지하고있을 것입니다. 그런 다음 해당 이미지를 메모리에로드하면 OutOfMemoryException이 표시되어 이미지가로드되지 않음을 의미하므로 NullPointerException이 표시됩니다.

블루 레이 디스크 자바는 JavaME입니다. 우리는 제한된 플랫폼을 다루고 있습니다. ;-)