6 คะแนน โดย GN⁺ 2025-02-26 | 4 ความคิดเห็น | แชร์ทาง WhatsApp
  • อธิบายโครงสร้างของ HWPX ซึ่งเป็นฟอร์แมตเอกสารแบบเปิด และวิธีการจัดเก็บและจัดการข้อมูล
  • อธิบายความแตกต่างระหว่าง HWPX กับฟอร์แมต HWP เดิม พร้อมวิเคราะห์องค์ประกอบหลักของฟอร์แมต HWPX และบทบาทของแต่ละไฟล์

บทนำ

  • ความแตกต่างที่สำคัญที่สุดคือ HWP เป็นฟอร์แมตไบนารี ขณะที่ HWPX ประกอบด้วยไฟล์ XML ในโครงสร้าง ZIP
  • ในกรณีของฟอร์แมต HWP สตรีมถูกจัดเป็นรูปแบบเรกคอร์ด จึงต้องผ่านกระบวนการวิเคราะห์เพิ่มเติมเพื่อดึงข้อมูลออกมา
    • ในทางกลับกัน ฟอร์แมต HWPX ดึงข้อมูลได้ง่าย เนื่องจากไฟล์หลักเป็น XML

HWPX คืออะไร

  • ฟอร์แมตเอกสารแบบเปิดที่พัฒนาโดย Hancom และเป็นฟอร์แมตเอกสารแบบเปิดที่อิง XML ตาม OWPML ซึ่งเป็นมาตรฐานแห่งชาติ (KS X 6101)
  • OWPML หมายถึง ‘Open Word-Processor Markup Language’ ซึ่งเป็นภาษามาร์กอัปสำหรับโปรแกรมประมวลผลคำแบบเปิดที่อิง XML
    • เป็นมาตรฐานอุตสาหกรรมเกาหลี (KS) ที่ประกาศใช้เมื่อวันที่ 30 ธันวาคม 2011 โดยมีการพัฒนามาตรฐานผ่านคณะกรรมการมาตรฐานเอกสารภายในประเทศเป็นเวลาราว 2 ปี
    • เป็นมาตรฐานแห่งชาติที่พัฒนาร่วมกับผู้เชี่ยวชาญที่เข้าร่วมพัฒนามาตรฐานภายในประเทศโดยตรง
  • รูปแบบไฟล์นี้ถูกพัฒนาขึ้นเพื่อให้ฟอร์แมตไบนารีของ HWP มีความเปิดกว้าง ความเข้ากันได้ และความสามารถในการเก็บรักษาระยะยาว
    • เพื่อจุดประสงค์นี้ จึงถูกจัดเป็นฟอร์แมตแพ็กเกจที่อิง XML

โครงสร้างไฟล์ HWPX

  • HWPX เป็นฟอร์แมตที่อิง XML และมีโครงสร้างไฟล์แบบ ZIP
  • เมื่อแตกไฟล์แล้ว จะประกอบด้วยไฟล์ XML และโฟลเดอร์หลายรายการ
  • องค์ประกอบหลัก:
    • mimetype: เก็บข้อมูลชนิดไฟล์ และเป็นข้อมูลซิกเนเจอร์สำหรับยืนยันว่าเป็นฟอร์แมต HWPX
    • settings.xml: มีข้อมูลองค์ประกอบการตั้งค่าภายนอก เช่น ตำแหน่งเคอร์เซอร์
    • version.xml: เก็บข้อมูลเวอร์ชันของฟอร์แมตไฟล์ OWPML และข้อมูลสภาพแวดล้อมตอนบันทึกเอกสาร
    • BinData/: จัดเก็บไฟล์ไบนารี เช่น รูปภาพและอ็อบเจ็กต์ OLE ที่รวมอยู่ในเอกสาร
    • Contents/: มีข้อมูลรูปแบบเอกสารและเนื้อหาหลักของเอกสาร โดยประกอบด้วยไฟล์อย่าง content.hpf, header.xml, section0.xml เป็นต้น
      • content.hpf : รายการไฟล์หลักของแพ็กเกจ กำหนดตามมาตรฐาน PF(Open Packaging Format) และแบ่งเป็น 3 ส่วนคือ metadata, manifest และ spine
      • header.xml : มีการตั้งค่าทั้งหมดที่เกี่ยวข้องกับเนื้อหาเอกสาร รวมถึงข้อมูลการแมป เช่น รูปแบบตัวอักษรและรูปแบบย่อหน้า
      • section0.xml : จัดเก็บเนื้อหาหลักแยกตามแต่ละส่วนของเอกสาร โดยแต่ละส่วนจะถูกบันทึกเป็นไฟล์แยกกัน
    • META-INF/: มีไฟล์ manifest.xml, container.rdf, container.xml และในกรณีเป็นเอกสารเข้ารหัส จะเก็บข้อมูลการเข้ารหัสของแต่ละไฟล์
    • Scripts/: ข้อมูลสคริปต์ที่บันทึกในเอกสารถูกเก็บไว้ในไฟล์ headerScripts และ sourceScripts
    • Preview/: มีไฟล์ภาพตัวอย่างและไฟล์ข้อความ เป็นข้อมูลที่แสดงเมื่อเปิดหน้าต่างแสดงตัวอย่างในตัวสำรวจไฟล์ และในกรณีเป็นเอกสารเข้ารหัส จะไม่บันทึกไฟล์เหล่านี้เพื่อความปลอดภัย

ทิ้งท้าย

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

4 ความคิดเห็น

 
penguin5 2025-02-26

ขอบคุณสำหรับบทความดี ๆ ครับ อยากให้ไฟล์ที่สร้างจาก AWS (เช่น รายงาน) เป็น HWP แต่มีข้อมูลอ้างอิงที่เกี่ยวข้องค่อนข้างน้อยจึงทำได้ยาก ตอนนี้กำลังใช้ Word อยู่ครับ หากมีเอกสารที่พอจะใช้อ้างอิงได้ รบกวนขอลิงก์ด้วยครับ

 
regentag 2025-02-26

ก่อนหน้านี้เคยได้ยินมาว่า hwpx คือการคลายไบนารีของ hwp ออกมาเป็น xml แบบตรง ๆ แล้วค่อยบีบรวมเป็น zip
แต่อย่างน้อยก็ยังพออ่านได้...

 
molla 2025-02-26

ว่ากันว่ามันก็แค่ทำตาม docx ตรง ๆ
จริง ๆ แล้วตอนที่ MS เปลี่ยนจาก doc เป็น docx ก็ทำแบบนั้นเหมือนกัน