支持Android文本保存成PDF格式,Canvas画图保存JPG格式导出PDF格式,使用itextpdf-5.5.1.jar包
项目地址:http://download.csdn.net/download/weixin_40391500/10149234
1.保存JPG格式导出PDF格式
//创建pdf文档对象
Document document = new Document();
try {
//将文件输出流与pdf对象,进行关联
PdfWriter.getInstance(document, new FileOutputStream(FILE_DIR + "table.pdf"));
//打开文档
document.open();
Image img = Image.getInstance(FILE_DIR + "2.jpg");
img.setAlignment(Image.LEFT | Image.TEXTWRAP);
img.setBorder(Image.BOX);
img.setBorderColor(BaseColor.WHITE);
// img.scaleToFit(weght, heigth);//大小
img.setAlignment(Element.ALIGN_CENTER);
document.add(img);
//关闭文档
document.close();
} catch (Exception e) {
e.printStackTrace();
}
2.保存成PDF格式
try {
File file = new File(FILE_DIR);
if (!file.exists()) {
file.mkdirs();
}
PdfDocument document = new PdfDocument();
/***宽 高 页数******/
PdfDocument.PageInfo pageInfo = new PdfDocument.PageInfo.Builder(612, 792, 1).create();
PdfDocument.Page page = document.startPage(pageInfo);
TextPaint textPaint = new TextPaint();
textPaint.setColor(Color.BLACK);
textPaint.setTextSize(16);
textPaint.setTextAlign(Paint.Align.LEFT);
Typeface textTypeface = Typeface.create(Typeface.MONOSPACE, Typeface.NORMAL);
textPaint.setTypeface(textTypeface);
String text = "测试";
StaticLayout mTextLayout = new StaticLayout(text, textPaint, page.getCanvas().getWidth(),
Layout.Alignment.ALIGN_NORMAL, 1.0f, 0.0f, false);
mTextLayout.draw(page.getCanvas());
document.finishPage(page);
File file1 = new File(file, "pdf_android.pdf");
try {
FileOutputStream mFileOutStream = new FileOutputStream(file1);
document.writeTo(mFileOutStream);
mFileOutStream.flush();
mFileOutStream.close();
} catch (Exception e) {
e.printStackTrace();
}
document.close();
} catch (Exception e) {
e.printStackTrace();
}