`

Java在PDF中添加水印(文本/图片水印)效果

阅读更多

水印是一种十分常用的防伪手段,常用于各种文档、资料等。常见的水印,包括文字类型的水印、图片或logo类型的水印。以下Java示例,将分别使用insertTextWatermark(PdfPageBase page, String watermark)方法以及page.SetBackgroundImage(String arg0)方法来设置文本水印和图片水印。下面将演示具体的代码操作,内容供参考。

 

工具:Free Spire.PDF for Java (免费版)

 

Jar文件获取及导入:

 方法1:通过官网下载jar文件包。下载后,解压文件,并将lib文件夹下的Spire.Pdf.jar文件导入到java程序。

 方法2:可提供maven仓库安装导入


 

Java代码示例(供参考)

 

【示例1】添加文本水印

 

import com.spire.pdf.*;
import com.spire.pdf.graphics.*;
import java.awt.*;
import java.awt.geom.*;

public class Textwatermark {
    public static void main(String[] args) {
        //创建PdfDocument类的对象
        PdfDocument pdf = new PdfDocument();
        //加载测试文档
        pdf.loadFromFile("test.pdf");
        
        //获取测试文档中的第一页
        PdfPageBase page = pdf.getPages().get(0);

        //调用insertWatermark()方法添加文本水印
        insertWatermark(page);

        //保存文档
        pdf.saveToFile("result.pdf");
    }
    static void insertWatermark(PdfPageBase page) {
        Dimension2D dimension2D = new Dimension();
        PdfTrueTypeFont font1 = new PdfTrueTypeFont(new Font("Arial Unicode MS", Font.PLAIN, 14), true);
        dimension2D.setSize(page.getCanvas().getClientSize().getWidth() / 5, page.getCanvas().getClientSize().getHeight() / 5);
        PdfTilingBrush brush = new PdfTilingBrush(dimension2D);
        brush.getGraphics().setTransparency(0.4F);
        brush.getGraphics().save();
        brush.getGraphics().translateTransform((float) brush.getSize().getWidth() / 4, (float) brush.getSize().getHeight() / 5);
        brush.getGraphics().rotateTransform(-45);
        brush.getGraphics().drawString("密件", font1, PdfBrushes.getViolet(), 0, 0, new PdfStringFormat(PdfTextAlignment.Center));
        brush.getGraphics().restore();
        brush.getGraphics().setTransparency(1);
        Rectangle2D loRect = new Rectangle2D.Float();
        loRect.setFrame(new Point2D.Float(0, 0), page.getCanvas().getClientSize());
        page.getCanvas().drawRectangle(brush, loRect);
    }
}

 

文本水印添加效果:


 

 

 

 

【示例2】添加图片水印

import com.spire.pdf.*;
import java.awt.geom.Rectangle2D;

public class watermark {

public static void main(String[] args) {

//实例化PdfDocument类的对象,并加载测试文档
PdfDocument doc = new PdfDocument();
doc.loadFromFile("test.pdf");

//获取文档第1页
PdfPageBase page = doc.getPages().get(0);

//加载图片,设置为背景水印
page.setBackgroundImage("logo.png");

//指定水印在文档中的位置及图片大小
Rectangle2D.Float rect = new Rectangle2D.Float();
rect.setRect(150, 150, 300, 150);
page.setBackgroundRegion(rect);

//保存文档
doc.saveToFile("output/imageWaterMark.pdf");
doc.close();
}
}

 

图片水印添加效果:


 

(本文完)

转载请注明出处!

 

  • 大小: 18.8 KB
  • 大小: 18.7 KB
  • 大小: 216.4 KB
  • 大小: 199.8 KB
  • 大小: 280.1 KB
0
0
分享到:
评论

相关推荐

    java操作wordpdf图片生成图片水印

    在生成图片水印的过程中,我们需要考虑以下几点: 1. **水印设计**:水印可以是文本(如日期、公司名称或“机密”等字样),也可以是图像。设计时需注意透明度设置,以确保不影响文档内容的可读性。 2. **定位与...

    java生成pdf文件分页输出并添加水印

    本篇文章将深入探讨如何利用Itext库在Java中实现PDF文件的分页输出以及添加水印的功能。 首先,我们需要引入Itext库。你可以通过Maven或Gradle在项目中添加依赖。对于Maven,可以在pom.xml文件中添加以下依赖: ``...

    java代码,给pdf文件加水印

    这段代码中,`addWatermark`方法接受源PDF文件路径、目标PDF文件路径和水印文本作为参数。它遍历每个页面,对每个页面添加水印,然后保存修改后的文档。 请注意,这只是一个基础示例,实际使用时可能需要根据具体...

    java导出pdf、加表格、加水印

    在Java开发中,导出PDF、添加表格以及加水印是常见的需求,这些功能可以用于创建报告、发票、证书等文档。PDF(Portable Document Format)是一种广泛应用的文档格式,能够跨平台保持一致的布局和样式。下面将详细...

    java 加水印 支持各种格式pdf doc 图片

    针对"java 加水印 支持各种格式pdf doc 图片"这个主题,我们将深入探讨如何在Java中为PDF、DOC文档以及图片添加水印。 首先,让我们来看PDF文件的水印处理。PDF文档由于其跨平台性和阅读体验,被广泛应用。在Java中...

    Java给图片加水印

    "Java给图片加水印"这个主题,就是关于如何利用Java技术在图片上添加标识或文字,以保护版权或者增强视觉效果。下面我们将深入探讨这个话题。 首先,我们需要了解Java中的图像处理库,如Java Advanced Imaging (JAI...

    Android系统下处理PDF文档的Java库-Spire.PDF for Android via Java_2.11.0.zip

    PDF 文档安全性设置,画文本、图片、形状、条形码到 PDF,提取 PDF 中的文本/图片,高亮/替换 PDF 文本,合并和拆分 PDF,创建和填充表单,添加页眉页脚到 PDF,添加或删除层,重叠 PDF 页面,添加文本/图片水印,...

    Java实现PDF文档添加水印信息.pptx.pptx

    在PDFBox中,可以使用`PDPageContentStream`类来添加文本水印,而在iText和OpenPDF中,也有相应的API方法来实现这一功能。 ### 04 保存带有水印的PDF文档 完成水印添加后,需要将带有水印的新PDF文档保存。这一步...

    Java 实现word文件增加图片水印 jacob实现 用到的jar

    总结,通过结合iTextPDF和Jacob这两个库,Java开发者可以在Word文档中添加图片水印,从而实现对文档的个性化定制和保护。这种方法需要对Java、COM组件以及Word API有一定的理解,但是一旦掌握,就可以灵活地处理各种...

    免费Android系统处理PDF文本的Java类库工具-Free Spire.PDF for Android via Java-2.12.0.zip

    PDF 文档安全性设置,画文本、图片、形状、条形码到 PDF,提取 PDF 中的文本/图片,高亮/替换 PDF 文本,合并和拆分 PDF,创建和填充表单,添加页眉页脚到 PDF,添加或删除层,重叠 PDF 页面,添加文本/图片水印,...

    Java 使用 poi 和 aspose 实现 word 模板数据写入并转换 pdf 增加水印

    在Java开发中,有时我们需要处理文档模板,将动态数据填入到Word模板中,并且可能还需要将处理后的Word文档转换为PDF格式,同时在PDF上添加水印。在这个场景下,`Apache POI`和`Aspose.Words for Java`是两个常用的...

    word转pdf加水印demo.zip

    本示例涉及的是将Word文档转换为PDF格式,并在生成的PDF上添加文字水印,这通常用于版权保护或定制化展示。以下是关于这个过程的详细说明。 首先,我们需要了解`aspose-words-15.8.0-jdk16.jar`这个库。Aspose....

    java pdf加水印后生成swf

    在这个过程中,开发者通常会使用Java库来操作PDF文档,添加水印,然后将处理后的PDF转换为SWF(Shockwave Flash)格式,以便在网络上传播或者进行交互式展示。下面将详细介绍这个过程中的关键知识点。 首先,我们...

    pdf添加水印实例工程

    通过学习和实践这个“pdf添加水印实例工程”,你不仅可以掌握PDF水印的添加技巧,还能提升在PDF文档处理方面的编程能力。同时,对于那些需要处理大量PDF文档的业务场景,如电子书籍、报告、合同等,这项技能将非常...

    简单的java添加水印效果

    在Java编程语言中,添加水印是一项常见的任务,特别是在处理图像或者PDF文档时。这个话题主要涉及两个核心概念:图像处理和图形用户界面(GUI)。本文将深入探讨如何使用Java来实现简单的水印添加功能,这可以应用于...

    java实现pdf文件的电子签字+盖章+防伪二维码+水印+PDF文件加密

    在iText中,你可以使用ColumnText类在PDF的每个页面上添加透明的文本或图像水印。这可以通过设置文本样式(如颜色、透明度、旋转角度等)来实现不同效果的水印。 **PDF文件加密** PDF加密可以保护文件不被未经授权...

    aspose实现word转pdf功能(去水印)

    在这个场景下,我们将关注如何使用Aspose在Java环境中实现Word文档转换为PDF,并且去除PDF中的水印。 首先,`aspose-words-20.1-jdk17.jar`是Aspose.Words for Java的库文件,它包含了处理Word文档和进行转换的所有...

    pdf文件生成加密,设置只读属性,添加水印的必要最新jar包6个包

    PDF文件在日常工作中被广泛应用,为了保护文档的安全性和防止未经授权的修改,经常需要对PDF进行加密、设置只读属性以及添加水印。本资源提供的6个jar包正是为实现这些功能而准备的,它们分别是itext-5.3系列的库和...

    htmltopdf.zip使用itext5将html转换为PDF并添加水印

    在该方法中,使用`ColumnText`类添加水印文本。 ```java class WatermarkEventListener extends PdfPageEventHelper { @Override public void onEndPage(PdfWriter writer, Document document) { ...

    java生成pdf工具类

    在Java开发中,生成PDF文档是一项常见的需求,用于制作报告、合同、发票等。Itext是一个流行的开源Java库,专门用于生成和修改PDF文档。这个工具类的创建可以帮助开发者更高效地实现PDF的生成,包括分页输出和添加...

Global site tag (gtag.js) - Google Analytics