Java에서 PDF에 텍스트 워터마크 추가
설치(2가지 방법)
방법 1: free library을 다운로드하고 압축을 풉니다. 그런 다음 Spire.Pdf.jar 파일을 종속성으로 프로젝트에 추가합니다.
방법 2: 다음 구성을 pom.xml에 추가하여 maven 프로젝트에 jar 종속성을 직접 추가합니다.
<repositories>
<repository>
<id>com.e-iceblue</id>
<name>e-iceblue</name>
<url>https://repo.e-iceblue.com/nexus/content/groups/public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.pdf.free</artifactId>
<version>5.1.0</version>
</dependency>
</dependencies>
샘플 코드
무료 Spire.PDF for Java는 PDF 파일에 워터마크를 추가하기 위한 직접적인 인터페이스나 클래스를 제공하지 않습니다. 그러나 PDF 페이지에 텍스트를 그리고 워터마크 효과를 모방하기 위해 텍스트에 투명도를 설정할 수 있습니다. 전체 샘플 코드는 아래와 같습니다.
import com.spire.pdf.*;
import com.spire.pdf.graphics.*;
import java.awt.*;
import java.lang.Math;
public class TextWatermark {
public static void main(String[] args) {
//create a PdfDocument instance
PdfDocument pdf = new PdfDocument();
//load the sample document
pdf.loadFromFile("E:\\Files\\template.pdf");
PdfPageBase page = pdf.getPages().get(0);
// Create a PdfTrueTypeFont object
PdfTrueTypeFont font = new PdfTrueTypeFont(new Font("Arial", Font.PLAIN, 50), true);
// Set the watermark text
String text = "CONFIDENTIAL";
// Measure the text size
// Calculate the values of two offset variables,
// which will be used to calculate the translation amount of the coordinate system
float offset1 = ((float) ((font.measureString(text).getWidth()
* (Math.sqrt(2) / 4))));
float offset2 = ((float) ((font.measureString(text).getHeight()
* (Math.sqrt(2) / 4))));
// Set the page transparency
page.getCanvas().setTransparency(0.5);
// Translate the coordinate system by specified coordinates
page.getCanvas().translateTransform(((page.getCanvas().getSize().getWidth() / 2)
- (offset1 - offset2)), ((page.getCanvas().getSize().getHeight() / 2)
+ (offset1 - offset2)));
// Rotate the coordinate system 45 degrees counterclockwise
page.getCanvas().rotateTransform(-45);
// Draw watermark text on the page
page.getCanvas().drawString(text, font, PdfBrushes.getDarkGray(), 0, 0);
// Save the changes to another file
pdf.saveToFile("TextWatermark.pdf");
}
}
Reference
이 문제에 관하여(Java에서 PDF에 텍스트 워터마크 추가), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/carlwils/add-text-watermarks-to-pdf-1e2k텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)