0
我使用PDFBox的距離:Tom Roush PDFBox Android並將其導入到build.gradel:dependencies {compile 'org.apache:pdfbox-android:1.8.9.0'}
PDFBox的Android上無法打開並填寫表單
但每次我只運行吐司出現的活動,但充滿PDF文件無法找到。 PDF位於/ assets文件夾中。我自己在/ app/src/main/assets中創建了這個文件夾。我使用Android Studio。
的活動:
public class GwmProbenActivity extends AppCompatActivity {
DatabaseHelperAllgemeineDaten myDb;
public String stOrt;
public String stProgramm;
public String stName;
public String stDatum;
File root;
AssetManager assetManager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_proben);
Intent intent = getIntent();
stDatum = intent.getStringExtra("datum");
myDb = new DatabaseHelperAllgemeineDaten(this);
PDFBoxResourceLoader.init(getApplicationContext());
root = android.os.Environment.getExternalStorageDirectory();
assetManager = getAssets();
}
public void fillPDF() {
try {
// Load the document and get the AcroForm
PDDocument document = PDDocument.load(assetManager.open("Vorlage_GWM- Protokoll.pdf"));
PDDocumentCatalog docCatalog = document.getDocumentCatalog();
PDAcroForm acroForm = docCatalog.getAcroForm();
// Fill the text field
PDFieldTreeNode field = acroForm.getField("ProbenahmeDatum");
field.setValue(stDatum);
String path = root.getAbsolutePath() + "/Download/Vorlage_GWM-Protokoll1";
Toast.makeText(this,"Saved filled form to " + path,Toast.LENGTH_LONG).show();
document.save(path);
document.close();
}
catch (IOException ioe)
{
ioe.printStackTrace();
}
}
public void speichern (View v) {
fillPDF();
}
}
1)「.PDF」在你保存的文件名失蹤2人)敬酒被保存之前調用,因此這意味着它似乎沒什麼=>請更正此問題,編輯您的問題和現在發生的事情的意見告訴。 –
謝謝,我已經添加了「.pdf」,並在document.close()之後移動了Toast。現在吐司沒有出現,我無法找到存儲/模擬/ 0 /下載 –
文件好吧,明白了。 自API 23+以來,您需要檢查活動中的權限。 [這是解決辦法(http://stackoverflow.com/a/33292700/4615030) –