gpt4 book ai didi

java - 在 Android Studio 的 iText PDF 文档中添加图像

转载 作者:行者123 更新时间:2023-12-02 11:11:29 24 4
gpt4 key购买 nike

我尝试使用 Java 在 Android Studio 中的 iText PDF 文档中添加图像,但它总是显示错误 NullPointerException

我尝试过的代码是:

1.

try {
InputStream inputStream = context.getAssets().open("res/drawable/logo.png");
Bitmap bitmapA = BitmapFactory.decodeStream(inputStream);
ByteArrayOutputStream stream = new ByteArrayOutputStream();

bitmapA.compress(Bitmap.CompressFormat.PNG, 100, stream);
Image image = Image.getInstance(stream.toByteArray());
return image;
}catch (Exception e){
e.printStackTrace();
}

2.

try {
Drawable d = context.getResources().getDrawable(R.drawable.logo);
BitmapDrawable bitDw = ((BitmapDrawable) d);
Bitmap bmp = bitDw.getBitmap();
ByteArrayOutputStream stream = new ByteArrayOutputStream();
bmp.compress(Bitmap.CompressFormat.PNG, 100, stream);
Image image = Image.getInstance(stream.toByteArray());
return image;
}catch (Exception e){
e.printStackTrace();
}

3.

try {
Drawable d = context.getDrawable(R.drawable.logo);
BitmapDrawable bitDw = ((BitmapDrawable) d);
Bitmap bmp = bitDw.getBitmap();
ByteArrayOutputStream stream = new ByteArrayOutputStream();
bmp.compress(Bitmap.CompressFormat.PNG, 100, stream);
Image image = Image.getInstance(stream.toByteArray());
return image;
}catch (Exception e){
e.printStackTrace();
}

4.

try {
Image image = Image.getInstance("res/drawable/logo.png");
return image;
} catch (BadElementException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}

..这些代码都不起作用。总是同样的错误,没有找到资源。

我的问题是,我可以将图像添加到 iText 文档吗?我怎样才能做到这一点?

诗。我正在使用 iText5(实现“com.itextpdf:itextg:5.5.10”)。

最佳答案

我通过一些小改动解决了我的问题。如果其他人需要它,我会将其放在这里。

Bitmap bm = BitmapFactory.decodeResource(getResources(), R.drawable.logo);
ByteArrayOutputStream stream = new ByteArrayOutputStream();
bm.compress(Bitmap.CompressFormat.PNG, 100, stream);
Image img = null;
byte[] byteArray = stream.toByteArray();
try {
img = Image.getInstance(byteArray);
} catch (BadElementException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}

然后,您可以将此 img 添加到 iText 中的 PDF 文件中。

关于java - 在 Android Studio 的 iText PDF 文档中添加图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50591484/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com