Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.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
创建格式化PNG';第'页;使用Java/Scala创建文档_Java_Image_Scala_Text_Typesetting - Fatal编程技术网

创建格式化PNG';第'页;使用Java/Scala创建文档

创建格式化PNG';第'页;使用Java/Scala创建文档,java,image,scala,text,typesetting,Java,Image,Scala,Text,Typesetting,我在scala.xml树中有一个文档(很容易转换成其他任何文件),我想将它转换成一系列PNG文件 例如,文档可能如下所示: <doc title="My Document" author="John Doe" created="1 July 1977" published="19 July 1799" > <section heading="An Analysis of Multiparticles"> <!-- Section 1 -->

我在
scala.xml
树中有一个文档(很容易转换成其他任何文件),我想将它转换成一系列PNG文件

例如,文档可能如下所示:

<doc
  title="My Document"
  author="John Doe"
  created="1 July 1977"
  published="19 July 1799"
>
  <section heading="An Analysis of Multiparticles"> <!-- Section 1 -->
    <p>Paragraph one goes here</p> <!-- INTRODUCTION! -->
    <p>Paragraph two goes here</p>
  </section>
  <section heading="Conclusion of Multiparticles"> <!-- Section 2 -->
    <p>Paragraph one goes here</p> <!-- INTRODUCTION! -->
    <p>Paragraph two goes here</p>
  </section>

</doc>

第一段如下

第二段在这里

第一段如下

第二段在这里

然后,我想将该文档转换成一个PNG,看起来像这样,减去合成词下的红线(我会提供格式规则、要使用的字体等):

而且,如果可能的话,更长的文档应该能够被“分页”成任意数量的PNG文件,这些文件在达到(比如)500px的高度或其他之后会流入下一个PNG文件

如果有一个现有的Java库/包可以完成这项工作的任何部分(或者一对组合起来完成这项工作),那就太好了!否则,我想知道我应该从哪里开始用Scala(最好)或Java编写一些东西来完成这项工作


谢谢

例如,我建议使用乳胶。在那里,您可以设置合适的页面大小,转换为PDF,将PDF分解为单独的页面,并将页面转换为所需大小的PNG


或者你真的需要整个东西成为一个在JVM下运行的程序吗?

我建议使用LaTeX,例如。在那里,您可以设置合适的页面大小,转换为PDF,将PDF分解为单独的页面,并将页面转换为所需大小的PNG

或者您真的需要整个程序在JVM下运行吗?

您想要使用这个库。这让您可以操作文档,生成PDF以及任何您想用它做的事情,非常高级、非常强大、非常Java。一旦你有了一个PDF,你就可以将它的内容导出到任何你想要的格式,在页面上有很多PDF->PNG选项

首页:

开发人员可以使用iText来:

* Serve PDF to a browser
* Generate dynamic documents from XML files or databases
* Use PDF's many interactive features
* Add bookmarks, page numbers, watermarks, etc.
* Split, concatenate, and manipulate PDF pages
* Automate filling out of PDF forms
* Add digital signatures to a PDF file
你想使用图书馆。这让您可以操作文档,生成PDF以及任何您想用它做的事情,非常高级、非常强大、非常Java。一旦你有了一个PDF,你就可以将它的内容导出到任何你想要的格式,在页面上有很多PDF->PNG选项

首页:

开发人员可以使用iText来:

* Serve PDF to a browser
* Generate dynamic documents from XML files or databases
* Use PDF's many interactive features
* Add bookmarks, page numbers, watermarks, etc.
* Split, concatenate, and manipulate PDF pages
* Automate filling out of PDF forms
* Add digital signatures to a PDF file

我建议改为PDF导出。其他人提到了iText:我已经开始为客户机(从Scala调用)使用iText。它似乎介于PDFBox的低级乏味和Jasper的高级报告之间。

我建议改为PDF导出。其他人提到了iText:我已经开始为客户机(从Scala调用)使用iText。它似乎介于PDFBox的低级乏味和高级Jasper报告之间。

您目前是否以任何其他方式呈现文档?例如,HTML或PDF?我目前可以以HTML呈现文档,不包括分页。您目前是否以任何其他方式呈现文档?例如,在HTML或PDF中?我现在可以在HTML中呈现它,不包括pagination.com。有很多真正强大的完全自动化的工具(特别是Linux),它们结合在一起,只需很少的努力就可以完全满足您的需要。有很多真正强大的完全自动化的工具(特别是Linux),它们一起以最小的努力完成您所需要的工作。