2013-05-03 71 views
0

过去,人们的程序通过简单地在文本文件中写入一些行就可以输出(封装)后记。要绘制一个'x'例如可以写手工制作pdf文件

%!PS 
%%BoundingBox: 0 0 100 100 
newpath 100 0 moveto 0 100 lineto stroke 
newpath 0 0 moveto 100 100 lineto stroke 
showpage 

是否有等效的方法来输出pdf?

编辑

请你提出一个不雅,定期,或奢华的方式来输出PDF文件。

一个不雅的方法将仍然通过eps。常规的一个将与上面的eps文本文件相似。豪华的方法将是一个舒适的API /库。

EDIT2

“常规”的解决方案是平台无关的,但既不是第一行也不是第三类别中的溶液是。所以让我澄清一下,我正在寻找一种在android上使用Java的解决方案。

+0

“是否有等价的方法” - 等同性如何?如果你知道语法,你显然可以写一个pdf文件。您是否在寻找可以转换为pdf格式的更简单的格式? – mbeckish 2013-05-03 14:30:42

+3

PDF格式在这里 - http://wwwimages.adobe.com/www.adobe.com/content/dam/Adobe/en/devnet/pdf/pdfs/pdf_reference_1-7.pdf – 2013-05-03 14:40:31

+0

我的Debian系统具有'epstopdf' 'texlive-extra-utils'软件包。某些版本的'pstopdf' /'ps2pdf'可能也适用。 – twalberg 2013-05-03 14:42:14

回答

0

那么如果我正确地理解了你,我可能会在我的一个Android应用程序中做类似的事情。

我为交互式调查问卷实施了一个领域特定语言,其结果以pdf格式提取。为了创建PDF,我使用了iText开源库。因此,您可以在dsl和PDF创建和操作库(如iText)之间创建dsl和api。但是,我不知道您是否对现成的解决方案感兴趣或者从头开始开发某些东西,所以我不确定这是否有帮助。

你可以在这里找到代码github以及dsl的更多细节(如语法等)。

这里是演示应用程序google play

+0

除了我在这里问的问题,我还在寻找一种设计,使它有可能不重复的代码 - 换句话说,这个设计让我可以在Android的画布上绘制图形,也可以使用相同的指令集在pdf上进行绘制。这不仅仅是懒惰,而且还有助于维护等。产生某种中级dsl的设计并不难。最难的部分是确保渲染在输出为Android画布时保持交互。 – Calaf 2013-05-03 17:45:49

1

正如您对您的问题的丰富评论所讨论的,ISO 32000-1标准为PDF文件格式can be found here。 (感谢@mkl更新的链接)。

它可能不是微不足道的,但通过使用本文档的最适合部分为您的应用程序创建PDF文件当然是可能的。

0

PDF不是一个简单的文本格式,所以它不是那么简单。但是,将Java PDF库集成到您的应用中并不困难,例如,请参阅iText