如何将包含图像的输入流转换为输入流,并将该图像转换为PDF格式?
通过以下方式使用MTOM(WS-project)接收Inputstream:
documentIdentification.getFile().getInputStream()
答案 0 :(得分:2)
有些想法可能有用而不是所有评论.. :)
冒着明显的风险,分步进行。例如......
使用avax.imageio.ImageIO
创建java.awt.image.BufferedImage
将其包裹为com.itextpdf.text.Image
将其嵌入com.itextpdf.text.PdfDocument
使用com.itextpdf.text.DocumentWriter
将com.itextpdf.text.PdfDocument
写入java.io.ByteArrayOutputStream
获取byte[]
并将其包装在java.io.ByteArrayInputStream
理论上可以在不缓冲内存中的映像的情况下进行转换,但现有的API不支持此操作。 (你可以用Java编写 lot 编码。最好是寻找一个独立的图像到pdf转换实用程序。)
您应该能够使用byte[]
/ PipedOutputStream
对来避开中间PipedInputStream
缓冲区。