我试着填写pdf表格。我打开和加载PDFView的pdf文件,但我如何填写pdf表格?
我试着这样做:
File file = new File("/storage/emulated/0/test/ankieta.pdf");
PDFView pdfView = (PDFView) findViewById(R.id.pdfView);
if (file.exists()) {
pdfView.fromFile(file)
.enableSwipe(true) // allows to block changing pages using swipe
.swipeHorizontal(false)
.enableDoubletap(true)
.password(null)
.scrollHandle(null)
.enableAntialiasing(true) // improve rendering a little bit on low-res screens
.spacing(0)
.autoSpacing(false) // add dynamic spacing to fit each page on its own on the screen
.pageSnap(true) // snap pages to screen boundaries
.pageFling(false) // make a fling change only a single page like ViewPager
.nightMode(false)
.onTap(new OnTapListener() {
@Override
public boolean onTap(MotionEvent e) {
return false;
}
})
.load();
}发布于 2019-03-29 13:13:52
首先把你的pdf变成可编辑的pdf。
使用本网站:-https://www.jotform.com/fillable-pdf-form-creator/
在本站点中,生成一个字段id并将其保存在任何地方,因为使用此id,您可以填充pdf的固定位置,并生成pdf保存在res->raw->yourpdf中。
现在写这段代码
reader = new PdfReader(current.getResources().openRawResource(R.raw.form));使用此代码,可以添加pdf。
PdfStamper stamper = new PdfStamper(reader, new FileOutputStream(file, false));
AcroFields acroFields = stamper.getAcroFields();
acroFields.setField("name", "Hardik Talaviya");
acroFields.setField("enroll", "150040116022");
acroFields.setField("branch", "IT");
acroFields.setField("sem", "8");
stamper.setFormFlattening(true);
stamper.close();这里的名字,注册,分支和sem是我的pdf id,可以生成当你创建可编辑的pdf。
最后,保存这个pdf在你的存储,它是填充和打开它,你想打开的地方。
我希望这能帮到你!
谢谢。
发布于 2021-02-18 15:59:28
另一个可以帮助您填写PDF的服务。
Www.useanvil.com/开发者
他们有填充、生成和签名PDF的API。文档看起来很好,并且有一个预先编写的节点客户端。
https://stackoverflow.com/questions/55278379
复制相似问题