`

Java 设置PDF平铺图片背景(水印)

阅读更多

一、概述及环境准备

本文介绍使用免费版PDF库-Free Spire.PDF for Java加载图片来设置成PDF平铺图片背景的效果,也可以作为平铺图片水印来使用;编辑代码前,需要先导入jar文件,有两种方法可供选着导入:

1. 手动下载导入:可前往官网下载jar包,并解压,将lib文件夹下的Spire.Pdf.jar文件导入Java程序;

2. Maven仓库导入:通过创建Maven项目,在pom.xml文件中配置Maven仓库路径并指定Free Spire.PDF for Java的Maven依赖,如下:

<repositories>
        <repository>
            <id>com.e-iceblue</id>
            <url>http://repo.e-iceblue.cn/repository/maven-public/</url>
        </repository>
    </repositories>

<dependencies>
    <dependency>
        <groupId> e-iceblue </groupId>
        <artifactId>spire.pdf.free</artifactId>
        <version>2.6.3</version>
    </dependency>
</dependencies>

 配置完成后,点击”Import Changes”即可导入Jar文件。(注:本文中使用的是IDEA,如果使用的是Eclipse,可参考导入方法

 

 

二、Java代码示例

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();
    }

}

 

(完)

0
1
分享到:
评论

相关推荐

    java图片加水印(适应铺满)

    开发一个项目,需要用到图片加水印的功能,这里考虑使用后台加水印,在上传的时候或者回显到页面时候,取图片文件的流数据,进行加水印在返回流数据就行了,非常简单,不懂可以问我

    java为多种文档(word ppt pdf excel)添加文本水印

    本教程将详细介绍如何使用Free Spire.Office for Java库为Word、PPT和PDF文档添加文本水印,以及如何利用Apache POI库为Excel文档实现相同功能。 1. **Free Spire.Office for Java** Free Spire.Office for Java是...

    itext5生成PDF(含水印文字及图片)

    itext5生成PDF(含水印文字及图片)的源代码,操作说明详细,代码完整可用。

    java使用IText导出PDF(包含图片、表格、文字等等Demo和依赖包)

    总结来说,IText是Java中一个强大且灵活的PDF生成库,通过它可以轻松地创建包含文字、图片和表格的PDF文档。通过理解并实践提供的Demo,你将能够熟练地运用IText进行PDF的生成工作。记住,持续学习和更新库的版本以...

    4.PHP使用插件Mpdf 给PDF文件加水印

    如果你需要添加图片水印,可以使用`SetWatermarkImage`方法,传入图片路径和透明度: ```php $mpdf-&gt;SetWatermarkImage('path/to/watermark.png', 0.2); // 图片水印,第二个参数是透明度 ``` 5. 读取和合并PDF ...

    Java通过POI和JXL给Excel动态添加水印

    ### Java通过POI和JXL给Excel动态添加水印 #### 概述 在实际工作中,经常需要对敏感或重要的Excel文件进行保护措施,比如添加水印。这不仅可以增加文档的专业性,还可以作为版权保护的一种手段。本文将详细介绍...

    淘宝素材 可爱复古田园风平铺背景素材 水印合集

    可爱复古田园风平铺背景素材 jpg格式 水印合集 psd格式

    jQuery图片平铺效果制作网页背景图片平铺代码

    在网页设计中,背景图片平铺是一种常见的视觉效果,它可以使网页看起来更加美观且具有个性化。jQuery库,作为JavaScript的一个强大扩展,提供了丰富的功能来实现动态的、交互式的网页元素,包括背景图片平铺效果的...

    如何用java给图片添加图片水印(透明度、旋转、居中)?

    * 给图片添加水印图片、可设置水印图片旋转角度 * * @param iconPath 水印图片路径 * @param srcImgPath 源图片路径 * @param location 水印图片位置 * @param degree 水印图片旋转角度 */ public

    背景图片平铺

    除了通过Java代码动态设置,还可以在XML资源文件中预定义背景图片的平铺模式。这种方式适用于那些固定的布局设计,可以减少运行时的计算量。示例如下: ```xml android:src="@drawable/img" android:tileMode=...

    html2canvas 网页对图片加水印

    2. **选择元素**:确定要添加水印的图片元素,并为其设置一个唯一的ID以便于JavaScript操作。例如: ```html ``` 3. **创建水印**:在JavaScript中,创建一个包含水印文本的HTML元素,比如`&lt;div&gt;`,并设置其...

    用CSS把背景图片平铺参考.pdf

    CSS背景图片平铺技术详解 在Web开发中,背景图片的平铺是非常常见的需求,今天我们将探讨使用CSS来实现背景图片的平铺。首先,我们需要了解背景图片平铺的基本概念,然后我们将详细讲解如何使用CSS来实现背景图片的...

    带背景的对话框,图片做CDialog的背景,可以平铺、拉伸、居中

    - 设置背景:在CDialog派生类的OnPaint()函数中,使用CDC类的DrawBitmap()方法来绘制背景图片,根据需要选择平铺、拉伸或居中模式。 - 处理窗口大小变化:重写OnSize()函数,当对话框大小改变时更新背景图片的绘制...

    图片批量加水印工具,可自由设置水印

    可自由选择添加文字水印、图片水印等格式,水印的大小、位置、旋转、透明度等都可自由设置,也可以将水印平铺于图片之上,更具有特色的是设置好的水印可保存,方便下次打开后即用,另外本工具还内置滤镜功能,也可以...

    java用图片作为窗口的背景

    在Java编程语言中,将图片设置为窗口的背景是一项常见的任务,特别是在开发图形用户界面(GUI)应用时。本文将详细讲解如何实现这一功能,并提供一个具体的实例代码——ImageTest.java,以及它所使用的背景图片1.JPG...

    PDF平铺导出数据,关于导出图片,表格的代码数据

    这里我们将讨论如何使用Java进行PDF平铺导出数据,包括图片和表格的处理。 首先,我们要理解PDF的结构。PDF文件是由一系列对象组成的,这些对象可以是文字、图像、注释等。为了操作这些对象,我们需要一个PDF库。在...

    html5 canvas实现给图片添加平铺水印

    在本例中,我们使用Canvas来实现在图片上添加平铺水印的功能。这个需求通常用于保护版权或者增加品牌标识。下面将详细解释实现这个功能的关键步骤和涉及的Canvas API。 1. **初始化Image对象**: `var img = new ...

    jQuery整屏背景平铺固定代码.zip

    标题中的“jQuery整屏背景平铺固定代码”指的是使用jQuery库实现的一种网页设计技术,它能使背景图片充满整个浏览器窗口,并且在窗口大小变化时自动调整,保持背景图像的平铺效果。这种技术通常用于创建视觉冲击力强...

    VBNET制作文字和图片的水印

    5. **添加图片水印**:若水印是图片,你需要先加载水印图片到另一个Bitmap对象,然后使用Graphics对象的DrawImage()方法,设置适当的透明度(通过ImageAttributes和ColorMatrix实现)和位置,将水印图片绘制到原始...

Global site tag (gtag.js) - Google Analytics