根据查询到的数据生成两个PDF,然后将两个PDF合并为一个PDF后转为base64编码,怎样才能在不生成本地临时文件的情况下完成操作呢
2条回答 默认 最新
nuclear2011 2021-07-21 10:48关注Maven依赖:
<repositories> <repository> <id>com.e-iceblue</id> <name>e-iceblue</name> <url>http://repo.e-iceblue.com/nexus/content/groups/public/</url> </repository> </repositories> <dependencies> <dependency> <groupId> e-iceblue </groupId> <artifactId>spire.pdf</artifactId> <version>4.6.8</version> </dependency> </dependencies>合并PDF到流:
import com.spire.pdf.PdfDocument; import com.spire.pdf.PdfDocumentBase; import java.io.ByteArrayOutputStream; public class MergePDFs { public static void main(String[] args) throws IOException { String[] files = new String[] { "C:\\Users\\Administrator\\Desktop\\1.pdf", "C:\\Users\\Administrator\\Desktop\\2.pdf", }; PdfDocumentBase pdf = PdfDocument.mergeFiles(files); //合并PDF文件,也可以传“流"参数 ByteArrayOutputStream bos = new ByteArrayOutputStream(); pdf.save(bos); //保存到流 //转为base 64 byte[] encoded=java.util.Base64.getEncoder().encode(bos.toByteArray()); //关闭流 bos.close(); } }评论 打赏 举报解决 2无用