gpt4 book ai didi

pdf - 在Android中的PDF文档中添加位图图像

转载 作者:行者123 更新时间:2023-12-04 20:43:26 25 4
gpt4 key购买 nike

请问,如何将位图图像直接传递给pdf文件。我用 GraphView 制作了一个图形,最后我将它转换为 Bitmap,在 OnClickListener 中:

write.setOnClickListener(new View.OnClickListener() 
{
@Override
public void onClick(View arg0) {
Bitmap bitmap;
graph.setDrawingCacheEnabled(true);
bitmap = Bitmap.createBitmap(graph.getDrawingCache());
graph.setDrawingCacheEnabled(false);
String filename = "imagen";
FileOperations fop = new FileOperations();
fop.write(filename, bitmap);
if (fop.write(filename,bitmap)) {
Toast.makeText(getApplicationContext(),
filename + ".pdf created", Toast.LENGTH_SHORT)
.show();
} else {
Toast.makeText(getApplicationContext(), "I/O error",
Toast.LENGTH_SHORT).show();
}
}
});

问题是在类 FileOperations 中:
public FileOperations() {
}

public Boolean write(String fname, Bitmap bm) {
try {
String fpath = "/sdcard/" + fname + ".pdf";
File file = new File(fpath);
if (!file.exists()) {
file.createNewFile();
}
Document document = new Document();
PdfWriter.getInstance(document,
new FileOutputStream(file.getAbsoluteFile()));
document.open();
String filename = bm.toString();
com.itextpdf.text.Image image =com.itextpdf.text.Image.getInstance(filename);
document.add(image);
document.add(new Paragraph("Hello World2!"));
// step 5
document.close();

Log.d("Suceess", "Sucess");
return true;
} catch (IOException e) {
e.printStackTrace();
return false;
} catch (DocumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return false;
}
}
}

我想知道如何传递位图图像以将其添加到 pdf 文档中,我这样做了,但我认为这仅在我给它一个路径时才有效。

字符串文件名 = bm.toString();
com.itextpdf.text.Image image =com.itextpdf.text.Image.getInstance(filename);

最佳答案

我只是解决它:

        document.open();
ByteArrayOutputStream stream = new ByteArrayOutputStream();
bm.compress(Bitmap.CompressFormat.JPEG, 100 , stream);
Image myImg = Image.getInstance(stream.toByteArray());
myImg.setAlignment(Image.MIDDLE);
document.add(myImg);

在 FileOperations 类中

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

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