Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/201.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Android设备上离线生成PDF的好方法。。。试过DOCX4J_Android_Pdf Generation_Docx_Apache Fop_Docx4j - Fatal编程技术网

在Android设备上离线生成PDF的好方法。。。试过DOCX4J

在Android设备上离线生成PDF的好方法。。。试过DOCX4J,android,pdf-generation,docx,apache-fop,docx4j,Android,Pdf Generation,Docx,Apache Fop,Docx4j,有没有一种在Android设备上生成PDF文档的好方法?我有一个DOCX文件作为基础 我知道有可能: 这里有一个非常好的应用程序 他们让它离线 一些想法 我已经尝试过DOCX4J,它正在正确地生成一个DOCX文件,不管是如何使用 WordprocessingMLPackage wordMLPackage要准备PDF,它说: E/AndroidRuntime﹕ FATAL EXCEPTION: main java.lang.ExceptionInInitializerError

有没有一种在Android设备上生成PDF文档的好方法?我有一个DOCX文件作为基础

我知道有可能: 这里有一个非常好的应用程序

他们让它离线

一些想法

我已经尝试过DOCX4J,它正在正确地生成一个DOCX文件,不管是如何使用

WordprocessingMLPackage wordMLPackage
要准备PDF,它说:

E/AndroidRuntime﹕ FATAL EXCEPTION: main
    java.lang.ExceptionInInitializerError
            at org.plutext.DocxToHtml.AndroidDocxToHtmlActivity$1.onClick(AndroidDocxToHtmlActivity.java:215)
            at android.view.View.performClick(View.java:4209)
            at android.view.View$PerformClick.run(View.java:17431)
            at android.os.Handler.handleCallback(Handler.java:725)
            at android.os.Handler.dispatchMessage(Handler.java:92)
            at android.os.Looper.loop(Looper.java:153)
            at android.app.ActivityThread.main(ActivityThread.java:5297)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:511)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:833)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600)
            at dalvik.system.NativeStart.main(Native Method)
     Caused by: java.lang.NullPointerException
            at **org.docx4j.utils.ResourceUtils.getResource(ResourceUtils.java:45)
            at org.docx4j.convert.out.pdf.viaXSLFO.Conversion.<clinit>(Conversion.java:101)**
            at org.plutext.DocxToHtml.AndroidDocxToHtmlActivity$1.onClick(AndroidDocxToHtmlActivity.java:215)
            at android.view.View.performClick(View.java:4209)
            at android.view.View$PerformClick.run(View.java:17431)
            at android.os.Handler.handleCallback(Handler.java:725)
            at android.os.Handler.dispatchMessage(Handler.java:92)
            at android.os.Looper.loop(Looper.java:153)
            at android.app.ActivityThread.main(ActivityThread.java:5297)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:511)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:833)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600)
            at dalvik.system.NativeStart.main(Native Method)
编辑更新:

事实证明docx2fo.xslt不在org\docx4j\convert\out\pdf\viaXSLFO\的库中。将此文件插入我现在得到的JAR中:

java.lang.NoClassDefFoundError: org.apache.fop.apps.FopFactory
        at org.docx4j.convert.out.pdf.viaXSLFO.Conversion.output(Conversion.java:231)
这是哪一行:

FopFactory fopFactory = FopFactory.newInstance();
这项进口:

import org.apache.fop.apps.FopFactory;
这似乎是Android上的一个严重问题,请参阅

编辑更新2

完整点:添加包含FopFactory的fop.jar时会出现以下错误:
java.lang.NoSuchMethodError:org.apache.fop.apps.FopFactory.newInstance

欢迎提出任何建议

import org.apache.fop.apps.FopFactory;