本文介绍了jTessBoxEditorFX - 无法处理 600dpi .png 文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个 pdf,我已将其转换为 500dpi 和 600dpi 的 .png.(见下文).500dpi 版本与 jTessBoxEditor 一起工作得很好.但是,600dpi 的失败了.我尝试按照建议增加 JVM 堆大小

600dpi 图像在这里:

解决方案

我看到的和你做的一样.除非您需要处理复杂的脚本,否则我建议您使用非 JavaFX 版本.

I have a pdf that I have converted to .png at 500dpi and 600dpi. (see below). The 500dpi version works just fine with jTessBoxEditor. But, the 600dpi one fails. I have tried increasing the JVM heap size as suggested here. Even the 600 dpi image is only 91KB. Even when I set the JVM heap size quite large, by running jTessBoxEditor as:

export JAVA_HOME="/Library/Internet Plug-ins/JavaAppletPlugin.plugin/Contents/Home/"  ## necessary to get latest java runtime environment because I am on a mac.
java -Xms1024m -Xmx2048m -jar jTessBoxEditorFX.jar

I still fail to be able to open the 600dpi version. Instead, I get a very long set of errors in the terminal. Some snippets of these are:

java.lang.NullPointerException
    at com.sun.javafx.sg.prism.NGCanvas$RenderBuf.validate(NGCanvas.java:213)
    at com.sun.javafx.sg.prism.NGCanvas.initCanvas(NGCanvas.java:640)
    at com.sun.javafx.sg.prism.NGCanvas.renderContent(NGCanvas.java:603)
    at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2053)
    at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945)
    at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235)

...

java.lang.NullPointerException
    at com.sun.javafx.sg.prism.NGCanvas$RenderBuf.validate(NGCanvas.java:213)
    at com.sun.javafx.sg.prism.NGCanvas.initCanvas(NGCanvas.java:640)
    at com.sun.javafx.sg.prism.NGCanvas.renderForcedContent(NGCanvas.java:624)
    at com.sun.javafx.sg.prism.NGGroup.renderForcedContent(NGGroup.java:198)
    at com.sun.javafx.sg.prism.NGGroup.renderForcedContent(NGGroup.java:198)
    at com.sun.javafx.sg.prism.NGGroup.renderForcedContent(NGGroup.java:198)
    at com.sun.javafx.sg.prism.NGGroup.renderForcedContent(NGGroup.java:198)

...

    at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1945)
    at com.sun.javafx.tk.quantum.ViewPainter.doPaint(ViewPainter.java:477)
    at com.sun.javafx.tk.quantum.ViewPainter.paintImpl(ViewPainter.java:330)
    at com.sun.javafx.tk.quantum.PresentingPainter.run(PresentingPainter.java:91)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
    at com.sun.javafx.tk.RenderJob.run(RenderJob.java:58)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:125)
    at java.lang.Thread.run(Thread.java:745)

The 500dpi image is here:

and the 600dpi image is here:

解决方案

I'm seeing the same thing you did. Unless you need to deal with complex scripts, I suggest you use the non-JavaFX version.

这篇关于jTessBoxEditorFX - 无法处理 600dpi .png 文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

07-23 11:10
查看更多