Попытка получить длину нулевого массива на iText - PullRequest
0 голосов
/ 03 июля 2019

Когда я нажимаю кнопку отправки, изображение должно отображаться на странице PDF.Но при первом щелчке показывается исключение (попытка получить длину нулевого массива).Но когда я нажимаю его во второй раз, PDF отображается.Почему это не работает в первый раз?Я использовал библиотеку iTextpdf для создания PDF.

Вот мой код в классе ImageSaver:

public static byte[] getImage(Context context, String imageName)
{
    try {
        File directory = context.getDir(directoryName, Context.MODE_PRIVATE);
        File image = new File(directory, imageName);
        Bitmap b = BitmapFactory.decodeStream(new FileInputStream(image));
        //return BitmapUtils.convertBitmapToByteArrayUncompressed(b);
        return BitmapUtils.convertBitmapToByteArray(b);
    }
    catch (Exception e)
    {
        e.printStackTrace();
        return null;
    }

}

Код в MainActivity для отображения изображения на странице PDF:

byte[] imgd = ImageSaver.getImage(getApplicationContext(), pictureName) ;
        Image imagebuyer = Image.getInstance(imgd);
        imagebuyer.scaleToFit(100, 100);

        PdfPCell cs = new PdfPCell(imagebuyer, true);
        cs.setHorizontalAlignment(Element.ALIGN_CENTER);
        cs.setBorderColor(BaseColor.LIGHT_GRAY);
        cs.setFixedHeight(100);
        tables.addCell(cs);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...