我无法在android emulator中使用pdfbox运行pdf文本提取。但是,当作为独立java应用程序运行时,代码运行良好。
使用了PDFBOXv1.8.4,并且使用pdfbox jar适当地设置了构建路径。可能会出什么问题?
我还看到一些帖子建议不要使用pdfbox,因为android库不支持drawables(java.awt.*)。真的是这样吗?我还能希望用pdfbox解析我的简单pdf文件(仅文本)吗。
public static void PdftoText(InputStream input)
{
PDFParser parser ;
COSDocument cosDoc;
PDFTextStripper pdfStripper;
PDDocument pdDoc;
String parsedText;
try
{
parser = new PDFParser(input);
parser.parse();
cosDoc = parser.getDocument();
pdDoc = new PDDocument(cosDoc);
pdfStripper = new PDFTextStripper();
if(pdDoc != null){
pdfStripper.setWordSeparator(":");
parsedText = pdfStripper.getText(pdDoc);
System.out.println(parsedText);
}
}
catch(Exception e)
{
e.printStackTrace();
}
return null;
}
这是我得到的例外
03-26 13:17:57.046: I/dalvikvm(951): Failed resolving Lorg/apache/pdfbox/pdmodel/PDDocument; interface 1617 'Ljava/awt/print/Pageable;'
03-26 13:17:57.079: W/dalvikvm(951): Link of class 'Lorg/apache/pdfbox/pdmodel/PDDocument;' failed
03-26 13:17:57.366: D/dalvikvm(951): GC_FOR_ALLOC freed 314K, 13% free 3097K/3528K, paused 278ms, total 278ms
03-26 13:17:57.366: E/dalvikvm(951): Could not find class 'org.apache.pdfbox.pdmodel.PDDocument', referenced from method org.apache.pdfbox.pdfparser.PDFParser.getPDDocument
03-26 13:17:57.377: W/dalvikvm(951): VFY: unable to resolve new-instance 2233 (Lorg/apache/pdfbox/pdmodel/PDDocument;) in Lorg/apache/pdfbox/pdfparser/PDFParser;
03-26 13:17:57.377: D/dalvikvm(951): VFY: replacing opcode 0x22 at 0x0000
03-26 13:17:57.596: I/dalvikvm(951): Failed resolving Lorg/apache/pdfbox/pdmodel/PDDocument; interface 1617 'Ljava/awt/print/Pageable;'
03-26 13:17:57.696: W/dalvikvm(951): Link of class 'Lorg/apache/pdfbox/pdmodel/PDDocument;' failed
03-26 13:17:57.707: D/dalvikvm(951): DexOpt: unable to opt direct call 0x39b3 at 0x06 in Lorg/apache/pdfbox/pdfparser/PDFParser;.getPDDocument
到目前为止,由于awt依赖关系,在Android系统中不可能直接使用PDFBox。如果你只需要从PDF中提取文本,那么你也可以尝试https://github.com/RatheeshRavindran/PDFBoxLight
这是我最近做的PDFBox的Android移植,注意它仍然是Beta版。
我建议你使用TomRoush/PdfBox Android!我遇到了完全相同的问题,它解决了,所以为什么不试试呢!;-)
我正在尝试使用pdfbox库签署pdf。我现在卡住了,真的需要帮助。 这是我的代码: 然后我正在保存我的pdf,但是:1)我注意到sign method从来没有被调用2)我应该在哪里附加CertyFicate?在sign method中? 以下是我保存PDF的方法:
我们从运行在云中的docker容器中的pdf生成器中获得间歇性异常。生成器的一部分处理获取SVG文档并将其加载到PDF中。每100ish调用它就会从importPageAsForm(tmpSVGPdf,0)引发以下异常。 我们还没能在本地复制这个问题。 然后我们打开一个PDF流&一个svg代码转换器的输出流。 当我们点击下面的importPageAsForm时,我们会传入临时SVG文档,在该函数中
我们在其中一个应用程序中使用pdfbox。一些叠加的PDF会导致输出和字体“损坏”。 下面是我用来覆盖pdf的示例代码。pdf有时具有不同的页数。我们将顶角变平,并将注释设置为只读。pdf页面旋转和bbox大小有时设置不同(尤其是扫描仪),所以我们试图纠正这一点。
我正在使用PDFbox下载PDF。我想在中间添加一些新页面。 此代码在PDF结尾处插入新页面。如何在另一个位置插入页面?
我想删除PDF中每个页面的底部部分,但不改变页面大小,什么是推荐的方式在PDFBOX中的java中做到这一点?如何删除页脚从PDF中的每个页面? 是否有可能使用PDRectgle删除其中的所有文本/图像? 我所尝试的片段,使用setCropBox矩形似乎失去页面大小,也许cropBox不打算这样做? 在pdfbox cookbook示例中,我能找到的最接近的例子是如何删除整个页面,但这不是我想要的
问题内容: 我想在使用创建的PDF中添加超链接,这样我单击一些文本示例,“单击此处”将重定向到URL。我尝试使用和,但是如何添加呢? 问题答案: 要添加使用以下代码