我正在製作一個應用程序,它顯示Imagemagick從PDF文件生成的大量圖像。某些圖像無法使用BitmapFactory加載。它只是返回null而不是位圖。無法使用BitmapFactory.decodeFile加載JPEG圖像。返回null
日誌說:
D/skia(15101): --- decoder->decode returned false
一些有問題的圖像是非常小的,是不是內存的問題,圖像不腐敗,因爲我可以向他們展示任何其他機器上。此外BitmapFactory能夠在寬度和高度解碼,如果我在選擇使用
inJustDecodeBounds = true;
。
我試圖用外部圖像查看器(QuickPic)加載其中一個圖像沒有運氣。它還返回「加載失敗」,表示SKIA認爲圖像已損壞或至少由於某種原因不被支持。
一個不工作的圖片,可以發現here
我用來加載它的完整源代碼在這裏
BitmapFactory.Options o = new BitmapFactory.Options();
o.inJustDecodeBounds = true;
BitmapFactory.decodeFile(FILENAME,o);
int width = o.outWidth;
int height = o.outHeight;
/* Width and height decoded successfuly */
BitmapFactory.Options o2 = new BitmapFactory.Options();
o.inJustDecodeBounds = false;
Bitmap bitmap = BitmapFactory.decodeFile(FILENAME,o2);
/*Bitmap is null */
任何想法是錯誤的,或者它如何能夠規避是歡迎。
u能張貼創建文件名的代碼? – dor506
FILENAME只是一個指向特定圖像文件的常量。在我的情況下,它被定義爲'final static String FILENAME =「/sdcard/MPSIT.jpg」;' – Niels