Java 添加、隐藏/显示、删除PDF图层

如果你不相信努力和时光,那么成果就会是第一个选择辜负你的。不要去否定你自己的过去,也不要用你的过去牵扯你现在的努力和对未来的展望。不是因为拥有希望你才去努力,而是去努力了,你才有可能看到希望的光芒。Java 添加、隐藏/显示、删除PDF图层,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

本文介绍操作PDF图层的方法。可分为添加图层(包括添加线条、形状、字符串、图片等图层)、隐藏或显示图层、删除图层等。具体可参考如下Java代码示例。

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

Jar包下载和导入:可通过官网下载,下载后,解压,将lib文件夹下的Sprie.Pdf.jar导入Java程序;或者可通过Maven仓库下载导入。如下导入效果:

Java 添加、隐藏/显示、删除PDF图层

 

Java示例1:添加图层

import com.spire.pdf.*;
import com.spire.pdf.graphics.*;
import com.spire.pdf.graphics.PdfPen;
import com.spire.pdf.graphics.layer.PdfLayer;

import java.awt.*;
import java.awt.geom.Point2D;

public class Addlayer {
    public static void main(String[]args){
        //新建一个PDF文档,并添加一页
        PdfDocument pdf = new PdfDocument();
        pdf.getPages().add();

        //添加图层1为直线
        PdfLayer layer1 = pdf.getLayers().addLayer("线条");//添加图层并指定图层名称
        PdfCanvas canvas1 = layer1.createGraphics(pdf.getPages().get(0).getCanvas());
        canvas1.drawLine(new PdfPen(PdfBrushes.getRed(), 2.5), new Point2D.Float(0, 0), new Point2D.Float(150, 0));//绘制线条图层(指定直线首尾两点坐标,并应用画刷)

        //创建图层2为形状
        PdfLayer layer2 = pdf.getLayers().addLayer("椭圆");//添加图层并指定图层名称
        PdfCanvas canvas2 = layer2.createGraphics(pdf.getPages().get(0).getCanvas());
        PdfPen pen = new PdfPen( new PdfRGBColor(Color.black),2.5f);//创建画笔(指定画笔颜色、粗细)
        PdfBrush brush1 = new PdfSolidBrush(new PdfRGBColor(Color.PINK));//创建画刷1(设置画刷颜色为:粉色)
        canvas2.drawEllipse(pen, brush1, 65, 50, 80, 80);//绘制形状图层(绘制圆形到指定页面位置,并应用画笔、画刷)

        //创建图层3为文本字符串
        PdfLayer layer3 = pdf.getLayers().addLayer("字符串");//添加图层并指定图层名称
        PdfCanvas canvas3 = layer3.createGraphics(pdf.getPages().get(0).getCanvas());
        PdfTrueTypeFont font1= new PdfTrueTypeFont(new Font("Arial Unicode MS",Font.PLAIN,14),true);//创建字体
        PdfBrush brush2 = new PdfSolidBrush(new PdfRGBColor(Color.BLUE));//创建格式刷2(设置画刷颜色为:蓝色)
        canvas3.drawString("String String String", font1, brush2, 100, 150);//绘制字符串图层(指定字符串到指定页面位置,并应用字体、画刷)

        //创建图层4为图片
        PdfLayer layer4 = pdf.getLayers().addLayer("图片");//添加图层并指定图层名称
        PdfCanvas canvas4 = layer4.createGraphics(pdf.getPages().get(0).getCanvas());
        canvas4.drawImage(PdfImage.fromFile("tp.png"), 30, 190, 150, 135);//绘制图片图层(加载图片,绘制到指定页面位置并指定图片大小)

        //保存文档
        pdf.saveToFile("Addlayers.pdf",FileFormat.PDF);
        pdf.dispose();
    }

}

图层添加效果:

Java 添加、隐藏/显示、删除PDF图层

 

Java示例2:隐藏/显示图层

import com.spire.pdf.FileFormat;
import com.spire.pdf.PdfDocument;
import com.spire.pdf.graphics.layer.PdfVisibility;


public class HideOrShowLayer {
    public static void main(String[] args) {
        //加载文档
        PdfDocument pdf = new PdfDocument();
        pdf.loadFromFile("Addlayers.pdf");

        pdf.getLayers().get(0).setVisibility(PdfVisibility.Off);//设置图层隐藏
        //pdf.getLayers().get(2).setVisibility(PdfVisibility.On);//设置图层显示

        //保存文档
        pdf.saveToFile("HideOrShowLayer.pdf", FileFormat.PDF);
        pdf.dispose();
    }
}

图层隐藏/显示效果:

Java 添加、隐藏/显示、删除PDF图层

Java示例3:删除图层

import com.spire.pdf.*;

public class RemoveLayer {
    public static void main(String[] args) {
        //加载文档
        PdfDocument pdf = new PdfDocument();
        pdf.loadFromFile("Addlayers.pdf");

        //根据图层名称索引,删除图层
        pdf.getLayers().removeLayer("字符串");

        //保存文档
        pdf.saveToFile("RemoveLayer.pdf",FileFormat.PDF);
        pdf.dispose();
    }
}

图层删除效果:

Java 添加、隐藏/显示、删除PDF图层

 

(完)

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/209346.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!