วิธีลบลายน้ำออกจากไฟล์ PDF ใน Java

บทช่วยสอนฉบับย่อนี้จะแนะนำ วิธีลบลายน้ำออกจากไฟล์ PDF ใน Java โดยแบ่งปันรายละเอียดการกำหนดค่าและกระบวนการทีละขั้นตอนเพื่อทำงานให้สำเร็จ นอกจากนี้ยังมีโค้ดตัวอย่างที่เรียกใช้ได้เพื่อ ลบลายน้ำจาก PDF ในภาษาจาวา ซึ่งกระบวนการทั้งหมดจะแสดงในลักษณะง่ายๆ คุณจะได้เรียนรู้ขั้นตอนการเข้าถึงสิ่งประดิษฐ์ประเภทต่างๆ ที่นำเสนอในหน้า PDF

ขั้นตอนในการลบลายน้ำออกจาก PDF ใน Java

  1. ตั้งค่าสภาพแวดล้อมให้ใช้ Aspose.PDF for Java เพื่อลบลายน้ำ
  2. โหลดไฟล์ PDF เป้าหมายลงในวัตถุ Document ที่มีลายน้ำเล็กน้อย
  3. สร้างรายการเพื่อเก็บข้อมูลอ้างอิงของเป้าหมาย Artifacts ที่จะถูกลบ
  4. แยกวิเคราะห์หน้าทั้งหมดและคอลเลกชันสิ่งประดิษฐ์ที่เกี่ยวข้องเพื่อตรวจสอบลายน้ำ
  5. บันทึกสิ่งประดิษฐ์ลายน้ำทั้งหมดในรายการ
  6. ลบสิ่งประดิษฐ์ที่เลือกทั้งหมดและบันทึกไฟล์ PDF ที่เป็นผลลัพธ์

ขั้นตอนเหล่านี้อธิบายกระบวนการในการ ลบลายน้ำออกจากเอกสาร PDF ในภาษาจาวา โดยการแบ่งปันทรัพยากรที่จำเป็นในการเขียนแอปพลิเคชัน จากนั้นจึงแสดงโฟลว์โปรแกรมทีละขั้นตอนพร้อมกับการแนะนำคลาสที่สำคัญ ในกระบวนการนี้ เราต้องระบุส่วนที่มีลายน้ำทั้งหมดของแต่ละหน้า จากนั้นจึงลบออกในตอนท้าย เมื่อประมวลผลเพจทั้งหมดหรือที่เลือกแล้ว ไฟล์ PDF ที่เป็นผลลัพธ์จะถูกบันทึกลงในดิสก์

รหัสเพื่อลบลายน้ำทั้งหมดจาก PDF ใน Java

import com.aspose.pdf.Document;
import com.aspose.pdf.Artifact;
import com.aspose.pdf.License;
import com.aspose.pdf.Page;
import java.util.*;
public class AsposeTest {
public static void main(String[] args) throws Exception {//Main function to remove watermark from PDF file in Java
// Instantiate the license
License lic = new License();
lic.setLicense("Aspose.Total.lic");
// Load the PDF
Document document = new Document("watermark.pdf");
// Create a list
List<Artifact> artifactsToBeDeleted = new ArrayList<Artifact>();
// Iterate through the pages of the PDF
for (Page page : document.getPages())
{
// Iterate the artifacts of the current page
for (Artifact item : page.getArtifacts())
{
// Check for the watermark type artifacts
if (item.getSubtype() == Artifact.ArtifactSubtype.Watermark)
{
// Save reference of the artifact
artifactsToBeDeleted.add(item);
}
}
// Iterate the list of target artifacts
for (Artifact item : artifactsToBeDeleted)
{
// Delete the artifact
page.getArtifacts().delete(item);
}
}
// Save the output PDF
document.save("withoutWatermark.pdf");
System.out.println("Done");
}
}

รหัสนี้สาธิตขั้นตอนการ ลบลายน้ำพื้นหลังออกจาก PDF ใน Java มันใช้ getArtifacts() ของคลาส Page เพื่อเข้าถึงสิ่งประดิษฐ์ทั้งหมด แล้วทดสอบกับตัวแจงนับ Artifact.ArtifactSubtype.Watermark เพื่อลบ คุณยังสามารถดึงอาร์ติแฟกต์ประเภทอื่นๆ เช่น ส่วนหัว ส่วนท้าย และพื้นหลังสำหรับการดำเนินการต่างๆ

บทความนี้สอนให้เรา ลบลายน้ำจาก PDF ใน Java หากคุณสนใจที่จะเรียนรู้ขั้นตอนการเพิ่มลายน้ำ โปรดดูบทความใน วิธีเพิ่มลายน้ำใน PDF โดยใช้ Java

 ไทย