国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

pdf添加水印

這篇具有很好參考價(jià)值的文章主要介紹了pdf添加水印。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

給pdf文件添加水印

  1. 引入依賴
  <dependency>
            <groupId>com.itextpdf</groupId>
            <artifactId>itextpdf</artifactId>
            <version>5.5.13.3</version>
        </dependency>
  1. 添加水印
package com.it2.pdfdemo02.util;

import com.itextpdf.text.Element;
import com.itextpdf.text.Rectangle;
import com.itextpdf.text.pdf.*;

import java.io.FileOutputStream;

/**
 * @Description: PDF增加水印工具類
 */
public class PDFUtil {

    /**
     * 給PDF添加水印
     * @param inputFilePath 源文件
     * @param outputFilePath 生成的文件
     * @param waterMarkContent 添加水印的內(nèi)容
     */
    public static void pdfAddWaterMark(String inputFilePath, String outputFilePath, String waterMarkContent) {
        try {
            // 水印的高和寬
            int waterMarkHeight = 30;
            int watermarkWeight = 60;
            // 水印間隔距離
            int waterMarkInterval = 200;
            // 讀取PDF文件流
            PdfReader pdfReader = new PdfReader(inputFilePath);
            // 創(chuàng)建PDF文件的模板,可以對(duì)模板的內(nèi)容修改,重新生成新PDF文件
            PdfStamper pdfStamper = new PdfStamper(pdfReader, new FileOutputStream(outputFilePath));
            // 設(shè)置水印字體
            BaseFont baseFont = BaseFont.createFont("Font/SIMYOU.TTF", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED); //幼圓常規(guī)
            // 設(shè)置PDF內(nèi)容的Graphic State 圖形狀態(tài)
            PdfGState pdfGraPhicState = new PdfGState();
            // 填充透明度
            pdfGraPhicState.setFillOpacity(0.2f);
            // 輪廓不透明度
            pdfGraPhicState.setStrokeOpacity(0.4f);
            // PDF頁數(shù)
            int pdfPageNum = pdfReader.getNumberOfPages() + 1;
            // PDF文件內(nèi)容字節(jié)
            PdfContentByte pdfContent;
            // PDF頁面矩形區(qū)域
            Rectangle pageRectangle;
            for (int i = 1; i < pdfPageNum; i++) {
                // 獲取當(dāng)前頁面矩形區(qū)域
                pageRectangle = pdfReader.getPageSizeWithRotation(i);
                // 獲取當(dāng)前頁內(nèi)容,getOverContent表示之后會(huì)在頁面內(nèi)容的上方加水印
                pdfContent = pdfStamper.getOverContent(i);
                // 獲取當(dāng)前頁內(nèi)容,getOverContent表示之后會(huì)在頁面內(nèi)容的下方加水印
//                 pdfContent = pdfStamper.getUnderContent(i);
                pdfContent.saveState();
                // 設(shè)置水印透明度
                pdfContent.setGState(pdfGraPhicState);
                // 開啟寫入文本
                pdfContent.beginText();
                // 設(shè)置字體
                pdfContent.setFontAndSize(baseFont, 20);
                // 在高度和寬度維度每隔waterMarkInterval距離添加一個(gè)水印
                for (int height = waterMarkHeight; height < pageRectangle.getHeight(); height = height + waterMarkInterval) {
                    for (int width = watermarkWeight; width < pageRectangle.getWidth() + watermarkWeight;
                         width = width + waterMarkInterval) {
                        // 添加水印文字并旋轉(zhuǎn)30度角
                        pdfContent.showTextAligned(Element.ALIGN_LEFT, waterMarkContent, width - watermarkWeight,
                                height - waterMarkHeight, 30);
                    }
                }
                // 停止寫入文本
                pdfContent.endText();
            }
            pdfStamper.close();
            pdfReader.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
  1. 添加字體文件到resoures\Font\simsun.ttc

用到的字體文件(幼圓常規(guī),C盤Windows/Fonts目錄下
pdf添加水印,Java日記,pdf

pdf添加水印,Java日記,pdf

  1. 測(cè)試用例
    @Test
    void addWater() {
        PDFUtil.pdfAddWaterMark("D:\\test3\\test1.pdf", "D:\\test3\\test1_watermark.pdf", "內(nèi)部資料,禁止外傳");
    }

pdf添加水印,Java日記,pdf文章來源地址http://www.zghlxwxcb.cn/news/detail-733462.html

到了這里,關(guān)于pdf添加水印的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • SpringBoot 實(shí)現(xiàn) PDF 添加水印

    SpringBoot 實(shí)現(xiàn) PDF 添加水印

    PDF(Portable Document Format,便攜式文檔格式)是一種流行的文件格式,它可以在多個(gè)操作系統(tǒng)和應(yīng)用程序中進(jìn)行查看和打印。在某些情況下,我們需要對(duì) PDF 文件添加水印,以使其更具有辨識(shí)度或者保護(hù)其版權(quán)。本文將介紹如何使用 Spring Boot 來實(shí)現(xiàn) PDF 添加水印的方式。 PDFBox

    2024年02月09日
    瀏覽(31)
  • SpringBoot實(shí)現(xiàn)pdf添加水印

    SpringBoot實(shí)現(xiàn)pdf添加水印

    在某些情況下,我們需要對(duì) PDF 文件添加水印,以使其更具有辨識(shí)度或者保護(hù)其版權(quán)。本文將介紹幾種方案來實(shí)現(xiàn)PDF添加水印。 git地址:https://gitee.com/ninesuntec/pdf-add-watermark PDFBox 是一個(gè)流行的、免費(fèi)的、用 Java 編寫的庫,它可以用來創(chuàng)建、修改和提取 PDF 內(nèi)容。PDFBox 提供了許

    2024年02月13日
    瀏覽(22)
  • 使用PyMuPDF添加PDF水印

    使用PyMuPDF添加PDF水印

    使用Python添加PDF水印的博客文章。 C:pythoncodenewpdfwatermark.py 在日常工作中,我們經(jīng)常需要對(duì)PDF文件進(jìn)行處理。其中一項(xiàng)常見的需求是向PDF文件添加水印,以保護(hù)文件的版權(quán)或標(biāo)識(shí)文件的來源。本文將介紹如何使用Python編程語言和PyMuPDF庫在PDF文件中添加水印。 在開始之前,確

    2024年02月11日
    瀏覽(43)
  • SpringBoot 實(shí)現(xiàn) PDF 添加水印方案

    PDF(Portable Document Format,便攜式文檔格式)是一種流行的文件格式,它可以在多個(gè)操作系統(tǒng)和應(yīng)用程序中進(jìn)行查看和打印。在某些情況下,我們需要對(duì) PDF 文件添加水印,以使其更具有辨識(shí)度或者保護(hù)其版權(quán)。本文將介紹如何使用 Spring Boot 來實(shí)現(xiàn) PDF 添加水印的方式。 PDFBox

    2024年02月13日
    瀏覽(27)
  • Aspose.Pdf使用教程:在PDF文件中添加水印

    Aspose.PDF ?是一款高級(jí)PDF處理API,可以在跨平臺(tái)應(yīng)用程序中輕松生成,修改,轉(zhuǎn)換,呈現(xiàn),保護(hù)和打印文檔。無需使用Adobe Acrobat。此外,API提供壓縮選項(xiàng),表創(chuàng)建和處理,圖形和圖像功能,廣泛的超鏈接功能,圖章和水印任務(wù),擴(kuò)展的安全控件和自定義字體處理。本文將為你

    2024年02月01日
    瀏覽(22)
  • Flying HTML生成PDF添加水印

    HTML轉(zhuǎn)PDF并添加水印

    2024年01月22日
    瀏覽(25)
  • SpringBoot 之實(shí)現(xiàn) PDF 添加水印的方案

    SpringBoot 之實(shí)現(xiàn) PDF 添加水印的方案

    PDF(Portable Document Format,便攜式文檔格式)是一種流行的文件格式,它可以在多個(gè)操作系統(tǒng)和應(yīng)用程序中進(jìn)行查看和打印。在某些情況下,我們需要對(duì) PDF 文件添加水印,以使其更具有辨識(shí)度或者保護(hù)其版權(quán)。本文將介紹如何使用 Spring Boot 來實(shí)現(xiàn) PDF 添加水印的方式。 PDFBox

    2024年02月13日
    瀏覽(24)
  • 如何通過C++ 給PDF文檔添加文字水印

    如何通過C++ 給PDF文檔添加文字水印

    因PDF文檔具有較好的穩(wěn)定性和兼容性,現(xiàn)在越來越多的合同、研究論文、報(bào)告等都采用PDF格式。為了進(jìn)一步保護(hù)這些重要文檔內(nèi)容免受未經(jīng)授權(quán)的復(fù)制或使用,我們可以添加水印以表明其狀態(tài)、所有權(quán)或用途。針對(duì)工作中可能出現(xiàn)的在 C++ 應(yīng)用程序中給 PDF 文檔添加文字水印的

    2024年02月05日
    瀏覽(23)
  • 使用itext7為pdf文檔添加水印

    iText7是一款功能強(qiáng)大的開源PDF處理庫,用于創(chuàng)建、編輯和處理PDF文檔。相比于iTextSharp,iText7具有更先進(jìn)的功能和更好的性能。 添加水印是iText7的一個(gè)常見應(yīng)用場(chǎng)景。水印可以用于保護(hù)文檔的版權(quán),標(biāo)識(shí)文檔的狀態(tài)或來源等。使用iText7添加水印可以通過以下步驟實(shí)現(xiàn): 導(dǎo)入

    2024年04月22日
    瀏覽(27)
  • 基于pdfbox實(shí)現(xiàn)的pdf添加文字水印工具

    最近有個(gè)需求需要給pdf加文字水印,于是開始搜索大法,但是發(fā)現(xiàn)網(wǎng)絡(luò)上的代碼基本都是將字體文件直接放在jar包里面。個(gè)人強(qiáng)迫癥發(fā)作(手動(dòng)狗頭),想要像poi一樣直接加載系統(tǒng)字體,于是研究了一下午pdfbox的源代碼,發(fā)現(xiàn) FontFileFinder 類可以實(shí)現(xiàn)這個(gè)功能。廢話不多說,直

    2023年04月11日
    瀏覽(27)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包