java图片水印,java图片水印溯源

本文目录一览:

java怎么给word文档加水印

可以使用Free Spire.Doc for Java在word文档中添加文本水印或图片水印。Free Spire.Doc for Java下载链接:网页链接

1.添加文本水印——代码如下:

import com.spire.doc.*;

import com.spire.doc.documents.WatermarkLayout;

import java.awt.*;

public class WordTextWatermark {

public static void main(String[] args) {

Document document = new Document();

document.loadFromFile(“Sample.docx”);

insertTextWatermark(document.getSections().get(0));

}

private static void insertTextWatermark(Section section) {

TextWatermark txtWatermark = new TextWatermark();

txtWatermark.setText(“内部使用”);

txtWatermark.setFontSize(40);

txtWatermark.setColor(Color.red);

txtWatermark.setLayout(WatermarkLayout.Diagonal);

section.getDocument().setWatermark(txtWatermark);

}

}

2.添加图片水印——代码如下:

import com.spire.doc.*;

public class WordImageWatermark {

public static void main(String[] args)  throws Exception{

Document document = new Document();

document.loadFromFile(“Sample.docx”);

PictureWatermark picture = new PictureWatermark();

picture.setPicture(“logo.png”);

picture.setScaling(5);

picture.isWashout(false);

document.setWatermark(picture);

document.saveToFile(“out/result2.docx”,FileFormat.Docx )

}

}

java中打印的pdf怎么添加图片水印

添加水印可以参考使用控件来添加的方法,如下:

1. 添加单个图片水印效果:

import com.spire.pdf.*;

import java.awt.geom.Rectangle2D;

public class watermark {

public static void main(String[] args) {

//加载PDF文档

PdfDocument doc = new PdfDocument();

doc.loadFromFile(“C:\\Users\\Administrator\\Desktop\\Sample.pdf”);

//获取第一页

PdfPageBase page = doc.getPages().get(0);

//设置背景图片

page.setBackgroundImage(“C:\\Users\\Administrator\\Desktop\\logo.png”);

//设置背景区域

Rectangle2D.Float rect = new Rectangle2D.Float();

rect.setRect(280, 300, 150, 150);

page.setBackgroundRegion(rect);

//保存文档

doc.saveToFile(“output/imageWaterMark.pdf”);

doc.close();

}

}

2. 添加平铺图片水印效果

import com.spire.pdf.*;

import com.spire.pdf.graphics.PdfImage;

import com.spire.pdf.graphics.PdfTilingBrush;

import java.awt.*;

import java.awt.geom.Dimension2D;

import java.awt.geom.Rectangle2D;

public class AddBackground {

public static void main(String[] args) {

//创建PdfDocument对象,并加载PDF测试文档

PdfDocument pdf = new PdfDocument();

pdf.loadFromFile(“test.pdf”);

//遍历文档每一页,加载图片,并设置成平铺背景(水印)

for (int i = 0; i pdf.getPages().getCount();i++)

{

PdfPageBase page = pdf.getPages().get(i);

Dimension2D dimension2D = new Dimension();

dimension2D.setSize(page.getCanvas().getSize().getWidth()/4, page.getCanvas().getSize().getHeight()/3);

PdfTilingBrush brush = new PdfTilingBrush(dimension2D);

brush.getGraphics().setTransparency(0.2f);

     brush.getGraphics().translateTransform(brush.getSize().getWidth()/10,brush.getSize().getHeight()/10);

brush.getGraphics().rotateTransform(30);

PdfImage image = PdfImage.fromImage(“logo.png”);

brush.getGraphics().drawImage(image,brush.getSize().getWidth()-image.getWidth()/2,(brush.getSize().getHeight())/2);

Rectangle2D rectangle2D = new Rectangle2D.Float();

rectangle2D.setFrame(new Point(0,0),page.getCanvas().getClientSize());

page.getCanvas().drawRectangle(brush,rectangle2D);

}

//保存文档

pdf.saveToFile(“SetTiledBackground.pdf”);

pdf.dispose();

}

}

注:这里使用的是free Spire.Pdf.jar(以上代码参考自文章1、文章2)

java 如何给pdf文件加水印

可以使用Spire.PDF for Java通过Java来添加水印。

首先,您需要在 Java 程序中添加 Spire.Pdf.jar 文件作为依赖项。您可以从这个链接下载 JAR 文件;如果您使用 Maven,则可以通过在 pom.xml 文件中添加以下代码导入 JAR 文件。

repositories

repository

idcom.e-iceblue/id

url;/url

/repository/repositoriesdependencies

dependency

groupIde-iceblue/groupId

artifactIdspire.pdf/artifactId

version5.3.1/version

/dependency/dependencies

1.添加图片水印

代码如下:

import com.spire.pdf.*;

import java.awt.geom.Rectangle2D;

public class watermark {

public static void main(String[] args) {

//加载PDF文档

PdfDocument doc = new PdfDocument();

doc.loadFromFile(“C:\\Users\\Administrator\\Desktop\\Sample.pdf”);

//获取第一页

PdfPageBase page = doc.getPages().get(0);  

//设置背景图片

page.setBackgroundImage(“C:\\Users\\Administrator\\Desktop\\logo.png”);

//设置背景区域

Rectangle2D.Float rect = new Rectangle2D.Float();

rect.setRect(280, 300, 150, 150);

page.setBackgroundRegion(rect);

//保存文档

doc.saveToFile(“output/imageWaterMark.pdf”);

doc.close();

}

}

2.添加文本水印

代码如下:

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(“C:\\Users\\Administrator\\Desktop\\Sample.pdf”);

//获取第一页

PdfPageBase page = pdf.getPages().get(0);

//调用insertWatermark方法插入文本水印

insertWatermark(page, “E-ICEBLUE”);

//保存文档

pdf.saveToFile(“out/textWaterMark.pdf”);

}

static void insertWatermark(PdfPageBase page, String watermark) {

Dimension2D dimension2D = new Dimension();

dimension2D.setSize(page.getCanvas().getClientSize().getWidth() / 2, page.getCanvas().getClientSize().getHeight() / 3);

PdfTilingBrush brush = new PdfTilingBrush(dimension2D);

brush.getGraphics().setTransparency(0.3F);

brush.getGraphics().save();

brush.getGraphics().translateTransform((float) brush.getSize().getWidth() / 2, (float) brush.getSize().getHeight() / 2);

brush.getGraphics().rotateTransform(-45);

brush.getGraphics().drawString(watermark, new PdfFont(PdfFontFamily.Helvetica, 24), 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);

}

}

希望对您有帮助。

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/289604.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-12-24 03:03
下一篇 2024-12-24 03:03

相关推荐

  • Java JsonPath 效率优化指南

    本篇文章将深入探讨Java JsonPath的效率问题,并提供一些优化方案。 一、JsonPath 简介 JsonPath是一个可用于从JSON数据中获取信息的库。它提供了一种DS…

    编程 2025-04-29
  • java client.getacsresponse 编译报错解决方法

    java client.getacsresponse 编译报错是Java编程过程中常见的错误,常见的原因是代码的语法错误、类库依赖问题和编译环境的配置问题。下面将从多个方面进行分析…

    编程 2025-04-29
  • Java腾讯云音视频对接

    本文旨在从多个方面详细阐述Java腾讯云音视频对接,提供完整的代码示例。 一、腾讯云音视频介绍 腾讯云音视频服务(Cloud Tencent Real-Time Communica…

    编程 2025-04-29
  • Java Bean加载过程

    Java Bean加载过程涉及到类加载器、反射机制和Java虚拟机的执行过程。在本文中,将从这三个方面详细阐述Java Bean加载的过程。 一、类加载器 类加载器是Java虚拟机…

    编程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介绍

    本文将详细介绍Java Milvus SearchParam withoutFields的相关知识和用法。 一、什么是Java Milvus SearchParam without…

    编程 2025-04-29
  • 用Python绘制酷炫图片

    在本篇文章中,我们将展示如何使用Python绘制酷炫的图片。 一、安装Python绘图库 在使用Python绘制图片之前,我们需要先安装Python绘图库。Python有很多绘图库…

    编程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java语言中的一个版本,于2014年3月18日发布。本文将从多个方面对Java 8中某一周的周一进行详细的阐述。 一、数组处理 Java 8新特性之一是Stream…

    编程 2025-04-29
  • Java判断字符串是否存在多个

    本文将从以下几个方面详细阐述如何使用Java判断一个字符串中是否存在多个指定字符: 一、字符串遍历 字符串是Java编程中非常重要的一种数据类型。要判断字符串中是否存在多个指定字符…

    编程 2025-04-29
  • VSCode为什么无法运行Java

    解答:VSCode无法运行Java是因为默认情况下,VSCode并没有集成Java运行环境,需要手动添加Java运行环境或安装相关插件才能实现Java代码的编写、调试和运行。 一、…

    编程 2025-04-29
  • Java任务下发回滚系统的设计与实现

    本文将介绍一个Java任务下发回滚系统的设计与实现。该系统可以用于执行复杂的任务,包括可回滚的任务,及时恢复任务失败前的状态。系统使用Java语言进行开发,可以支持多种类型的任务。…

    编程 2025-04-29

发表回复

登录后才能评论