我正在我的应用程序中pdf
使用生成文档itext
。我确保从该站点下载 android 版本。
当我在模拟器中运行应用程序(不连接手机)时,生成文档并使用 eclipse 从 SD 卡中提取它"Pull from device"
,一切正常。当我将应用程序安装(侧载)到手机上并从手机生成 pdf 时,应用程序显示成功消息并在 SD 卡中创建文档。在构建路径时,我还单击了 order 和 export。
我的问题是,当我在手机上创建文档时,当我尝试使用Adobe Reader
"The document is empty (size 0KB)
. 我不知道手机出了什么问题,因为在模拟器中(不连接手机)它工作正常。我已将 jar 添加到构建路径和libs
文件夹中。我已经在互联网上浏览了解决方案,但找不到。可能跟我的有关系classpath
。我正在使用iText
。这是我的代码classpath
:
<classpath>
<classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
<classpathentry kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>
<classpathentry kind="src" path="src"/>
<classpathentry kind="src" path="gen"/>
<classpathentry exported="true" kind="lib" path="libs/itextpdf-5.3.4.jar"/>
<classpathentry kind="output" path="bin/classes"/>
</classpath>
这是我生成pdf的代码:
public void createPDF(String title, String summary, String overview, String marketing, String mgmt,
String assets, String financial) {
String filePath = file + ".pdf";
try {
Document document=new Document();
File root = new File(Environment.getExternalStorageDirectory(), "Plans");
if (!root.exists()) {
root.mkdirs();
}
File path = new File(root, filePath);
PdfWriter.getInstance(document,new FileOutputStream(path));
document.open();
addMetaData(document); //methods i created for the layout of the document
addTitlePage(document, title);
addSummary(document, summary);
addOverview(document, overview);
addAssets(document, assets);
addMarketing(document, marketing);
addManagement(document, mgmt);
addFinancial(document, financial);
document.close();
} catch (Exception e) {
e.printStackTrace();
}