# changetopdf **Repository Path**: gdty/changetopdf ## Basic Information - **Project Name**: changetopdf - **Description**: 基于itext7+freemarker模板导出pdf,先生成html字符串再转成pdf,已解决中文问题,图片能正常显示 - **Primary Language**: Unknown - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-09-26 - **Last Updated**: 2025-09-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # changetopdf ## 📜介绍 基于iText7和Freemarker模板实现PDF导出功能。通过先生成HTML字符串再转换为PDF的方式,已解决中文显示问题,支持正常显示图片。 ## 📦安装指南 ``` gdteyu-maven public https://maven.cnb.cool/gdteyu/maven/-/packages/ true true com.gdty changetopdf xxx ``` ## 🔧 使用示例 ### HTML转PDF ``` FtlToPDFUtil pdfUtil = FtlToPDFUtil.getInstance("templates/"); pdfUtil.change("template.ftl", dataMap, "output.pdf"); ``` ### 直接生成PDF字节流 ``` FtlToPDFUtil pdfUtil = FtlToPDFUtil.getInstance("templates/"); ByteArrayOutputStream outputStream = new ByteArrayOutputStream(); pdfUtil.change("template.ftl", dataMap, outputStream); ``` ## 📁模板配置 支持多种模板加载方式: - 本地目录加载 - 类路径加载 - 多路径加载 ## 🖨️ 打印功能 提供直接打印PDF的功能: ``` ByteArrayOutputStream pdfStream = ...; // PDF内容流 Printer.printToDefaultPrinter(pdfStream); // 使用默认打印机 ``` ## 🔥更新日志 ### v1.1.0 - 正式版本上线 - 完善中文支持 - 稳定性优化 ## 📄字体支持 内置以下字体支持: - 微软雅黑系列(常规/加粗/轻量) - 宋体系列(常规/加粗) ## 🧪测试示例 包含完整测试用例: - `ChangeToPDFTest` - PDF转换测试 - `FreemarkPrintTest` - 模板打印测试 - `test1.ftl` - 测试模板文件 ## 📄许可证 请查看项目根目录的LICENSE文件