แบบฟอร์ม PDF เป็นประเภทไฟล์ที่นิยมใช้กัน โดยคุณสามารถป้อนข้อมูล เลือกไอเท็มจากกล่องดร็อปดาวน์ และเลือกช่องทำเครื่องหมายตามต้องการได้ ปัจจุบัน PDF รองรับสองวิธีที่แตกต่างกันในการผสานรวมข้อมูลและแบบฟอร์ม PDF ได้แก่ AcroForms (เรียกอีกอย่างว่าแบบฟอร์ม Acrobat) และแบบฟอร์ม XML Forms Architecture (XFA) ในการกรอกแบบฟอร์ม คุณสามารถกรอกแบบฟอร์มออนไลน์หรือบันทึกสำเนาของแบบฟอร์มไว้ในคอมพิวเตอร์ของคุณแล้วใช้ Adobe Acrobat Reader เพื่อกรอกแบบฟอร์ม เมื่อกรอกแบบฟอร์มเสร็จแล้ว คุณอาจสนใจที่จะใช้ข้อมูลที่กรอกไว้ในเอกสาร และเพื่อจุดประสงค์นี้ คุณอาจต้องส่งออกเป็นรูปแบบ XML, FDF และ XFDF ในบทความนี้ เราจะมาพูดถึงรายละเอียดเกี่ยวกับวิธีการส่งออก PDF ไปยัง XML โดยใช้โปรแกรม Python รวมถึงรูปแบบอื่นๆ ที่รองรับ

API การประมวลผล PDF

Aspose.PDF Cloud เป็น REST API ที่ได้รับรางวัลซึ่งมอบความสามารถในการสร้าง แก้ไข และแปลงไฟล์รูปแบบต่างๆ ไปเป็นรูปแบบ PDF ในเวลาเดียวกัน ยังรองรับคุณสมบัติในการส่งออกไฟล์ PDF เป็น XLSX, PPTX, DOCX, EPUB, HTML เป็นต้น และ รูปแบบที่รองรับ อื่นๆ อีกมากมาย

นอกจากนี้ยังช่วยให้คุณสามารถทำงานกับแบบฟอร์ม PDF โดยที่คุณสามารถ:

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

ตอนนี้เพื่อนำความสามารถในการประมวลผล PDF ไปใช้งานในแอปพลิเคชัน Python เราได้สร้าง Aspose.PDF Cloud SDK for Python ซึ่งเป็นโปรแกรมห่อหุ้ม Aspose.PDF Cloud ดังนั้น เมื่อใช้ SDK นี้ คุณจะได้รับความสามารถในการประมวลผล PDF ทั้งหมดในแอปพลิเคชัน Python ของคุณ ตอนนี้เพื่อเริ่มต้นใช้งาน SDK นี้ ขั้นตอนแรกคือการติดตั้ง SDK พร้อมให้ดาวน์โหลดฟรีที่ PIP และที่เก็บ GitHub เพียงเรียกใช้คำสั่งต่อไปนี้บนเทอร์มินัล/พรอมต์คำสั่งเพื่อติดตั้ง SDK เวอร์ชันล่าสุดบนระบบ

pip install asposepdfcloud

บัญชีแดชบอร์ดคลาวด์ฟรี

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

ข้อมูลประจำตัวลูกค้า

ภาพที่ 1: ข้อมูลประจำตัวลูกค้าบนแผงควบคุม Aspose.Cloud

ส่งออก PDF เป็น XML โดยใช้ Python

โปรดปฏิบัติตามคำแนะนำที่ระบุไว้ด้านล่างเพื่อส่งออก PDF เป็น XML โดยใช้ Python เราได้จัดเตรียม API ไว้สองรายการเพื่อให้บรรลุข้อกำหนดนี้

| API | ประเภท | URL | คำอธิบาย |


| /pdf/{name}/export/xml | GET | GetExportFieldsFromPdfToXmlInStorage | ส่งออกฟิลด์จาก PDF ในที่จัดเก็บไปยังไฟล์ XML |

| /pdf/{name}/export/xml | PUT | PutExportFieldsFromPdfToXmlInStorage | ส่งออกฟิลด์จาก PDF ในที่จัดเก็บไปยังไฟล์ XML ในที่จัดเก็บ |

  • ขั้นแรก ให้สร้างอินสแตนซ์ของคลาส ApiClient โดยระบุรหัสไคลเอนต์และรหัสลับไคลเอนต์เป็นอาร์กิวเมนต์
  • ประการที่สอง สร้างอินสแตนซ์ของคลาส PdfApi ซึ่งรับ ApiClient เป็นอาร์กิวเมนต์อินพุต
  • ตอนนี้เรียกใช้เมธอด putexportfieldsfrompdftoxmlinstorage(..) เพื่อส่งออกข้อมูลแบบฟอร์ม PDF ไปยัง XML และบันทึกไฟล์ผลลัพธ์ไปยังที่เก็บข้อมูลบนคลาวด์
def exportPDFtoXML():
    try:
        #Client credentials
        client_secret = "1c9379bb7d701c26cc87e741a29987bb"
        client_id = "bbf94a2c-6d7e-4020-b4d2-b9809741374e"

        #initialize PdfApi client instance using client credetials
        pdf_api_client = asposepdfcloud.api_client.ApiClient(client_secret, client_id)

        # สร้างอินสแตนซ์ PdfApi ขณะส่ง PdfApiClient เป็นอาร์กิวเมนต์
        pdf_api = PdfApi(pdf_api_client)

        # แหล่งที่มาไฟล์ PDF
        input_file = 'FormData-Filled.pdf'

        # ชื่อ XML ที่เป็นผลลัพธ์
        outputXML = 'exportedData.xml'
        
        # ส่งออกข้อมูลแบบฟอร์ม PDF ไปยัง XML และบันทึกผลลัพธ์ในที่จัดเก็บข้อมูลบนคลาวด์
        response = pdf_api.put_export_fields_from_pdf_to_xml_in_storage(name = input_file, xml_output_file_path=outputXML)
        
        # พิมพ์คำตอบบนคอนโซล
        print(response)
        
        # พิมพ์ข้อความในคอนโซล (ทางเลือก)
        print('PDF Form data successfully exported to XML !')    
    except ApiException as e:
        print("Exception while calling PdfApi: {0}".format(e))
        print("Code:" + str(e.code))
        print("Message:" + e.message)
ดูตัวอย่างการส่งออก PDF เป็น XML

ภาพที่ 2: ข้อมูล PDF ที่ส่งออกเป็น XML

ส่งออก PDF ไปยัง FDF โดยใช้ Python

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

  • สร้างอินสแตนซ์ของคลาส ApiClient โดยระบุรหัสไคลเอนต์และรหัสลับไคลเอนต์เป็นอาร์กิวเมนต์
  • ตอนนี้สร้างอินสแตนซ์ของคลาส PdfApi ซึ่งรับ ApiClient เป็นอาร์กิวเมนต์อินพุต
  • ในที่สุด เรียกใช้เมธอด putexportfieldsfrompdftofdfinstorage(..) เพื่อส่งออกข้อมูลแบบฟอร์ม PDF ไปยัง FDF และบันทึกไฟล์ผลลัพธ์ไปยังที่เก็บข้อมูลบนคลาวด์
def exportPDFtoFDF():
    try:
        #Client credentials
        client_secret = "1c9379bb7d701c26cc87e741a29987bb"
        client_id = "bbf94a2c-6d7e-4020-b4d2-b9809741374e"

        #initialize PdfApi client instance using client credetials
        pdf_api_client = asposepdfcloud.api_client.ApiClient(client_secret, client_id)

        # สร้างอินสแตนซ์ PdfApi ขณะส่ง PdfApiClient เป็นอาร์กิวเมนต์
        pdf_api = PdfApi(pdf_api_client)

        # แหล่งที่มาไฟล์ PDF
        input_file = 'FormData-Filled.pdf'

        # ชื่อ FDF ที่ได้
        outputFDF = 'exportedData.fdf'
        
        # ส่งออกข้อมูลแบบฟอร์ม PDF ไปยัง FDF และบันทึกผลลัพธ์ในที่เก็บข้อมูลบนคลาวด์
        response = pdf_api.put_export_fields_from_pdf_to_fdf_in_storage(name = input_file, fdf_output_file_path=outputFDF)
        
        # พิมพ์คำตอบบนคอนโซล
        print(response)
        
        # พิมพ์ข้อความในคอนโซล (ทางเลือก)
        print('PDF Form data successfully exported to FDF !')    
    except ApiException as e:
        print("Exception while calling PdfApi: {0}".format(e))
        print("Code:" + str(e.code))
        print("Message:" + e.message)

โปรดไปที่ลิงก์ต่อไปนี้เพื่อดาวน์โหลดแหล่งที่มา FormData-Filled.pdf และไฟล์ที่ส่งออก exportedData.fdf

ส่งออก PDF ไปยัง XFDF โดยใช้ Python

ไฟล์ XFDF เป็นไฟล์ Acrobat Forms Document ที่จัดเก็บข้อมูลที่ไฟล์ PDF ใช้ได้ ดังนั้นไฟล์ XFDF จึงแทรกข้อมูลดังกล่าวลงใน PDF โดยตรง ดังนั้น เราอาจจำเป็นต้องส่งออกข้อมูลจากแบบฟอร์ม PDF หนึ่งและกรอกข้อมูลลงในแบบฟอร์ม PDF อื่นๆ ดังนั้น ในส่วนนี้ เราจะมาพูดถึงขั้นตอนการส่งออกข้อมูลแบบฟอร์ม PDF ไปยังรูปแบบ XFDF

  • สร้างอินสแตนซ์ของคลาส ApiClient โดยระบุรหัสไคลเอนต์และรหัสลับไคลเอนต์เป็นอาร์กิวเมนต์
  • ตอนนี้สร้างอินสแตนซ์ของคลาส PdfApi ซึ่งรับ ApiClient เป็นอาร์กิวเมนต์อินพุต
  • ในที่สุด เรียกใช้เมธอด putexportfieldsfrompdftoxfdfinstorage(..) เพื่อส่งออกข้อมูลแบบฟอร์ม PDF ไปยัง XFDF และบันทึกไฟล์ผลลัพธ์ไปยังที่เก็บข้อมูลบนคลาวด์
def exportPDFtoXFDF():
    try:
        #Client credentials
        client_secret = "1c9379bb7d701c26cc87e741a29987bb"
        client_id = "bbf94a2c-6d7e-4020-b4d2-b9809741374e"

        #initialize PdfApi client instance using client credetials
        pdf_api_client = asposepdfcloud.api_client.ApiClient(client_secret, client_id)

        # สร้างอินสแตนซ์ PdfApi ขณะส่ง PdfApiClient เป็นอาร์กิวเมนต์
        pdf_api = PdfApi(pdf_api_client)

        # แหล่งที่มาไฟล์ PDF
        input_file = 'FormData-Filled.pdf'

        # ชื่อ XFDF ที่ได้ผลลัพธ์
        outputXFDF = 'exportedData.xfdf'
        
        # ส่งออกข้อมูลแบบฟอร์ม PDF ไปยัง XFDF และบันทึกผลลัพธ์ในที่จัดเก็บข้อมูลบนคลาวด์
        response = pdf_api.put_export_fields_from_pdf_to_xfdf_in_storage(name = input_file, xml_output_file_path=outputXFDF)
        
        # พิมพ์คำตอบบนคอนโซล
        print(response)
        
        # พิมพ์ข้อความในคอนโซล (ทางเลือก)
        print('PDF Form data successfully exported to XFDF !')    
    except ApiException as e:
        print("Exception while calling PdfApi: {0}".format(e))
        print("Code:" + str(e.code))
        print("Message:" + e.message)

สามารถดาวน์โหลดตัวอย่างเอาต์พุตที่สร้างในโค้ดด้านบนได้จาก exportedData.xfdf

ส่งออก PDF ไปยัง XFDF

ภาพที่ 3: ข้อมูล PDF ส่งออกไปยัง XFDF

แปลง PDF เป็น XML โดยใช้คำสั่ง cURL

นอกจากนี้ยังสามารถเข้าถึง REST API ได้โดยใช้คำสั่ง cURL และสามารถเข้าถึงได้โดยใช้แอปพลิเคชันเทอร์มินัลบนแพลตฟอร์มใดก็ได้ เนื่องจาก Aspose.PDF Cloud ได้รับการพัฒนาตามสถาปัตยกรรม REST จึงสามารถเข้าถึงได้โดยใช้คำสั่ง cURL เช่นกัน อย่างไรก็ตาม ก่อนที่จะดำเนินการใดๆ เราจำเป็นต้องสร้าง JSON Web Token (JWT) ตามข้อมูลประจำตัวไคลเอนต์แต่ละรายของคุณที่ระบุไว้บนแดชบอร์ด Aspose.Cloud ซึ่งเป็นสิ่งจำเป็นเนื่องจาก API ของเราสามารถเข้าถึงได้โดยผู้ใช้ที่ลงทะเบียนเท่านั้น โปรดดำเนินการตามคำสั่งต่อไปนี้เพื่อสร้างโทเค็น JWT

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bbf94a2c-6d7e-4020-b4d2-b9809741374e&client_secret=1c9379bb7d701c26cc87e741a29987bb" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

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

curl -v -X PUT "https://api.aspose.cloud/v3.0/pdf/FormData-Filled.pdf/export/xml?xmlOutputFilePath=FormDataExported.xml" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>" \
-d{}

บทสรุป

ในบทความนี้ เราได้อธิบายรายละเอียดและขั้นตอนต่างๆ เกี่ยวกับวิธีการส่งออกข้อมูลแบบฟอร์ม PDF ไปยังรูปแบบ XML, FDF และ XFDF ข้อกำหนดเหล่านี้สามารถทำได้โดยใช้ตัวอย่างโค้ด Python เช่นเดียวกับการใช้คำสั่ง cURL นอกจากนี้ เราขอแนะนำให้คุณอ่าน คู่มือสำหรับนักพัฒนา เพื่อเรียนรู้เกี่ยวกับฟีเจอร์ที่น่าสนใจอื่นๆ ที่นำเสนอโดย API นอกจากนี้ ซอร์สโค้ดทั้งหมดของ Aspose.PDF Cloud SDK สำหรับ Python ยังพร้อมให้ดาวน์โหลดผ่าน GitHub หากคุณพบปัญหาใดๆ ในขณะใช้ API หรือมีคำถามเพิ่มเติม โปรดติดต่อเราผ่าน ฟอรัมสนับสนุนผลิตภัณฑ์ฟรี

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

เราขอแนะนำให้เยี่ยมชมลิงค์ต่อไปนี้เพื่อเรียนรู้เพิ่มเติมเกี่ยวกับ: