提交 a65b9634 authored 作者: hzh's avatar hzh

水印修复

上级 039e2cc5
......@@ -123,8 +123,8 @@ public class WatermarkUtil {
File pdfOutputFile = FileUtil.touch(FileUtils.addFolderBeforeFileName(pdfFile.getPath(), "watermark"));
// 配置PDF水印参数
WatermarkConfig pdfConfig = new WatermarkConfig.Builder()
.watermarkText("测试水印PDF")
.fontName(getFontName(pdfFile.getPath(),"测试水印PDF"))
.watermarkText("测试水印")
.fontName(getFontName(pdfFile.getPath(),"测试水印"))
.fontSize(30)
.color(Color.RED)
.alpha(0.3f)
......
package org.dromara.common.core.utils.file.watermark.processor;
import cn.hutool.core.io.FileUtil;
import com.itextpdf.text.BaseColor;
import com.itextpdf.text.DocumentException;
import com.itextpdf.text.Element;
......@@ -134,14 +135,19 @@ public class PdfWatermarkProcessor implements WatermarkProcessor {
} else if (osName.contains("mac")) {
fontPath = "/Library/Fonts/" + fontName + ".ttf";
} else if (osName.contains("linux")) {
fontPath = "/usr/share/fonts/truetype/" + fontName + ".ttf";
// Linux下尝试多个路径
String[] paths = {
"/usr/share/fonts/truetype/" + fontName + ".ttf",
"/usr/share/fonts/opentype/" + fontName + ".ttf",
"/usr/local/share/fonts/" + fontName + ".ttf"
};
for (String path : paths) {
if (FileUtil.exist(path)) {
return path;
}
// 检查文件是否存在
if (fontPath != null && new File(fontPath).exists()) {
return fontPath;
}
return paths[0];
}
return null;
}
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论