java - 使用 ITextPDF 保存 PDF 文件
问题描述
我正在使用 ITextPDF 创建 PDF。PDF 是在 android 中创建的。我不想将 pdf 保存到 android 设备的本地存储中,而是想将其保存到变量中,例如文件文件;或类似的东西,或直接将其转换为字符串,然后将该值保存到数据库中。
这是我声明文件变量的地方(这可以改变)
File file;
这是执行 pdf 创建的按钮。
PDFTest.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
PDF();
}
});
这是创建PDF的方法
public void PDF()
{
try {
Image img = Image.getInstance(IMAGES[0]);
Document document = new Document(img);
PdfWriter.getInstance(document, new FileOutputStream(file));
document.open();
document.add(new Paragraph("Example"));
document.close();
}catch (DocumentException e)
{
e.printStackTrace();
} catch (FileNotFoundException e)
{
e.printStackTrace();
}
}
FileOutputStream 需要一个我刚刚制作文件的位置。如果文件正确,我如何显示该文件对象中的值。
解决方案
在 iText 7 API 文档中PdfWriter
,您可以读到构造函数采用OutputStream
. 这可以是任意OutputStream
的,例如 a FileOutputStream
或 a ByteArrayOutputStream
。
另请参阅重复问题如何在内存中创建 pdf 文件。
推荐阅读
- javascript - 嵌入式谷歌地图未在 Firefox 中完全呈现
- vue.js - Easeljs:“createjs.Ticker.paused = true”不起作用
- iccube - 服务器端PDF导出功能
- java - 如何在 Java 中向 Octoprint 发送 POST 请求?
- solr - 按 document.contentType 搜索
- amp-html - 您可以在非 amp 页面上使用 AMP 标签吗?
- go - Go 中的切片如何不被取消引用?
- html - HTML标签的Python网页抓取
- java - String.equals() 方法在 Windows 中不匹配
- windows - Windows 上用于 youtube-dl 的批处理文件不起作用