一、概述及环境准备

本文介绍使用免费版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,可参考导入方法

Jar导入效果如下:

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

平铺图片背景(水印)效果:

: 平铺文本水印效果可参考这篇文章。

(完)

Java 设置PDF平铺图片背景(水印)相关推荐

  1. java pdf水印排布问题_java实现图片和pdf添加铺满文字水印

    依赖jar包 com.itextpdf itextpdf 5.3.2 com.itextpdf itext-asian 5.2.0 一,图片添加铺满水印 ======================= ...

  2. CSS的背景属性设置(背景颜色、背景图片、背景平铺、背景附着、背景复合写法)

    文章目录 1 背景颜色 2 背景图片 3 背景平铺 4 背景图片位置 5 背景图像固定(背景附着) 6 背景复合写法 7 背景色半透明 8 背景总结 案例:五彩导航 通过CSS背景属性,可以给页面元素 ...

  3. Web前端,CSS中关于背景颜色、背景图片、背景平铺、背景位置、背景相关属性连写

    前言 持续总结输出中,今天分享的是Web前端,CSS中关于背景颜色.背景图片.背景平铺.背景位置.背景相关属性连写 1.背景颜色 background-color(bgc) 颜色取值: 关键字.rgb ...

  4. Css的背景(背景颜色、背景图片、背景平铺、背景图片位置、背景图像固定)

    通过css背景属性,可以给页面元素添加背景样式. 背景属性可以设置背景颜色.背景图片.背景平铺.背景图片位置.背景图像固定等. 背景颜色: Background-color:#******: < ...

  5. 黑马程序员前端-CSS背景:颜色、图片、平铺、背景图片位置、背景图像

    前端学习笔记教程不定期更新中,传送门: 前端HTML第一天:什么是网页?什么是HTML?网页怎么形成? 黑马程序员前端-CSS入门总结 黑马程序员前端-CSS之emmet语法 黑马程序员前端-CSS的 ...

  6. C# 处理PPT水印(三)—— 在PPT中添加多行(平铺)文本水印效果

    在PPT幻灯sql教程片中,可通过java基础教程添加形状python基础教程的方式,来实现c#教程类似水印的效vb.net教程果,可添加单一文本水印效果,即幻灯片中只有一个文本水印:也可以添加多行( ...

  7. Zxing系列之设置二维码图片背景透明教程

    继之前的博客:PDF文件添加二维码水印教程.图片添加二维码水印教程之后,对之前的添加二维码水印功能进行完善,之前的程序生成的二维码图片背景不是透明的,所以不是很美观,所以本博客对程序进行完善,对二维码 ...

  8. Android中实现平铺图片

    转载请标明出处:一片枫叶的专栏 最近开发App,美工设计了一个有锯齿边沿效果的背景图,只给了我一个锯齿,然后需要平铺展示锯齿效果: android中实现平铺图片有两种方式: (1)在drawable中 ...

  9. android平铺动画,Android实现平铺图片效果

    最近开发App,美工设计了一个有锯齿边沿效果的背景图,只给了我一个锯齿,然后需要平铺展示锯齿效果: android中实现平铺图片有两种方式: (1)在drawable中的drawable文件中定义平铺 ...

最新文章

  1. ehcache + spring 整合以及配置说明 ,附带整合问题 (已解决)
  2. VMware 虚拟化编程(5) — VixDiskLib 虚拟磁盘库详解之一
  3. python程序控制结构_python程序控制结构
  4. 隐藏帐户与隐藏权限的添加
  5. JS对象与jQuery对象
  6. python保存模型 特征_Pytorch提取模型特征向量保存至csv的例子
  7. 低代码工具让人人都是程序员?别再吐槽了,它能做这些事
  8. 定制适用于ARM平台的Ubuntu rootfs(根文件系统)
  9. 速修复!这个严重的Zlib内存损坏漏洞已存在17年!
  10. 微信小程序实质是什么? Hybrid App
  11. 学了python能干啥举例-Python主要用来做什么?
  12. php7.1 mysql_安装最新LAMP环境 (CentOS7+PHP7.1.5+Mysql5.7)
  13. 每天学习虚幻4(一)
  14. hp450 g8摄像头打开后黑屏
  15. shell 下 时间 的傻狍子
  16. Linux下tftp服务器/客户端安装
  17. 什么时候用到GDT?为什么要用GDT
  18. php启动后no input file specified.,no input file specified 三种解决方法
  19. 管晓宏院士谈工业数据共享和分类分级管理
  20. 又有12款APP违规收集用户信息,下架整改

热门文章

  1. vue向后台请求数据的配置和方法
  2. Android 系统语言切换监听和设置
  3. 梯形求积公式 和 复合梯形求积公式 Matlab 实现
  4. 数据结构:大学的数据统计
  5. Ubuntu 22.04 LTS 入门安装配置优化、开发软件安装一条龙
  6. 【远程连接控制】WinRM和SSH
  7. Django1.11.4 在前端显示图片
  8. sentinel滑动时间窗口算法学习
  9. matlab子图怎么分别legend,Matlab:带有sublegend的子图
  10. 鸿蒙之境法有三乘,神都夜行录