如何在 PDF 上应用自定义水印
IronPDF 可让您使用 HTML 字符串将自定义水印应用到 PDF 文档,并完全支持 CSS,允许出于品牌或安全目的完全自定义文本、图像、不透明度、旋转和定位。
快速入门:在 Java 中为 PDF 添加水印
1.导入 IronPdf 库并设置许可证密钥
- 使用
PdfDocument.fromFile()加载您的 PDF 文档
3.为您的水印(文本或图像)创建 HTML 字符串 - 使用
pdf.applyWatermark(watermarkHtml)添加水印 - 将带有水印的 PDF 文件保存为
pdf.saveAs()
```java :title=QuickStartWatermark.java PdfDocument pdf = PdfDocument.fromFile(Paths.get("sample.pdf")); pdf.applyWatermark(""); pdf.saveAs("watermarked.pdf");
水印可以保护 PDF 文档,并通过将其标记为 "机密 "或烙上徽标来申明其所有权或地位。 IronPdf 提供了灵活的解决方案,使用 HTML 字符串并完全支持 CSS。 这样就可以通过标准 HTML 和 CSS 属性进行完全定制。
本指南演示了不同的水印类型--文本、图像、位置、不透明度和旋转调整--以及使用 [TextStamper](https://ironpdf.com/java/object-reference/api/com/ironsoftware/ironpdf/stamp/TextStamper.html) 和 [ImageStamper](https://ironpdf.com/java/object-reference/api/com/ironsoftware/ironpdf/stamp/ImageStamper.html) 的高级方法。 如需了解更多 PDF 操作技术,请浏览我们的[创建 PDF](https://ironpdf.com/java/how-to/java-create-pdf-tutorial/) 指南或了解[添加背景和前景](https://ironpdf.com/java/how-to/background-foreground/)。
<div class="hsg-featured-snippet">
<h3>如何在 Java 中应用水印</h3>
<ol>
<li><a class="js-modal-open" data-modal-id="download-modal" href="#download-modal">下载将水印应用到 PDF 的 Java 库</a>。</li>
<li>渲染一个新 PDF 或加载一个已有的</li>
<li>配置要用作水印的 HTML 字符串或图像</li>
<li>使用适当的方法应用水印</li>
<li>根据需要调整不透明度、旋转和位置参数</li>
</ol>
</div>
## 如何在 PDF 上应用文本水印?
要向 PDF 文档添加简单的文本水印,请使用 `applyWatermark` 方法。 该方法接受使用 HTML 和 CSS 进行高级样式设计的文本。 例如,在 PDF 中添加红色 "机密 "字样。 这种技术可将文件标记为内部使用或表示保密状态。 HTML 方法通过 CSS 属性提供了灵活性,包括自定义字体、颜色、大小和文本效果。
```java
import java.io.IOException;
import java.nio.file.Paths;
import com.ironsoftware.ironpdf.License;
import com.ironsoftware.ironpdf.PdfDocument;
public class Main {
public static void main(String[] args) throws IOException {
// Set the license key for IronPDF
License.setLicenseKey("IRONPDF-MYLICENSE-KEY-1EF01");
// Load an existing PDF document from file
PdfDocument pdf = PdfDocument.fromFile(Paths.get("sample.pdf"));
// HTML string for watermark
String watermarkHtml = "<h1 style='color:red;'>Confidential</h1>";
// Apply the watermark using HTML string
pdf.applyWatermark(watermarkHtml);
// Save the PDF to a new file
pdf.saveAs("text_watermark.pdf");
}
}
代码演示了基本实现。 首先,配置您的 IronPDF 许可证 以访问所有功能。 水印 HTML 接受任何有效的 HTML 元素和 CSS 样式,以便完全控制外观。
文本水印看起来像什么?
生成的 PDF 文件 'text_watermark.pdf'在所有页面上都包含指定的水印,并在文档中心位置以红色显示文本 '机密'。 默认情况下,水印的不透明度为 50%,以保持可读性,同时确保可视性。
对于复杂的文本格式,请浏览我们的 HTML 到 PDF 转换指南,其中涵盖了适用于水印的高级 HTML 渲染技术。
如何添加图像作为水印?
使用同样的方法,将图像用作水印,支持的格式包括 PNG、JPEG、SVG 等。 在 HTML 字符串中使用 CSS 设置图片的样式和位置。 该功能可在文档中添加公司徽标、认证印章或品牌元素。 确保图像可从应用程序的运行环境中访问。
import java.io.IOException;
import java.nio.file.Paths;
import com.ironsoftware.ironpdf.License;
import com.ironsoftware.ironpdf.PdfDocument;
public class Main {
public static void main(String[] args) throws IOException {
// Set the license key for IronPDF
License.setLicenseKey("IRONPDF-MYLICENSE-KEY-1EF01");
// Load an existing PDF document from file
PdfDocument pdf = PdfDocument.fromFile(Paths.get("sample.pdf"));
// Image HTML watermark
String watermarkHtml = "<img src='logo.png' style='width:100px;'/>";
// Apply the image watermark
pdf.applyWatermark(watermarkHtml);
// Save the PDF to a new file
pdf.saveAs("image_watermark.pdf");
}
}
import java.io.IOException;
import java.nio.file.Paths;
import com.ironsoftware.ironpdf.License;
import com.ironsoftware.ironpdf.PdfDocument;
public class Main {
public static void main(String[] args) throws IOException {
// Set the license key for IronPDF
License.setLicenseKey("IRONPDF-MYLICENSE-KEY-1EF01");
// Load an existing PDF document from file
PdfDocument pdf = PdfDocument.fromFile(Paths.get("sample.pdf"));
// Image HTML watermark
String watermarkHtml = "<img src='logo.png' style='width:100px;'/>";
// Apply the image watermark
pdf.applyWatermark(watermarkHtml);
// Save the PDF to a new file
pdf.saveAs("image_watermark.pdf");
}
}
使用 CSS 属性对图像水印进行高级样式设计:
// Example with more advanced CSS styling
String advancedWatermarkHtml = "<img src='logo.png' style='width:150px; opacity:0.5; transform:rotate(-45deg);'/>";
// Example with more advanced CSS styling
String advancedWatermarkHtml = "<img src='logo.png' style='width:150px; opacity:0.5; transform:rotate(-45deg);'/>";
图像水印支持哪些文件格式?
生成的 PDF 文件 'image_watermark.pdf'包含图像 'logo.png',作为所有页面的水印。 图片显示宽度为 100 像素。 IronPDF 支持的格式包括 PNG、JPEG、GIF、SVG 和 BMP。使用具有透明背景的 PNG 图像作为徽标水印。 要从现有 PDF 中提取图像,请参阅我们的从 PDF 中提取图像指南。
如何调整水印的不透明度和位置?
通过调整不透明度和应用旋转功能自定义水印外观。 applyWatermark 方法接受这两个属性作为参数。 对这些设置进行微调,以确保水印的可视性,同时不遮挡文档内容。 不透明度范围从 0(透明)到 100(不透明),其中 20-40 为最佳平衡。
import java.io.IOException;
import java.nio.file.Paths;
import com.ironsoftware.ironpdf.License;
import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.stamp.HorizontalAlignment;
import com.ironsoftware.ironpdf.stamp.VerticalAlignment;
public class Main {
public static void main(String[] args) throws IOException {
// Set the license key for IronPDF
License.setLicenseKey("IRONPDF-MYLICENSE-KEY-1EF01");
// Load an existing PDF document from file
PdfDocument pdf = PdfDocument.fromFile(Paths.get("sample.pdf"));
// HTML string for watermark
String watermarkHtml = "<h1 style='color:blue;'>Confidential</h1>";
// Apply the HTML watermark with 30% opacity, positioned at the top-left corner of each page
pdf.applyWatermark(watermarkHtml, 30, VerticalAlignment.TOP, HorizontalAlignment.LEFT);
// Save the PDF to a new file
pdf.saveAs("watermark_opacity_rotation.pdf");
}
}
import java.io.IOException;
import java.nio.file.Paths;
import com.ironsoftware.ironpdf.License;
import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.stamp.HorizontalAlignment;
import com.ironsoftware.ironpdf.stamp.VerticalAlignment;
public class Main {
public static void main(String[] args) throws IOException {
// Set the license key for IronPDF
License.setLicenseKey("IRONPDF-MYLICENSE-KEY-1EF01");
// Load an existing PDF document from file
PdfDocument pdf = PdfDocument.fromFile(Paths.get("sample.pdf"));
// HTML string for watermark
String watermarkHtml = "<h1 style='color:blue;'>Confidential</h1>";
// Apply the HTML watermark with 30% opacity, positioned at the top-left corner of each page
pdf.applyWatermark(watermarkHtml, 30, VerticalAlignment.TOP, HorizontalAlignment.LEFT);
// Save the PDF to a new file
pdf.saveAs("watermark_opacity_rotation.pdf");
}
}
对于复杂的定位,可将水印与其他盖章功能结合起来。 在我们的背景和前景指南中了解更多信息。
有哪些对齐选项?
applyWatermark 方法使用以下选项将基于 HTML 的水印应用于所有 PDF 页面:
-不透明度:应用 30% 不透明度以实现部分透明
-垂直对齐:与页面对齐 TOP。 选项包括
- 顶部:页面顶部的水印
- MIDDLE:页面中间的水印
- BOTTOM:页面底部的水印
-水平对齐:与页面对齐
LEFT。 选项包括 - 左:左侧水印
- 中心:水印位于中心
- 右侧:右侧水印
结合对齐选项可实现九种定位配置,在不与关键内容重叠的情况下精确放置水印。 对于需要在不同位置打上多个水印或印章的文档,请探索我们的注释功能。
常见问题解答
如何在 Java 中为 PDF 添加文本水印?
您可以使用 IronPDF 的 applyWatermark 方法添加文本水印。只需使用 PdfDocument.fromFile() 加载 PDF 文档,然后调用 pdf.applyWatermark() 添加文本即可。该方法接受 HTML 字符串,允许您使用 CSS 属性(如颜色、字体和大小)设置水印样式。
我可以用图片代替文字作为水印吗?
是的,IronPDF 支持图片水印。您可以在传递给 applyWatermark 方法的 HTML 字符串中嵌入图像,也可以使用 ImageStamper 类来实现更高级的图像水印,并对位置和不透明度进行精确控制。
如何控制水印的不透明度?
IronPDF 允许您通过 HTML 字符串中的 CSS 属性控制水印的不透明度。您可以使用 CSS 不透明度属性(值从 0 到 1)设置不透明度,或使用 RGBA 颜色值来设置文本透明度。
我能否将水印旋转到页面的对角线上?
是的,您可以使用 HTML 字符串中的 CSS 变换属性旋转水印。IronPDF 的水印功能支持完整的 CSS3 变换,包括任意角度的旋转,以创建对角线或有角度的水印。
使用 applyWatermark 和 TextStamper 有什么区别?
applyWatermark 方法较为简单,使用 HTML/CSS 进行样式设计,而 TextStamper 可对文本定位、旋转和不透明度进行更多编程控制。当你需要精确放置或动态生成水印时,TextStamper 是理想之选。
如何在页面的特定位置放置水印?
IronPDF 通过 CSS 在 HTML 水印中的绝对定位提供灵活的定位,您也可以使用 TextStamper 和 ImageStamper 类,它们提供基于坐标的定位,可在 PDF 页面上精确定位。
能否在不同页面添加不同的水印?
是的,IronPDF 支持特定页面水印。您可以使用 stamper 类(TextStamper 或 ImageStamper)将水印应用于 PDF 文档中的特定页面范围或单个页面。
是否可以在同一个PDF中添加文本和图像水印?
当然可以。IronPDF 允许在同一文档上添加多个水印。您可以将文本水印和图像水印结合在一起,既可以将二者包含在一个 HTML 字符串中,也可以使用多个水印操作将二者分开应用。

