Я разрабатываю приложение, где мне нужно преобразовать изображение в PDF. Я что-то пробовал, но проблема в том, что размер изображения в этом PDF очень мал. Мне нужно решение, чтобы исправить это. Также я ищу преобразование нескольких изображений в один документ PDF. Я отправлю код, который я попробовал.
public void convertPDF(byte[] path)
{
String FILE = "mnt/sdcard/FirstPdf.pdf";
Document document=new Document();
try {
PdfWriter.getInstance(document, new FileOutputStream(FILE));
document.open();
try {
image=Image.getInstance(path);
document.add(new Paragraph("My Heading"));
document.add(image);
document.close();
} catch (IOException e) {
e.printStackTrace();
}
} catch (DocumentException e) {
e.printStackTrace();
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
Когда я преобразовываю битмап в массив байтов, я сжимаю изображение, и я думаю, что причина. Без сжатия изображения я не могу преобразовать битмап в байт-массив.
ByteArrayOutputStream stream = new ByteArrayOutputStream();
bmp.compress(Bitmap.CompressFormat.PNG,100,stream);
byte[] byteArray=stream.toByteArray();
convertPDF(byteArray);
Есть ли какое-либо решение для этого?
ОБНОВЛЕНО
Здесь я выполнил ответ, который предложил @Burak Cakir в ответе. Но теперь я получаю увеличенное изображение в формате PDF. Для лучшего понимания, пожалуйста, найдите изображения ниже.