แยกรูปภาพ PDF

วิธีแยกรูปภาพ PDF โดยใช้ Cloud Java

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

API การแปลง PDF เป็น JPG

ในการแปลง PDF เป็น JPG หรือ JPG เป็น PDF ในแอปพลิเคชัน Java Aspose.PDF Cloud SDK for Java เป็นตัวเลือกที่ยอดเยี่ยม ในเวลาเดียวกัน มันยังช่วยให้คุณสามารถแยกรูปภาพจาก PDF แยกข้อความจาก PDF แยกไฟล์แนบออกจาก PDF รวมถึงมีตัวเลือกมากมายสำหรับการจัดการ PDF ดังนั้นในการนำคุณลักษณะนี้ไปใช้ในการบันทึกภาพ PDF ในแอปพลิเคชัน Java ก่อนอื่นเราต้องเพิ่มการอ้างอิง Cloud SDK ในโครงการของเรา ดังนั้นโปรดเพิ่มรายละเอียดต่อไปนี้ใน pom.xml ของโครงการประเภทการสร้าง maven

<repositories> 
    <repository>
        <id>aspose-cloud</id>
        <name>artifact.aspose-cloud-releases</name>
        <url>https://artifact.aspose.cloud/repo</url>
    </repository>   
</repositories>

<dependencies>
    <dependency>
        <groupId>com.aspose</groupId>
        <artifactId>aspose-pdf-cloud</artifactId>
        <version>21.11.0</version>
    </dependency>
</dependencies>

เมื่อเพิ่มข้อมูลอ้างอิง SDK แล้ว และคุณไม่มีบัญชีใดๆ บน Aspose Cloud โปรดสร้างบัญชีฟรีโดยใช้ที่อยู่อีเมลที่ถูกต้อง จากนั้นเข้าสู่ระบบโดยใช้บัญชีที่สร้างขึ้นใหม่และค้นหา/สร้างรหัสไคลเอ็นต์และรหัสลับไคลเอ็นต์ที่ Cloud Dashboard รายละเอียดเหล่านี้จำเป็นสำหรับวัตถุประสงค์ในการรับรองความถูกต้องในส่วนต่อไปนี้

แยกรูปภาพ PDF ใน Java

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

  • ก่อนอื่นเราต้องสร้างวัตถุ PdfApi ในขณะที่ระบุรหัสลูกค้าและความลับของไคลเอนต์เป็นอาร์กิวเมนต์
  • ประการที่สอง โหลดไฟล์ PDF อินพุตโดยใช้อินสแตนซ์ของไฟล์
  • อัปโหลดอินพุต PDF ไปยังที่เก็บข้อมูลบนคลาวด์โดยใช้เมธอด uploadFile(…)
  • เราจะใช้พารามิเตอร์ทางเลือกเพื่อกำหนดรายละเอียดความสูงและความกว้างสำหรับรูปภาพที่แยกออกมา
  • ในที่สุดก็เรียกใช้เมธอด putImagesExtractAsJpeg(…) ซึ่งรับชื่อ PDF, PageNumber เพื่อแยกรูปภาพ, ขนาดรูปภาพที่แยกออกมา และชื่อโฟลเดอร์บนที่เก็บข้อมูลบนคลาวด์เพื่อบันทึกรูปภาพที่แยกออกมา
try
    {
    // รับ ClientID และ ClientSecret จาก https://dashboard.aspose.cloud/
    String clientId = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
    String clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
	  
    // สร้างอินสแตนซ์ของ PdfApi
    PdfApi pdfApi = new PdfApi(clientSecret,clientId);

    // ชื่อของเอกสาร PDF ที่ป้อน
    String inputFile = "marketing.pdf";

    // อ่านเนื้อหาของไฟล์ PDF ที่ป้อน
    File file = new File("//Users//"+inputFile);
	    
    // อัปโหลด PDF ไปยังที่เก็บข้อมูลบนคลาวด์
    pdfApi.uploadFile("input.pdf", file, null);

    // หน้า PDF เพื่อแยกรูปภาพ
    int pageNumber =1;

    // ความกว้างสำหรับภาพที่แยกออกมา
    int width = 600;
    // ความสูงของภาพที่แยกออกมา
    int height = 800;
	    
    // โฟลเดอร์เพื่อบันทึกภาพที่แยกออกมา
    String folderName = "NewFolder";
	       
    // แยกรูปภาพ PDF และบันทึกบน Cloud Storage
    pdfApi.putImagesExtractAsJpeg(inputFile, pageNumber, width, height, null, null, folderName);
	    
    // พิมพ์ข้อความแสดงความสำเร็จ
    System.out.println("PDF images Successsuly extracted !");
    }catch(Exception ex)
    {
        System.out.println(ex);
    }
แยกตัวอย่างรูปภาพ PDF

Image1:- แยกตัวอย่างรูปภาพ PDF

ไฟล์ PDF ตัวอย่างที่ใช้ในตัวอย่างข้างต้นสามารถดาวน์โหลดได้จาก input.pdf

บันทึกภาพ PDF โดยใช้คำสั่ง cURL

ตอนนี้เราจะเรียก API สำหรับการดึงรูปภาพ PDF โดยใช้คำสั่ง cURL ตอนนี้เป็นข้อกำหนดเบื้องต้นสำหรับแนวทางนี้ ก่อนอื่นเราต้องสร้างโทเค็นการเข้าถึง JWT (ตามข้อมูลประจำตัวไคลเอ็นต์) ในขณะที่ดำเนินการคำสั่งต่อไปนี้

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bb959721-5780-4be6-be35-ff5c3a6aa4a2&client_secret=4d84d5f6584160cbd91dba1fe145db14" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

เมื่อเรามีโทเค็น JWT แล้ว โปรดดำเนินการคำสั่งต่อไปนี้เพื่อบันทึกภาพ PDF ในโฟลเดอร์แยกต่างหากบนที่เก็บข้อมูลบนคลาวด์

curl -X PUT "https://api.aspose.cloud/v3.0/pdf/input_file.pdf/pages/1/images/extract/jpeg?width=0&height=0&destFolder=NewFolder" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>"

บทสรุป

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

นอกจากนี้ เนื่องจาก Cloud SDK ทั้งหมดของเราได้รับการเผยแพร่ภายใต้ใบอนุญาต MIT ดังนั้นคุณอาจพิจารณาดาวน์โหลดซอร์สโค้ดทั้งหมดจาก GitHub และแก้ไขตามความต้องการของคุณ ในกรณีที่มีปัญหา คุณสามารถติดต่อเราเพื่อขอวิธีแก้ไขอย่างรวดเร็วผ่าน [ฟอรัมสนับสนุนผลิตภัณฑ์] ฟรี 9

บทความที่เกี่ยวข้อง

โปรดไปที่ลิงก์ต่อไปนี้เพื่อเรียนรู้เพิ่มเติมเกี่ยวกับ: