PDFium Delphi Component ภาพรวม
| ผลิตภัณฑ์ | PDFium Delphi Component — PDF Application SDK มืออาชีพพร้อมซอร์สโค้ดสำหรับ Delphi, C++Builder และ Lazarus |
|---|---|
| เหมาะสำหรับ | การพัฒนาโปรแกรมอ่าน PDF ประสิทธิภาพสูง เครื่องมือตรวจทานเอกสาร เวิร์กโฟลว์เอกสาร และประสบการณ์การอ่านที่รองรับการเข้าถึงในแอปพลิเคชันเนทีฟ |
| การรองรับ IDE | Delphi และ C++Builder XE5 ถึง 13.1 Florence (Win32, Win64); Lazarus / Free Pascal LCL |
| บทบาทของเอนจิน | PDFium — ตระกูลเอนจินโอเพนซอร์สที่อยู่เบื้องหลังการแสดงผล PDF ของ Chromium — ทำหน้าที่เรนเดอร์หน้าและอ่านเอกสาร; DLL รันไทม์ V8 / XFA เป็นตัวเลือกเสริม |
| เลเยอร์แอปพลิเคชัน | Object Pascal 115,000 บรรทัดใน 55 ยูนิต สมาชิกสาธารณะ TPdf 475 รายการ และ TPdfView 152 รายการ ครอบคลุมเลเยอร์โปรแกรมแสดงผล การจัดรูปแบบไฟล์ (serialization) การลงลายเซ็น การเข้ารหัส มาตรฐาน และการเข้าถึง ซึ่ง PDFium เองไม่มีให้ |
| ลายเซ็นดิจิทัล | การลงลายเซ็น PAdES B-B / B-T / B-LT / B-LTA (ETSI EN 319 142-1), คอนเทนเนอร์ CMS / CAdES, การประทับเวลาตาม RFC 3161, Document Security Store |
| การเข้ารหัส | รองรับการเขียน AES-256 สำหรับ PDF 2.0 (ISO 32000-2), ISO/TS 32003 AES-GCM, ISO/TS 32004 PDF MAC บนสแต็ก AES / SHA / HMAC / ASN.1 ที่เขียนด้วย Pascal ล้วน |
| มาตรฐาน | ตัวตรวจสอบ PDF/A (ส่วนที่ 1-4), PDF/X (ถึง X-6), PDF/UA, PDF/E, PDF/VT (ถึง VT-2s), PDF/R พร้อมตัวช่วยบันทึกไฟล์และแทรกเครื่องหมาย |
| การสร้างไฟล์ PDF | ตัวสร้างไฟล์ (serializer) ที่พัฒนาขึ้นเอง: Fast Web View แบบ linearized การบรรจุแบบ object-stream และ xref-stream การแก้ไขแบบ incremental เฉพาะอ็อบเจ็กต์ที่เปลี่ยนแปลง สำเนาซ่อมแซมที่ผ่านการตรวจสอบ |
| ทรัพยากรสำหรับโปรแกรมอ่าน | โปรเจกต์พร้อมใช้งาน 34 โปรเจกต์: ตัวอย่างโปรแกรมอ่านระดับมืออาชีพ ห้องทดลองการโต้ตอบ เวิร์กเบนช์การเข้าถึง เครื่องมือมาตรฐานและพรีไฟลต์ ห้องทดลองข้อความ CJK และ RTL |
| ไฟล์ขนาดใหญ่ | การเข้าถึงตามความต้องการช่วยหลีกเลี่ยงการคัดลอกเข้าหน่วยความจำล่วงหน้าสำหรับเอกสารขนาดหลายกิกะไบต์; การเรนเดอร์หน้าแบบขนานและพื้นที่ทำงานที่จำกัดขอบเขต |
| ซอร์สโค้ด | รวมซอร์สโค้ด Object Pascal ฉบับเต็มในทุกใบอนุญาต |
| การให้สิทธิ์ใช้งาน | ไม่มีค่าลิขสิทธิ์ ชำระครั้งเดียว $350-$4200 ตามระดับ; การต่ออายุคิด 40% ของราคาตั้ง |
| เวอร์ชันปัจจุบัน | 3.51.0 (2026-08-16) |
| รุ่นทดลองใช้ | ดาวน์โหลดแพ็กเกจทดลองใช้ฟรี |
จุดที่เอนจินหยุดและผลิตภัณฑ์เริ่มต้น
PDFium คือตัวเรนเดอร์ มันวาดหน้า สกัดข้อความ และอ่านโครงสร้างที่มีอยู่แล้ว เพียงเท่านั้น ไม่มีการลงลายเซ็น ไม่มีตัวเขียนการเข้ารหัส ไม่มีตัวตรวจสอบมาตรฐาน ไม่มีการทำ linearization ไม่มีตัวเขียน incremental revision และไม่รองรับ XFDF หรือ XMP ชุดเชื่อมต่อที่ห่อ PDFium C API เอาไว้ย่อมสืบทอดข้อจำกัดเหล่านี้มาทั้งหมด
PDFium Delphi Component ให้ซอร์สโค้ด Object Pascal ราว 115,000 บรรทัดใน 55 ยูนิต โดยมากกว่า 62,000 บรรทัดอยู่ใน 36 ยูนิตที่ไม่มีสิ่งเทียบเท่าใน PDFium API เลย ได้แก่ การเข้ารหัสลับ ลายเซ็นดิจิทัล การเข้ารหัสเอกสาร ตัวตรวจสอบมาตรฐานทั้งหกตระกูล ตัวสร้างไฟล์ PDF (serializer) XFDF XMP การจัดวางเลย์เอาต์ และการจัดรูปข้อความ ทั้งหมดเขียนด้วย Pascal ตรวจทานกับข้อกำหนดที่เผยแพร่ของ ISO, ETSI, IETF และ FIPS และส่งมอบเป็นซอร์สโค้ดพร้อมทุกสิทธิ์การใช้งาน
| ความสามารถ | เอนจิน PDFium | ที่ PDFium Delphi Component ทำเอง |
|---|---|---|
| ลายเซ็นดิจิทัล | อ่านได้เฉพาะพจนานุกรมลายเซ็นที่มีอยู่แล้ว | การลงลายเซ็น PAdES B-B / B-T / B-LT / B-LTA, การสร้าง CMS / CAdES SignedData ตาม RFC 5652, ไคลเอนต์ไทม์สแตมป์ RFC 3161, การฉีด DSS และ VRI, คีย์ Windows CNG (RSA-PSS, PKCS#1, ECDSA), การลงลายเซ็นระยะไกล / HSM ที่คีย์ส่วนตัวไม่เคยออกจากบริการ และการตรวจสอบความน่าเชื่อถือของห่วงโซ่ใบรับรอง |
| การเข้ารหัส | เปิดไฟล์ที่เข้ารหัสได้ แต่เขียนการเข้ารหัสไม่ได้ | ISO 32000-2 AES-256 (การอนุมานคีย์ V5 / R6 อัลกอริทึม 2.B), ISO/TS 32003 AES-GCM, ISO/TS 32004 PDF MAC และการกวาดเข้ารหัสสตรีมและสตริงอย่างครบถ้วน |
| ไพรมิทีฟการเข้ารหัสลับ | ไม่เปิดให้ใช้งาน | AES-128/256 CBC และ GCM, SHA-256/384/512, SHA-3, HMAC, ตัวอ่านและตัวเขียน ASN.1 DER ที่เขียนด้วย Object Pascal ล้วน และตรวจสอบกับเวกเตอร์ทดสอบ FIPS 197 และ FIPS 180-4 |
| ความสอดคล้องตามมาตรฐาน | ไม่มีตัวตรวจสอบใด ๆ | PDF/A ส่วนที่ 1 ถึง 4, PDF/X ถึง X-6, PDF/UA-1, PDF/E-1, PDF/VT-1/2/2s, PDF/R-1 พร้อมตัวตรวจสอบระดับข้อกำหนด การฉีดมาร์กเกอร์ และตัวช่วยบันทึกที่รับรู้โปรไฟล์ |
| การสร้างไฟล์ PDF | บันทึกทั้งไฟล์แบบลำดับเดียว | Linearized Fast Web View พร้อมตาราง hint ตาม Annex F, การแพ็กแบบ object stream และ xref stream, incremental revision เฉพาะอ็อบเจ็กต์ที่เปลี่ยนโดยรักษาส่วนนำหน้าไว้ตรงทุกไบต์ และสำเนาซ่อมแซมที่ผ่านการตรวจซ้ำแบบเข้มงวด |
| เอกสารที่เสียหาย | กู้คืนแบบเงียบ ไม่มีรายงาน | นโยบายการโหลดแบบ strict, compatible และ recovery พร้อมข้อมูลวินิจฉัยที่มีโครงสร้าง ได้แก่ เส้นทางการสร้างใหม่ ตำแหน่งความเสียหาย การแก้ไขที่ขัดแย้งกัน และสถานะงบประมาณ |
| การแลกเปลี่ยนข้อมูลแบบฟอร์ม | ไม่มี API สำหรับ XFDF หรือ FDF | นำเข้าและส่งออก XFDF (ISO 19444-1) และ FDF สำหรับค่าฟิลด์และคำอธิบายประกอบ 18 ชนิดย่อย |
| ข้อมูลเมตา | อ่านได้เฉพาะ info dictionary แบบดั้งเดิม | ตัวอ่านและตัวเขียนแพ็กเก็ต XMP พร้อมคอนเทนเนอร์ที่มีชนิดข้อมูล ซึ่งโปรไฟล์มาตรฐานทุกชุดเรียกใช้ |
| เครือข่ายและการขยายขนาด | มีเพียงคอลแบ็กช่วงไบต์ ไม่มีสิ่งใดเหนือกว่านั้น | เซสชันเอกสารแบบโปรเกรสซีฟ, ตัวจัดคิวช่วงไบต์ตามลำดับความสำคัญพร้อมการตัดคำขอซ้ำ การรวมคำขอ การลองใหม่แบบมีขอบเขต และการยกเลิก, การเรนเดอร์หน้าแบบขนาน และพื้นที่ทำงานที่มีขอบเขตซึ่งล้นลงไฟล์ชั่วคราวแบบลบเมื่อปิด |
| ชั้นแอปพลิเคชัน | แฮนเดิลและคอลแบ็กภาษา C | คอมโพเนนต์ VCL / LCL ที่ลงทะเบียนแล้วสามตัว, สมาชิกสาธารณะ 475 รายการของ TPdf และ 152 รายการของ TPdfView, สถานะโปรแกรมแสดงผล, ภาพขนาดย่อ, เซสชันการอ่าน และโปรเจ็กต์ที่พร้อมรัน 34 โครงการ |
ทีมพัฒนาไม่ต้องออกแบบสถานะโปรแกรมแสดงผล การโต้ตอบ การเรนเดอร์แบบอะซิงโครนัส การแมปข้อความ โฟกัสของแบบฟอร์ม การนำทางหน้า พฤติกรรมด้านการเข้าถึง คอนเทนเนอร์ลายเซ็น พจนานุกรมการเข้ารหัส และตัวเขียน revision ขึ้นใหม่ตั้งแต่ต้น แต่เริ่มจากคอมโพเนนต์ที่ผ่านการทดสอบและสถาปัตยกรรมโปรแกรมอ่านที่ใช้งานได้จริง แล้วปรับซอร์สโค้ด Object Pascal ที่ให้มาให้เข้ากับผลิตภัณฑ์ของตน
ใช้ ตัวอย่างโปรแกรมแสดงผลและกระบวนการทดสอบไฟล์ขนาดใหญ่ ที่เผยแพร่ไว้ เพื่อวัดเวลาจากการเปิดไฟล์จนถึงภาพแรกซ้ำด้วยไฟล์ PDF อุปกรณ์จัดเก็บ และฮาร์ดแวร์เป้าหมายของคุณเอง
การดูเอกสาร PDF แบบเนทีฟและกระบวนการทำงานของเอกสารสำหรับ Delphi
มากกว่าชุดเชื่อมต่อ DLL ของ PDFium
PDFium Delphi Component เพิ่มชั้นการพัฒนาแอปพลิเคชันที่สมบูรณ์เหนือเอนจิน PDFium ไม่ใช่เพียงการแปล C API โดยมีคอมโพเนนต์ Delphi แบบภาพและไม่ใช่ภาพ, API ระดับสูง และเวิร์กโฟลว์ที่นำกลับมาใช้ได้สำหรับการดู ค้นหา ฟอร์ม คำอธิบายประกอบ การพิมพ์ การเข้าถึง และการตรวจสอบ
โครงการอ้างอิง PDFViewer, MultiPageViewer, SplitView, ViewerInteractionLab และ AccessibilityReader แสดงสถาปัตยกรรมโปรแกรมอ่านที่พร้อมศึกษาและปรับใช้ การโหลดตามต้องการ การเรนเดอร์แบบค่อยเป็นค่อยไปที่ยกเลิกได้ และเครื่องมือช่วยอ่านช่วยให้สร้างโปรแกรมอ่านที่รวดเร็วและเข้าถึงได้สำหรับเอกสารจริง
PDFium Delphi Component คือชุดคอมโพเนนต์ PDFium ที่มีซอร์สโค้ดสำหรับ Delphi, C++Builder และ Lazarus สำหรับแอปพลิเคชันที่ต้องการการแสดงผล PDF ที่รวดเร็ว การทำ Rasterization หน้า การโหลดสตรีม การเลือกข้อความ การค้นหา แบบฟอร์ม คำอธิบายประกอบ การพิมพ์ รายงานพรีไฟลต์ และการตรวจสอบเอกสารภายใน Windows desktop UI แบบเนทีฟ
การเปิด PDF ขนาดใหญ่ในพริบตา: ในการทดสอบไฟล์ขนาดใหญ่จากการใช้งานจริง PDF ขนาด 2.x GB ซึ่งทำให้โปรแกรมอ่าน PDF กระแสหลักต้องใช้เวลา 20-30 วินาทีก่อนที่จะแสดงผลหน้าแรก สามารถใช้งานได้เกือบจะทันทีใน PDFium Delphi Component
ใช้งานคอมโพเนนต์นี้เมื่อต้องการประสบการณ์การใช้งาน PDF ภายในแอปพลิเคชันของคุณแทนที่จะใช้โปรแกรมดูภายนอก แพ็กเกจประกอบด้วยคอมโพเนนต์ทั้งแบบมองเห็น (visual) และแบบมองไม่เห็น (non-visual), ซอร์สโค้ด Object Pascal, โปรเจ็กต์สาธิต, ไฟล์ PDFium DLL, ตัวเลือก V8 / XFA-capable runtime DLL, ตัวอย่างพรีไฟลต์แบบบรรทัดคำสั่ง, การทดสอบความถดถอย (regression tests) และเอกสารประกอบสำหรับการบูรณาการโปรแกรมแสดงผลรวมถึงการใช้งาน PDF ในระดับต่ำ
PDFium VCL Component รองรับ Delphi XE5 ถึง Delphi 13.1 Florence และ C++Builder XE5 ถึง C++Builder 13.1 Florence พร้อมเป้าหมายการคอมไพล์สำหรับ Win32 และ Win64 ส่วน PDFium LCL Component จะรวมไฟล์แพ็กเกจ Lazarus / Free Pascal และโปรแกรมสาธิตสำหรับกระบวนการทำงาน LCL
ความสามารถหลัก
- API ระดับสูงสำหรับแอปพลิเคชัน: ทำงานกับอ็อบเจ็กต์เอกสารและโปรแกรมแสดงผลแบบเนทีฟของ Delphi แทนการเดินสายแฮนเดิล PDFium ดิบเข้าไปในทุกหน้าจอ ทุกงานเบื้องหลัง ทุกกระบวนการแบบฟอร์ม และทุกเส้นทางการคืนทรัพยากร
- UI ของโปรแกรมแสดงผล: ลากและวาง
TPdfViewลงบนฟอร์มเพื่อใช้งานการซูม การหมุน โหมดการจัดพอดี เค้าโครงหน้าเดียวและแบบต่อเนื่อง การแพร่กระจายที่รับรู้ถึงหน้าปก (cover-aware spreads) เงาของหน้า การคลิกลิงก์ที่ปลอดภัย การเลือกข้อความโดยผู้ใช้ การคัดลอกไปยังคลิปบอร์ด และกระบวนการโฟกัสแบบฟอร์ม - การนำทางด้วยภาพขนาดย่อ (Thumbnail navigation): เพิ่ม
TPdfThumbnailViewข้างโปรแกรมแสดงผลสำหรับภาพขนาดย่อของหน้าที่สามารถเลื่อนได้ พร้อมกับการโฮเวอร์ การเน้นการเลือก และการนำทางแบบคลิกเพื่อไปยังหน้าต่างๆ - การเรนเดอร์: เรนเดอร์หน้าและช่องภาพลงในบิตแมป, ใช้ zero-copy DIB writes ในที่ที่เป็นไปได้, รันการเรนเดอร์แบบโปรเกรสซีฟที่สามารถยกเลิกได้, เรนเดอร์ชุดหน้าแบบขนานผ่าน
RenderPagesParallel, เข้าถึง hooks ระดับล่างของ Skia เมื่อโหลด DLL ที่มีการส่งออกข้อมูลเหล่านั้น และทำให้หน้าขนาดใหญ่ตอบสนองได้ดี - สตรีมมิ่งและไฟล์ขนาดใหญ่: โหลดจากดิสก์, หน่วยความจำ, อาร์เรย์ไบต์ หรือสตรีมที่กำหนดเองแบบค้นหาได้ (custom seekable streams) พร้อมกับการอ่าน PDFium แบบตามความต้องการ ดังนั้นเอกสารขนาดใหญ่หรือเอกสารที่ดึงข้อมูลจากระยะไกลจึงไม่จำเป็นต้องคัดลอกข้อมูลในหน่วยความจำล่วงหน้า
- การเริ่มต้นไฟล์ขนาดใหญ่: เริ่มตรวจทานเอกสาร PDF แบบมัลติกิกะไบต์ได้อย่างรวดเร็ว โปรแกรมแสดงผลใช้การเข้าถึง PDFium แบบตามความต้องการที่ค้นหาได้ ดังนั้นเอกสารขนาด 2.x GB จะสามารถใช้งานได้เกือบจะทันที แทนที่จะต้องรอโหลดล่วงหน้าจนเสร็จสิ้น
- ข้อความและการค้นหา: แยกข้อความหน้ากระดาษ, ค้นหาไปข้างหน้าหรือถอยหลัง, เน้นคำที่ตรงกัน, สร้างรายการค้นหาแบบทุกหน้า และตรวจสอบสี่เหลี่ยมผืนผ้าของตัวอักษร จุดเริ่มต้น มุม ตัวอักษรที่สร้างขึ้น ตระกูลแบบอักษร น้ำหนัก ขนาด ส่วนขึ้น ส่วนลง และสถานะแบบอักษรที่ฝังตัว
- ข้อความที่มีโครงสร้าง:
GetStructuredTextสร้างลำดับชั้นของหน้า บล็อก บรรทัด และช่วงข้อความที่มีรูปแบบ จากเรขาคณิตของตัวอักษร ข้อมูลเมตาของแบบอักษร เอกลักษณ์ของอ็อบเจ็กต์ข้อความ และความหมายของ Tagged PDF พร้อมการจัดลำดับตามเลย์เอาต์จริงเมื่อเอกสารไม่มีแท็ก - การสกัดตาราง:
ExtractTablesและExtractDocumentTablesผสานกรอบคำเข้ากับเส้นพาธที่ผ่านการแปลงพิกัด เพื่อตรวจจับทั้งตารางที่มีเส้นขอบและตารางที่จัดแนวด้วยช่องว่าง รักษาเซลล์ที่ผสานไว้ ให้คะแนนความเชื่อมั่น ทำเครื่องหมายตารางที่ต่อเนื่องข้ามหน้า และส่งออกเป็น CSV หรือ JSON - การจัดเรียงใหม่เชิงความหมายเป็น HTML:
BuildReflowDocumentเปลี่ยน PDF ที่มีเลย์เอาต์ตายตัวให้เป็นทรีของโหนดที่นำกลับมาใช้ใหม่ได้ โดยเอาต์พุต HTML ที่ปลอดภัยยังคงรักษาหัวเรื่อง ย่อหน้า รายการ ภาพประกอบ ส่วนของหน้า และช่วงเซลล์ของตารางไว้ เหมาะกับการแสดงผลแบบตอบสนอง การเข้าถึง และการนำเนื้อหากลับมาใช้ใหม่ - แบบฟอร์ม: ทำงานกับเขตข้อมูล AcroForm, การตรวจจับสถานะ XFA, การจัดการความพร้อมของตัวช่วย V8 / XFA เสริม, ข้อความแบบฟอร์มที่เลือก, การเลิกทำ / ทำซ้ำแบบฟอร์ม, รูปลักษณ์แบบฟอร์มที่สร้างขึ้น, แฟล็กเขตข้อมูล และการทำให้แบนเรียบ (flattening)
- การแลกเปลี่ยนข้อมูลแบบฟอร์ม: ส่งออกและนำเข้าทั้ง XFDF (ISO 19444-1) และ FDF (ISO 32000-1 §12.7.11) สำหรับค่าฟิลด์และคำอธิบายประกอบ 18 ชนิดย่อย ซึ่งเป็นรูปแบบที่ PDFium ไม่เปิด API ให้เลย และถูกนำมาเขียนด้วย Pascal บนโมเดลคำอธิบายประกอบและฟิลด์ของคอมโพเนนต์เอง
- การเชื่อมต่อ OCR: เสียบเอนจินรู้จำอักขระใดก็ได้เข้ากับ
IPdfOcrProviderรับบิตแมปของหน้าในรูปแบบพิกเซลที่กำหนดไว้ ส่งคืนสี่เหลี่ยมของคำ แล้วให้คอมโพเนนต์เขียนชั้นข้อความที่ค้นหาได้ พร้อมรายงานสถานะรายหน้าและการข้ามหน้าที่มีข้อความอยู่แล้ว - คำอธิบายประกอบและลิงก์: สร้าง, ลบ, นับ และตรวจสอบคำอธิบายประกอบ; จัดการลิงก์หน้ากระดาษ, ลิงก์เว็บ, จุดหมายปลายทางของบุ๊กมาร์ก, การทำงานของเอกสาร JavaScript, พื้นผิวความเสี่ยง URI / Launch และกิจกรรมการคลิกของโปรแกรมแสดงผล
- การประกอบเอกสาร: สร้างเอกสาร เพิ่มหรือลบหน้า นำเข้าช่วงหน้ากระดาษตามป้ายกำกับหรือดัชนีทางกายภาพ ย้ายหน้า จัดองค์ประกอบแบบ N-up นำหน้ากลับมาใช้ใหม่เป็น Form XObjects นำลายน้ำหรือตราประทับไปใช้ อัปเดตเนื้อหาหน้ากระดาษ และจัดการกล่องหน้ากระดาษ
- เอาต์พุต PDF และการแก้ไขเอกสาร: บันทึกไฟล์ Linearized Fast Web View พร้อมตาราง hint ของออฟเซ็ตหน้าและอ็อบเจ็กต์ที่ใช้ร่วมกัน, แพ็กอ็อบเจ็กต์ลงใน object stream พร้อม xref แบบ type-2 อย่างครบถ้วน, ต่อท้าย incremental revision เฉพาะอ็อบเจ็กต์ที่เปลี่ยนโดยรักษาเอาต์พุตเดิมไว้ตรงทุกไบต์ และสร้างสำเนาซ่อมแซมที่ถูกโหลดแบบเข้มงวดเพื่อตรวจซ้ำอย่างอิสระก่อนส่งมอบ
- ลายเซ็นดิจิทัล: ลงลายเซ็นถึงระดับพื้นฐาน PAdES B-B, B-T, B-LT หรือ B-LTA; สร้าง CMS / CAdES SignedData พร้อมแอตทริบิวต์ที่โปรไฟล์นั้นกำหนด; ขอโทเค็น RFC 3161 จาก TSA; รวบรวมห่วงโซ่ใบรับรองเข้าสู่ Document Security Store; เพิ่มไทม์สแตมป์สำหรับการเก็บถาวร; และตรวจสอบเอกสารใดก็ได้ด้วยการตรวจ PAdES ระดับข้อกำหนดพร้อมความน่าเชื่อถือของห่วงโซ่ใบรับรอง ทั้งแบบซิงโครนัสและอะซิงโครนัส
- การลงลายเซ็นระยะไกลและผ่าน HSM: แยกงานออกเป็นสองขั้นด้วย
PreparePadesRemoteSignatureและCompletePadesRemoteSignatureโดยแอปพลิเคชันสร้างเอกสารที่มีช่องว่างสำรองและคำขอลงลายเซ็นแบบพกพาซึ่งบรรจุไดเจสต์ SHA-256 บริการระยะไกลหรือโมดูลฮาร์ดแวร์ส่งคืน CMS แบบแยก แล้วคอมโพเนนต์จึงฉีดกลับเข้าไป คีย์ส่วนตัวไม่จำเป็นต้องมาถึงเครื่องของผู้พัฒนาเลย - การเข้ารหัสและความสมบูรณ์ของข้อมูล: เขียนการเข้ารหัส PDF 2.0 AES-256 ด้วยการอนุมานคีย์ R6 และบล็อกสิทธิ์ที่ถูกต้อง, ใช้ ISO/TS 32003 AES-GCM เมื่อจำเป็น, แนบโทเค็น ISO/TS 32004 PDF MAC และอาศัยไพรมิทีฟ AES, SHA-2, SHA-3, HMAC และ ASN.1 ที่เขียนด้วย Object Pascal โดยไม่พึ่งไลบรารี C ภายนอก
- การตรวจสอบเนื้อหาและความปลอดภัย: แยกรูปภาพ เรนเดอร์บิตแมปวัตถุ ตรวจสอบขอบเขตวัตถุและความโปร่งใส อ่านไฟล์แนบ ข้อมูลเมตา ลายเซ็น สิทธิ์ ภาษา ป้ายกำกับหน้า โหมดหน้า การตั้งค่าตัวแสดงผล โครงสร้าง PDF ที่ติดแท็ก และตัวระบุไฟล์
TPdfStreamInspectorถอดรหัสอ็อบเจ็กต์สตรีมใด ๆ ภายใต้งบประมาณที่ระบุชัดเจนสำหรับต้นทาง ข้อมูลดิบ ข้อมูลที่ถอดรหัสแล้ว อัตราการขยาย และจำนวนสตรีม ดังนั้นระเบิดการบีบอัด (decompression bomb) จะได้รับสถานะที่มีโครงสร้างกลับมาแทนที่จะกินหน่วยความจำจนหมด - การอ่านแบบเข้าถึงได้: สร้างหน่วยการอ่านระดับประโยค, แมปข้อความที่อ่านออกเสียงกลับไปยังเนื้อหา PDF, ขับเคลื่อนการไฮไลต์การอ่านระดับคำ, นำทางฟิลด์แบบฟอร์ม, ตรวจสอบโครงสร้างที่ติดแท็ก และใช้การแปลงบิตแมปสำหรับผู้มีสายตาเลือนรางในกระบวนการอ่านแบบช่วยเหลือ
- รายงานพรีไฟลต์: สร้างรายงานการตรวจสอบที่เน้นตามมาตรฐานพร้อมด้วยสถานะการผ่าน ความต้องการในการดำเนินการ การทบทวน ลำดับความสำคัญ หมวดหมู่ปัญหา จำนวนตามหมวดหมู่ และเขตข้อมูลการทำงานถัดไป; ส่งออกแบบที่มนุษย์อ่านได้เป็น TXT, HTML และ Markdown หรือแบบที่เครื่องอ่านได้เป็น JSON, CSV, SARIF 2.1.0, JUnit XML และ NDJSON; สร้างลายนิ้วมือรายงาน SHA-256 ที่เสถียร; เรียกใช้สรุปข้อมูลแบบแบทช์; แนบรายงานกับชุดการรีวิว และกำกับผลบิลด์ด้วยรหัสสถานะขาออกของตัวรันแบบบรรทัดคำสั่ง
- การพิมพ์: พิมพ์ด้วยช่วงหน้ากระดาษ จำนวนสำเนา ค่าการปรับขนาด การจัดองค์ประกอบแบบ N-up การกรองเลขคี่ / เลขคู่ ผลลัพธ์ขาวดำ ข้อมูลเมตาการตั้งค่าตัวแสดงผล และ
SetPdfPrintPaperHandlingDevModeสำหรับการทำงานร่วมกันระหว่างการพิมพ์สองหน้าและการจัดการกระดาษ
กระบวนการทำงาน PDF ที่สอดคล้องตามมาตรฐาน
PDFium Delphi Component มีการตรวจสอบที่เน้นตามมาตรฐานและ API บันทึกสำหรับทีมที่ต้องการการส่งมอบ PDF ที่คาดเดาได้ การทบทวนระบบเก็บถาวร กระบวนการพิมพ์ การตรวจสอบการเข้าถึงได้ของเอกสาร เอกสารทางวิศวกรรม ผลลัพธ์ของข้อมูลแบบแปรผัน หรือการส่งมอบแบบแรสเตอร์ที่ถูกล็อค
| กระบวนการทำงาน | การสนับสนุน PDFium Delphi Component | ความรับผิดชอบของแอปพลิเคชัน |
|---|---|---|
| PDF/A | ValidatePdfA, SaveAsPdfA, PdfAConformance ครอบคลุม ISO 19005 ส่วนที่ 1 ถึง 4 รวมถึงโปรไฟล์ A-4 base, A-4f และ A-4e ที่อิงกับ PDF 2.0 พร้อมการตรวจสอบ OutputIntent, การตรวจสอบข้อมูลเมตา XMP, การตรวจสอบการฝังแบบอักษร, การตรวจโครงสร้าง RoleMap และ ParentTree, ขีดจำกัดการนำไปใช้งานตาม Annex C, การจำกัดการเข้ารหัสและ JavaScript และตัวช่วยการบันทึกที่รับรู้โปรไฟล์ | เลือกเป้าหมายการเก็บถาวร ระบุข้อมูลเมตาและข้อมูลสีที่ถูกต้อง และตรวจสอบปัญหาการรับรองก่อนการส่งมอบ |
| PDF/X | ValidatePdfX, SaveAsPdfX, PdfXConformance ตั้งแต่ X-1a จนถึง X-6 ที่อิงกับ PDF 2.0 พร้อมการจัดการ OutputIntent และ ICC, การจำกัดความโปร่งใสและปริภูมิสีตามโปรไฟล์, การตรวจเรขาคณิต TrimBox / ArtBox / BleedBox และการตรวจสอบโปรไฟล์ที่ปลอดภัยสำหรับการพิมพ์ | จัดหาข้อมูล Output Intent รูปทรงเรขาคณิตของหน้ากระดาษ และการตั้งค่าการพิมพ์ที่เหมาะสมสำหรับการผลิตให้ตรงตามโปรไฟล์ PDF/X ที่เป็นเป้าหมาย |
| PDF/UA | ValidatePdfUa, SaveAsPdfUa, PdfUaConformance, การตรวจสอบภาษาและแท็ก, การตรวจสอบโครงสร้างทรี, การทบทวนเนื้อหาที่มีเครื่องหมายกำกับ และการตรวจสอบโปรไฟล์การเข้าถึงได้ | ผู้แต่งต้องกำหนดลำดับการอ่าน หัวเรื่อง รายการ ความหมายของตาราง ข้อความทางเลือก และภาษาเอกสารที่มีความหมายในกระบวนการทำงานต้นทาง |
| PDF/E, PDF/VT, PDF/R | ValidatePdfE, ValidatePdfVT, ValidatePdfR, API ที่เข้ากันอย่าง SaveAs... และคุณสมบัติของความสอดคล้องสำหรับโปรไฟล์ PDF ทางวิศวกรรม ข้อมูลแปรผัน และที่มุ่งเน้นระบบแรสเตอร์ โดย PDF/VT ครอบคลุมลำดับชั้น DPart, ข้อมูลเมตาระดับส่วนเอกสาร และการบรรจุสตรีม MIME หลายส่วนแบบ VT-2s; PDF/E ฉีด output intent แบบ sRGB ที่ฝังไว้; ส่วน PDF/R บังคับให้มีภาพ strip เดียวต่อหน้าและใช้เฉพาะการเข้ารหัสที่อนุญาต | จับคู่โปรไฟล์กับกระบวนการทำงานของธุรกิจและเก็บเนื้อหาต้นทางให้อยู่ภายในชุดคุณลักษณะที่อนุญาตสำหรับมาตรฐานที่เลือก |
| ลายเซ็น PAdES | SignPades, SignPadesToStream, SignPadesBytes, SaveAsPadesDss และ ValidatePadesCompliance ครอบคลุมระดับพื้นฐาน B-B, B-T, B-LT และ B-LTA ของ ETSI EN 319 142-1 พร้อมไทม์สแตมป์ RFC 3161, การฉีด Document Security Store, มาร์กเกอร์ส่วนขยาย ESIC และรหัสตรวจสอบระดับข้อกำหนด 26 รายการ ส่วน SignPadesWithPdfA รวมการแปลงเป็นรูปแบบเก็บถาวรกับการลงลายเซ็นไว้ในกระบวนการเดียว | จัดเตรียมใบรับรองสำหรับลงลายเซ็นพร้อมห่วงโซ่ใบรับรอง เลือกปลายทาง TSA สำหรับระดับที่ต้องใช้ไทม์สแตมป์ และกำหนดนโยบายการเก็บรักษาและการเพิกถอนขององค์กรคุณ |
| ระบบอัตโนมัติพรีไฟลต์ | FPdfPreflightReport และ PreflightReportCli รวมผลการตรวจสอบ PDF/A, PDF/UA, PDF/E, PDF/X, PDF/R และ PDF/VT ให้เป็นรายงานที่มนุษย์อ่านได้แบบ TXT, HTML และ Markdown หรือที่เครื่องอ่านได้แบบ JSON, CSV, SARIF 2.1.0, JUnit XML และ NDJSON พร้อมการจัดลำดับที่คาดเดาได้และลายนิ้วมือ SHA-256 ที่เสถียร | ตัดสินใจว่าการผ่าน ความต้องการดำเนินการ การทบทวน หรือจำนวนปัญหาจะทำการบล็อกระบบ CI การจัดส่ง หรือกระบวนการนำเข้าข้อมูลเพื่อเก็บถาวรหรือไม่ |
API เหล่านี้ได้รับการออกแบบมาเพื่อให้งานมาตรฐานต่างๆ สามารถมองเห็นได้ในโค้ด ผลลัพธ์การตรวจสอบ ข้อมูลสรุปของพรีไฟลต์ และเครื่องมือช่วยเหลือในการบันทึกช่วยให้แอปพลิเคชันของคุณปฏิเสธหรือแก้ไขเอาต์พุตที่มีปัญหา แทนที่จะจัดส่งไฟล์ในความเงียบและปล่อยให้เกิดความล้มเหลวภายหลังในระบบการเก็บถาวร การพิมพ์ หรือกระบวนการด้านการเข้าถึงได้ของเอกสาร ตัวตรวจสอบที่สร้างไว้ภายใน (built-in) เน้นที่ระดับตัวบ่งชี้และระดับการตรวจสอบไฟล์ที่ถูกเลือก; ทีมที่ต้องการการรับรองระดับเนื้อหาที่เป็็นทางการควรใช้งานควบคู่กับระบบตรวจสอบเฉพาะทางของตนเอง
สถาปัตยกรรมของคอมโพเนนต์
TPdf: คอมโพเนนต์ของเอกสารแบบไม่ใช่วิชวล (non-visual) สำหรับการโหลด, การเข้าถึงแบบสตรีม, การบันทึก, การเรนเดอร์, การค้นหา, การสกัดเอา, การตรวจสอบสิทธิ์, การเข้าถึงฟอร์ม, การดำเนินการเกี่ยวกับหน้ากระดาษ, ข้อมูลอภิธานศัพท์, ไฟล์แนบ, คำอธิบายประกอบ, รายงานพรีไฟลต์ (preflight) และขั้นตอนการทำงานสำหรับโปรไฟล์ของ PDFTPdfView: คอมโพเนนต์ดูเอกสารแบบวิชวลสำหรับโหมดการแสดงผล, การโต้ตอบกับผู้ใช้, ลิงก์, การเลื่อน, การซูม, การเลือก, การโฟกัสในแบบฟอร์ม, การไฮไลท์ข้อความ, การนำทางไปยังหน้าต่างๆ, และขั้นตอนการทำงานของคลิปบอร์ดTPdfThumbnailView: แผงควบคุมภาพขนาดย่อด้านข้างที่สามารถเลื่อนได้ สำหรับการนำทางไปยังหน้าต่างๆ, การติดตามหน้าจอในปัจจุบัน, การตอบสนองต่อการชี้เมาส์ (hover), และโครงร่างหน้าจอที่เป็นคู่หูไปกับการดูเอกสาร- ยูนิตช่วยเหลือ: รวมทั้งสิ้น 55 ยูนิต Object Pascal นอกเหนือจากชุดเชื่อมต่อเอนจินแล้ว ยูนิตเหล่านี้แบ่งเป็นห้ากลุ่ม ได้แก่ การเข้ารหัสลับ (
FPdfAes,FPdfAesGcm,FPdfSha256,FPdfSha512,FPdfSha3,FPdfHmac,FPdfAsn1), การลงลายเซ็น (FPdfPades,FPdfCms,FPdfTsa,FPdfCryptoWin), มาตรฐาน (FPdfPdfa,FPdfPdfx,FPdfPdfua,FPdfPdfe,FPdfPdfvt,FPdfPdfr,FPdfPreflightReport), การสร้างไฟล์และความสมบูรณ์ของข้อมูล (FPdfCompress,FPdfEncrypt,FPdfMac,FPdfStreamInspect,FPdfContentNormalize) และบริการด้านเนื้อหา (FPdfXfdf,FPdfXmp,FPdfLayout,FPdfMeasure,FPdfTextShaping,FPdfStructTree,FPdfAsync,FPdfMatrix)
ทุกยูนิตข้างต้นคือซอร์สโค้ดที่คุณได้รับและสามารถไล่ดูทีละบรรทัดได้ ไพรมิทีฟการเข้ารหัสลับเขียนด้วย Object Pascal และตรวจสอบกับเวกเตอร์ทดสอบที่เผยแพร่ของ FIPS 197 และ FIPS 180-4 ดังนั้นการลงลายเซ็นและการเข้ารหัสจึงไม่เพิ่มไลบรารี C ภายนอกให้กับการปรับใช้ของคุณ และไม่เพิ่มไบนารีของบุคคลที่สามให้กับการตรวจสอบด้านความปลอดภัยของคุณ
ดาวน์โหลดแพ็กเกจทดลองของ PDFium Delphi Component
2026-08-16 เวอร์ชัน 3.51.0: PDFium Delphi Component บันทึกประจำรุ่น | เอกสารอ้างอิง API เวอร์ชัน 3.51.0 เปิดสมาชิก TPdf แปดรายการที่เดิมเรียกใช้ไม่ได้ให้เป็นสาธารณะตามที่ระบุไว้ในเอกสาร และทำเอกสารอ้างอิงภาษาอังกฤษให้ครบถ้วน เพื่อให้สมาชิกสาธารณะทุกรายการของ TPdf และ TPdfView มีหน้าของตัวเอง โดยมี 88 รายการที่ได้หน้าใหม่ พร้อมกับ enumeration และ record ที่เข้าถึงได้จากซิกเนเจอร์สาธารณะ
สิทธิ์การใช้งานและราคา
ชำระเงินด้วยบัตรเครดิต/เดบิต, PayPal, AliPay หรือการโอนเงินผ่านธนาคารผ่าน 2Checkout ใบอนุญาต PDFium Delphi Component ใหม่ทุกฉบับรวมซอร์สโค้ด Object Pascal การอัปเดต 1 ปี และการสนับสนุนทางอีเมล 1 ปี
| สิทธิ์การใช้งาน | นักพัฒนา | ราคา | สั่งซื้อ |
|---|---|---|---|
| Single | นักพัฒนา 1 คน | $350 | สั่งซื้อ |
| Small Business | สูงสุด 10 คน | $700 | สั่งซื้อ |
| Medium Business | สูงสุด 30 คน | $1050 | สั่งซื้อ |
| Enterprise | นักพัฒนาทั้งหมดในบริษัทเดียวและบริษัทในเครือภายในประเทศเดียว | $2100 | สั่งซื้อ |
| Corporate | นักพัฒนาทั้งหมดในบริษัทเดียวและบริษัทในเครือทั่วโลก | $4200 | สั่งซื้อ |
ส่วนเสริมซอร์สโค้ดสำหรับ Enterprise และ Corporate: PDFium Delphi Component ทั้งรุ่น Enterprise และ Corporate ต่างมาพร้อมซอร์สโค้ดฉบับเต็มของตัวอย่างระดับเครื่องมือเฉพาะทางชื่อ PDF Intake & Accessibility Review Workbench Pro ส่วนซอร์สโค้ดของชุดทดสอบฉบับสมบูรณ์ซึ่งปกติใช้เพื่อการตรวจสอบภายในเท่านั้น สามารถขอรับได้ตามคำร้อง
การต่ออายุของลูกค้าที่มีอยู่แล้ว: ราคา 40% จากราคาเต็ม, สามารถยกเลิกได้ตลอดเวลา. เปิดหน้าสั่งซื้อและการต่ออายุของ PDFium Delphi Component
โปรแกรมเดโมที่รวมไว้
ในแพ็กเกจนี้มีโปรแกรมเดโมที่พร้อมรันได้สำหรับ Delphi, C++Builder, และการใช้งานที่มุ่งเป้าสำหรับ Lazarus สำหรับงานที่เป็นแกนหลักที่ทีมงานส่วนใหญ่จำเป็นต้องดำเนินการก่อนการฝังคอมโพเนนต์เข้าในซอฟต์แวร์เวอร์ชันสำหรับการนำไปใช้งานจริง (production software)
- PdfViewer: ตัวดูฉบับเต็มสำหรับการเลือกข้อความ, การค้นหา, บุ๊กมาร์ก, การนำทางบนหน้าจอ, การสั่งพิมพ์, ลิงก์, และโหมดการแสดงผลต่างๆ
- ViewerInteractionLab และ SearchAndSelect: โหมดการแสดงผล, โหมดแบบจัดพอดี, สีของกระดาษ, การหมุนเอกสาร, การค้นหาที่เน้นไฮไลต์, รายการข้อมูลสำหรับการค้นหาทั้งหน้า, ดูตัวอย่างข้อความที่เลือก, ทำสำเนาข้อมูล, เคลียร์ข้อมูล, และการจัดทำจุดอ้างอิงและตำแหน่ง (coordinate mapping)
- MultiPageViewer: พฤติกรรมการเลื่อนหน้าแบบต่อเนื่อง แบบกระจายหน้า การปรับโครงสร้างให้ดูหน้าแรกและคู่มือ (cover-aware) และพฤติกรรมตัวดูแบบหลายหน้ากระดาษ สำหรับแอปพลิเคชันตรวจทานและตรวจสอบเอกสาร
- SplitView: สองภาพหน้าจอในหนึ่งเอกสาร ซึ่งซิงโครไนซ์พร้อมกันเพื่อการพิจารณาตรวจสอบเปรียบเทียบในขั้นตอนของการทำงาน
- ContentExtractionLab: มีหนึ่งขั้นตอนการทำงานสำหรับอภิธานศัพท์, ข้อความ, หน้ากระดาษแต่ละหน้า, รูปภาพ, ไฟล์แนบ, ลิงก์เชื่อมโยง, คำอธิบายประกอบ, บุ๊กมาร์กที่เกี่ยวข้อง, แบบฟอร์มขนาดอักษร และคุณสมบัติตัวอักษร (character metrics) ที่สนับสนุนให้ทำการส่งออกบนระบบ TXT / JSON
- PDFtoJpg, BatchExport, และ ImageToPDF: การส่งออกไฟล์แบบแรสเตอร์ (Raster export), การแปลงข้อมูลแบบคราวละมาก ๆ หลายหน้ากระดาษ (batched multi-file conversion), สตรีมการส่งข้อมูลสำหรับดาวน์โหลด, การตรวจสอบ DPI / คุณภาพ (DPI / quality controls), ป้อนการใส่รหัสความปลอดภัย, พัฒนาการติดตามความคืบหน้า (progress) และความร่วมมือในแบบช่วยเหลือจัดการยกเลิก (cooperative cancellation)
- MergePDF, SplitPDF, CreatePDF, และ WatermarkStamp: การประกอบรวมโครงสร้างระบบบนเอกสาร, การเขียนแบบใช้คำสั่งระบบสั่งงานโปรแกรมทำงานในการสร้างไฟล์ PDF (programmatic PDF creation), นำมาหมุนเวียนใช้กับฟอร์มและเอกสารแบบ Form XObject สำหรับทำลายน้ำรูปเอกสาร (watermarks), มุมสัญลักษณ์ประทับ, หน้าสัญลักษณ์ตราตั้ง (labels) สำหรับตัวเลขบอกจำนวนของแต่ละแผ่น
- FormFill, FontProperties, และ Attachment: การกำหนดค่าและจัดการกับข้อมูลในแบบฟอร์มและการทำให้โครงสร้างหน้ากลายเป็นแบนเรียบ, ข้อมูลฟอนต์ที่อ้างอิงและรูปแบบตัวอักษรเพื่อค้นหา, และส่วนเสริมเพิ่มข้อมูลสำหรับการสร้าง/เก็บรักษาเอกสารเข้าในไฟล์เชื่อมต่อ
- SecurityAudit: ใช้งานตรวจสอบสำหรับโหมดเปิดดูอ่านได้เท่านั้นเพื่อกำหนดระดับความปลอดภัยสำหรับ สิทธิ์ที่ให้อนุญาตการเปิดดู (permissions), ข้อมูลเสริมหรือไฟล์แนบ, JavaScript, URI / จุดลิงก์เปิดทางเชื่อมต่อ (Launch links), เว็บไซต์ต่างๆ, รหัสตรวจสอบความปลอดภัยทางอิเล็กทรอนิกส์ลายเซ็น, คุณสมบัติระบุข้อจำกัดในสถานะ XFA (XFA state), การดูแลช่วยเหลือเพื่อนำมารันงานร่วมกันในช่วงการจัดวางทำงาน, และรายงานสรุปข้อมูลในรูปแบบ TXT / JSON
- XfdfLab และ XfaLab: รับส่งข้อมูลแบบฟอร์มและคำอธิบายประกอบไป-กลับผ่าน XFDF และ FDF และทดลองการตรวจจับสถานะ XFA ด้วยรันไทม์ V8 / XFA เสริม
- CJKTextLab และ RTLTextLab: การจัดการข้อความภาษาจีน ญี่ปุ่น เกาหลี อาหรับ และฮีบรู ทั้งการสกัดข้อความ การค้นหา เรขาคณิตของการเลือก และพฤติกรรมการจัดรูปอักษร บนระบบการเขียนที่การสมมติลำดับตัวอักษรอย่างง่าย ๆ ใช้ไม่ได้ผล
- AnnotationsLab และ NavigationLab: การสร้างและแก้ไขคำอธิบายประกอบแบบมาร์กอัปด้วยเรขาคณิตแบบสี่จุด และรูปแบบการนำทางด้วยบุ๊กมาร์ก จุดหมายปลายทาง named action และป้ายกำกับหน้า
- AccessibilityWorkbenchCli และ IntakeWorkbenchCli: ไปป์ไลน์การตรวจทานและการนำเข้าเอกสารแบบไม่มีหน้าต่าง สำหรับการประเมินการเข้าถึงและการรับเอกสารเป็นชุด เหมาะกับงานตามกำหนดเวลาและระบบ CI มากกว่าหน้าต่างเดสก์ท็อป
- StandardsLab, PreflightReport, และ PreflightReportCli: ขั้นตอนกระบวนการประเมินและการเก็บรักษาสำหรับการรองรับมาตรฐานระดับ PDF/A, PDF/UA, PDF/E, PDF/X, PDF/R, และ PDF/VT, พรีวิวดูข้อมูลสำหรับทำรายงานต่างๆ, ส่งออกในรูปแบบไฟล์ TXT / HTML / Markdown / JSON / CSV, โฟลเดอร์งานระดับกลุ่ม (batch folders), รายการข้อมูลที่ผ่านการประเมินวิเคราะห์และแยกหมวดหมู่, จัดความปลอดภัยรองรับความซ้ำซ้อนของการตั้งชื่อบันทึกของรายงาน, ใส่เสริมส่งร่วมรายงานเอกสาร, รวมถึงค่าของการปิดบังทางออกสำหรับ
failon=ที่ใช้งานให้มุ่งเน้นความสนใจไปยังระบบ CI (CI-orientedfailon=exit behavior)
ทำไมทีมพัฒนาถึงเลือก PDFium Delphi Component
- รองรับการรวมเครื่องมือให้ Delphi ในระดับโครงสร้างภาษาแม่ (Native Delphi integration): องค์ประกอบในการส่งข้อมูลและประมวลผลสำหรับ VCL ที่มีประสิทธิภาพใช้งานแบบแท้จริง (Real VCL components) ประกอบเข้ากับการเข้าถึงผ่านโครงสร้างระดับซอร์สโค้ดจาก Object Pascal แบบไม่ได้จัดการผ่านชุดส่วนควบคุมสั่งการ ActiveX (ActiveX control) หรือใช้ระบบแสดงเอกสารร่วมเข้าในบราวเซอร์ (browser-hosted viewer)
- คุณภาพของการประมวลผลในหน้าจอแสดงผลด้วยระบบ PDFium: ทำงานอย่างมีคุณภาพบนตระกูลระบบเปิดประมวลโครงสร้างไฟล์ PDF จากแหล่ง Open-Source ที่นำมารองรับการแสดงผลของ Chromium PDF ในขณะเดียวกันก็จัดเก็บข้อมูลสำหรับการประกอบระบบนั้นลงในพื้นที่จัดเก็บตัวโค้ดหลักของโปรเจกต์ Delphi โดยสมบูรณ์
- เครื่องมือจัดการระบบการดูเอกสารพร้อมโปรแกรมประยุกต์หรือ API ทำรวมขึ้นภายในระบบเดียวกันสำหรับชุดแพ็กเกจ (Viewer and API in one package): ใช้งานตัวจัดการรวมของหน้าจอเพื่อทำหน้าที่อ่านข้อมูลดูเนื้อความร่วมของ PDF บนจอมอนิเตอร์อย่างมีระดับ พร้อมเครื่องมือส่งผ่านโครงสร้างระดับระดับล่างสู่ข้อมูลเอกสาร (low-level document access), รูปแบบช่องทางค้นข้อมูลในตัวระบบ, จัดระบบจัดการสำหรับฟอร์ม, ช่องทางการสร้างสั่งและทำงานเกี่ยวกับการกำหนดเครื่องพริ้นเตอร์สำหรับการพิมพ์งานออกสู่แผ่นกระดาษ, โปรแกรมแบบตรวจสอบรับรอง API แบบต่างๆ และระบบสคริปต์ซึ่งอนุญาตให้นำเข้ามาอ้างอิงประมวลทำงานก่อนการส่งออกผ่านชุดสร้างรายงานพรีไฟลต์ (scriptable preflight reporting)
- ไม่ต้องสูญเสียค่าธรรมเนียมต่อค่าใช้บริการ (No runtime royalties): ประยุกต์พัฒนาเพื่อนำเสนอช่องทางการทำงานผ่านแอปพลิเคชันระบบการใช้งานตั้งโต๊ะ (desktop applications) ได้อย่างอิสระโดยไม่ต้องคิดเสียทรัพยากรจัดจ่ายต่อผู้ใช้จริงหรือต่อค่าสิทธิ์ใช้ตามสัดส่วนรันไทม์ (runtime fees) สำหรับแต่ละเอกสารหรือในแต่ละผู้ใช้ในระบบปิดจุดสิ้นสุด
- รองรับเครื่องมือพัฒนาระดับโปรแกรม (Modern IDE support): ใช้สำหรับชุดแพลตฟอร์มต่างๆ อย่างเช่น Delphi XE5 ผ่านกระบวนการใน Delphi 13.1 Florence, พร้อมระบบพัฒนาสำหรับ C++Builder XE5 ไปจนตลอดจนโปรแกรมในระดับของ C++Builder 13.1 Florence, และแพลตฟอร์มต่างๆ เช่น Lazarus / Free Pascal ทำงานสำหรับขั้นตอน, รองรับบิลด์ในสเปคอย่าง Win32 และในรูปแบบ Win64 (Win32 and Win64 builds)
- รักษามาตรวัดและความสามารถในแบบครอบคลุมให้ผ่านการตรวจสอบการรันไทม์โปรแกรมในกระบวนทดลองเพื่อลดช่องโหว่ความเสี่ยง (Maintained test coverage): สนับสนุนรูปแบบของตัวประเมินโครงสร้างและฟอร์มต่างๆ แบบรวมถึง Delphi DUnitX, การสอบทดลองจากโปรแกรมระดับเครื่องการรองรับของ C++Builder GoogleTest และรูปแบบประยุกต์แบบ FPCUnit ให้กับระบบ Lazarus (Lazarus FPCUnit tests) ซึ่งสามารถเข้าถึงโอบล้อมประเมินกระบวนระบบในการดำเนินการเกี่ยวกับโครงสร้างรวมเอกสาร, รองรับตัวรับการทำงาน, ดูรูปแบบตัวจัดโครงฟอร์ม, ค่าโครงข่ายตัวประมวลผลทำงาน (structure), ทบทวนตรวจงานสั่งพริ้นเตอร์พิมพ์งาน, และพิจารณาคุณสมบัติในโปรเซสของข้อมูลหน้าจอส่วนหน้าและเครื่องมือรวมของตัวขยายขนาดดูรายละเอียดรูปย่อ
- ลงลายเซ็นและเข้ารหัสได้โดยไม่ต้องหาผู้จำหน่ายรายที่สอง: PAdES B-B ถึง B-LTA, ไทม์สแตมป์ RFC 3161 และการเข้ารหัส PDF 2.0 AES-256 เป็นส่วนหนึ่งของไลบรารีนี้ ทีม Delphi ส่วนใหญ่มาถึงจุดนี้แล้วต้องเพิ่ม SDK สำหรับลงลายเซ็นอีกชุดหรือปรับใช้ OpenSSL แต่ที่นี่มีเพียงแพ็กเกจเดียว สิทธิ์การใช้งานเดียว และซอร์สโค้ด Pascal ที่คุณตรวจสอบเองได้
- งานมาตรฐานที่มองเห็นได้ในโค้ด: มาตรฐาน ISO ทั้งหกตระกูลมีตัวตรวจสอบจริงพร้อมรหัสผลลัพธ์ระดับข้อกำหนด ไม่ใช่แค่ช่องติ๊ก เอาต์พุตพรีไฟลต์แบบ TXT, HTML, Markdown, JSON และ CSV เสียบเข้ากับระบบ CI ได้ทันที และตัวรันแบบบรรทัดคำสั่งจะคืนรหัสสถานะขาออกที่เป็นความล้มเหลวตามเงื่อนไขที่คุณเลือก
- ชั้นการเขียน PDF ที่เอนจินไม่มี: Linearized Fast Web View, การแพ็กแบบ object stream และ incremental revision เฉพาะอ็อบเจ็กต์ที่เปลี่ยนซึ่งรักษาไฟล์เดิมไว้ตรงทุกไบต์ คือรูปแบบเอาต์พุตที่ระบบเก็บถาวร การส่งมอบผ่านเว็บ และร่องรอยการตรวจสอบต้องการจริง ๆ
- ปฏิบัติต่ออินพุตที่มุ่งร้ายอย่างที่ควร: การถอดรหัสสตรีม การทำเนื้อหาให้เป็นมาตรฐาน และการสแกนโครงสร้าง ล้วนทำงานภายใต้งบประมาณที่ระบุชัดเจนสำหรับต้นทาง เอาต์พุต โทเค็น ความลึกของการซ้อน และอัตราการขยาย ดังนั้น PDF ที่ผิดรูปแบบหรือถูกสร้างขึ้นโดยเจตนาร้ายจะคืนสถานะที่มีโครงสร้างกลับมา แทนที่จะทำให้โปรเซสล่ม
เอกสารออนไลน์ของ PDFium Delphi Component
ตัวอย่างโค้ด
procedure TForm1.OpenPdf(const FileName: string);
begin
Pdf.FileName := FileName;
PdfView.Pdf := Pdf;
PdfThumbnailView.Pdf := Pdf;
PdfView.DisplayMode := dmSingleContinuous;
PdfView.FitMode := pfmFitWidth;
PdfView.AllowUserTextSelection := True;
PdfView.Active := True;
end;
procedure TForm1.HighlightInvoiceNumber;
begin
Pdf.PageNumber := PdfView.PageNumber;
if Pdf.FindFirst('Invoice', []) >= 0 then
PdfView.HighlightSearchText('Invoice', False, False);
end;
procedure TForm1.SaveArchiveCopy(const OutputFile: string);
begin
if not Pdf.SaveAsPdfA(OutputFile, pac1b) then
raise Exception.Create('The PDF/A archive copy could not be saved.');
end;
procedure TForm1.SignForLongTermArchive(const OutputFile: string);
var
Options: TPadesSignOptions;
begin
Options := TPadesSignOptions.Default;
Options.CertificateThumbprint := SignerThumbprint;
Options.Level := plB_LTA; // ลายเซ็น + โทเค็น TSA + DSS + ไทม์สแตมป์สำหรับเก็บถาวร
Options.TsaUrl := 'https://tsa.example.com/tsr';
Options.Reason := 'Approved for release';
if not Pdf.SignPades(OutputFile, Options) then
raise Exception.Create('The document could not be signed.');
end;
procedure TForm1.CheckSignatureLevel;
var
Result: TPadesValidationResult;
begin
Result := Pdf.ValidatePades;
if Result.IsCompliantAt(plB_LTA) and Result.IsCryptographicallyValid then
ShowMessage(Format('%d signature(s), %d archive time-stamp(s), verified.',
[Result.SignatureCount, Result.DocTimeStampCount]))
else
ShowMessage('The document does not reach the required PAdES baseline.');
end;
กรณีการใช้งานทั่วไป
- ระบบจัดการเอกสารที่มีการรวมรูปแบบของฟอร์มสำหรับการประมวลและตัวช่วยการสั่งพริ้นเตอร์และช่องโหว่ของการทำงานในการพิมพ์และค้นหาข้อมูล พร้อมการทำงานดูข้อมูลเอกสาร
- การลงระบบบัญชีและการประยุกต์เครื่องมือบนโปรแกรมจัดการแอปพลิเคชันเกี่ยวกับเรื่องของใบกำกับสินค้าสำหรับการรองรับกระบวนตรวจผ่านโครงระบบเกี่ยวกับตัวระบบของโปรแกรมเอกสารในมาตรฐานต่างๆ (PDF review, extraction) สำหรับจัดการเครื่องข้อมูลที่ใช้งานเป็นส่วนขยาย, ตรวจโครงรหัสสำหรับข้อมูลพร้อมเก็บสำรองรักษาระบบส่งเพื่อพิจารณาความพร้อมตามคุณสมบัติเครื่องพริ้นเตอร์, งานเกี่ยวกับการอ้างอิงใบเสร็จตามช่วงข้อมูลกลุ่มก้อนเอกสารที่มีค่าที่ถูกรองรับให้สามารถนำไปประยุกต์ส่งให้เป็นรายงานใบแนบ
- เครื่องมือจัดการที่ออกแบบขึ้นให้ทีมวิศวกรผู้ใช้ หรือระดับหน่วยบริหารต่างๆ หรือทีมสายการแพทย์และหน่วยจัดการดูแลผู้รับสิทธิต่างๆ สำหรับให้มีการตรวจดูตัวช่วยต่างๆ ระดับปฏิบัติบนซอฟต์แวร์ซึ่งถูกออกแบบในโครงสร้างหน้าแสดงโปรแกรม เพื่อตรวจโครงสร้าง, นำส่งงานเข้าพิมพ์, กำหนดรองรับตรวจสอบความถูกต้อง, สรุปประเมินค่าและเก็บข้อมูลต่างๆ โดยไม่ต้องทำการออกจากสภาพแวดล้อมที่ตั้งของแอปพลิเคชันเพื่อจัดการเอกสารชุดเหล่านั้น
- เครื่องมือสำหรับใช้ดึงข้อบังคับและความเข้ากันได้ เพื่อประเมินประมวลในกลุ่มความผิดปกติต่างๆ สำหรับระบบการจัดการเพื่อให้ข้อมูลตามค่าระบบมาตรฐานของ PDF/A, PDF/X, PDF/UA, PDF/E, PDF/R, หรือ PDF/VT การตรวจสอบเครื่องหมายตัวแปรที่มีประสิทธิภาพก่อนทำพิจารณาส่งข้อมูลระบบไฟล์งานออกนำสู่แอปพลิเคชันหรือกระบวนการตรวจประเมินรูปแบบการรองรับไฟล์ภายนอกและบันทึกสู่ระบบของการเก็บรักษาแบบปลอดภัยได้
- โปรแกรมหรือตัวช่วยรับแสดงภาพแบบสำหรับแอปพลิเคชันธุรกิจซึ่งเน้นดูภาพประมวลความไวต่ออัตราการโหลดเพื่อรับชม PDF (fast PDF display), สนับสนุนให้ทำกระบวนระบบการสั่งตัวส่งออกเอกสารหน้าตาในรูปแบบการแสดงหน้าในทางเลือกที่หลากหลายเพื่อระบบกระดาษ (page rasterization), สามารถดัดแปลงแก้ไขค่าข้อความเป็นฉบับเลียนแบบด้วยการก็อปปี้และสามารถระบุสั่งงานและระงับตรวจสอบกระบวนระบบในการสั่งพริ้นเตอร์งานหน้าจอตามต้องการได้อย่างสะดวก
- กระบวนการเอกสารที่ต้องลงลายเซ็นในภาคธุรกิจที่มีการกำกับดูแล ทั้งสัญญา ใบแจ้งหนี้ ใบส่งของ และระเบียนที่ต้องมีลายเซ็น PAdES ระดับ B-T หรือ B-LTA พร้อมไทม์สแตมป์ที่เชื่อถือได้ และต้องตรวจสอบย้อนหลังได้ต่อเนื่องหลายปี
- การแจกจ่ายเอกสารลับที่ต้องเข้ารหัสด้วย PDF 2.0 AES-256 พร้อมกำหนดสิทธิ์ที่ชัดเจน โดยแอปพลิเคชันเขียนการเข้ารหัสเอง ไม่ต้องพึ่งเครื่องมือภายนอกในขั้นตอนที่สอง
ควรเลือกผลิตภัณฑ์นี้เมื่อใด
- เลือก PDFium Delphi Component เมื่อแอปพลิเคชันต้องดู ตรวจสอบ ลงลายเซ็น เข้ารหัส และส่งมอบเอกสาร PDF ได้แก่ โครงสร้างพื้นฐานของโปรแกรมอ่านระดับมืออาชีพ การลงลายเซ็น PAdES การเข้ารหัส PDF 2.0 ตัวตรวจสอบมาตรฐานหกตระกูล เอาต์พุตแบบ linearized และ incremental ประสิทธิภาพกับไฟล์ขนาดใหญ่ การรองรับการเข้าถึง แบบฟอร์ม และการพิมพ์ ทั้งหมดจากแพ็กเกจเดียวพร้อมซอร์สโค้ด
- เลือก HotPDF Delphi Component เมื่อแอปพลิเคชันของคุณเน้นสร้างเอกสารและไม่ต้องการแจกจ่ายเอนจินการเรนเดอร์ใด ๆ เลย เพราะ HotPDF มีตัวเรนเดอร์ ตัวเข้ารหัส/ถอดรหัสภาพ เอนจินแบบอักษร การสร้างบาร์โค้ด การจัดวาง XFA และการตรวจสอบ Factur-X ในตัว และคอมไพล์รวมเข้าไปในไฟล์ปฏิบัติการของคุณโดยตรง
- เลือก PDF Library for Delphi เมื่อต้องการชุดเครื่องมือเดียวที่ครอบคลุมวงจรชีวิตเอกสารทั้งหมด หรือเมื่อต้องใช้ OCR การอ่านบาร์โค้ด การลงลายเซ็นด้วยโทเค็นฮาร์ดแวร์ PKCS#11 การตรวจสอบกับ EU trust list หรือการเรียกใช้ผ่าน DLL / ActiveX / Dylib จากภาษาอื่นที่ไม่ใช่ Delphi
ต้องการเปรียบเทียบทั้งตระกูลผลิตภัณฑ์ใช่ไหม ดูภาพรวมไลบรารีนักพัฒนา PDF เพื่อเทียบ PDFium Delphi Component, losLab PDF Library และ HotPDF Delphi Component แบบเคียงข้างกัน
คำถามที่พบบ่อย
PDFium Delphi Component เป็นเพียงตัวห่อหุ้มบาง ๆ ของ DLL PDFium หรือไม่
ไม่ใช่ PDFium ทำหน้าที่เรนเดอร์และอ่านเท่านั้น มันลงลายเซ็นเอกสารไม่ได้ เขียนการเข้ารหัสไม่ได้ ตรวจสอบมาตรฐาน PDF ไม่ได้ และสร้าง linearized, object stream หรือ incremental revision ไม่ได้ ในซอร์สโค้ด Object Pascal ราว 115,000 บรรทัดของแพ็กเกจนี้ มากกว่า 62,000 บรรทัดอยู่ในยูนิตที่ไม่มีสิ่งเทียบเท่าใน PDFium API และทำหน้าที่เหล่านั้นโดยตรง ได้แก่ การลงลายเซ็น PAdES B-B ถึง B-LTA, สแตกการเข้ารหัสลับ AES / SHA / ASN.1 ที่เขียนด้วย Pascal ล้วน, การเข้ารหัส PDF 2.0 AES-256, ตัวตรวจสอบมาตรฐาน ISO หกตระกูล, ตัวสร้างไฟล์ PDF ที่พัฒนาเอง, XFDF, XMP รวมถึงสถาปัตยกรรมของโปรแกรมแสดงผล โปรแกรมอ่าน และการเข้าถึง
PDFium Delphi Component ใช้เอนจินใด
PDFium Delphi Component ใช้ PDFium ซึ่งเป็นตระกูลเอนจินโอเพนซอร์สเดียวกับที่อยู่เบื้องหลังการแสดง PDF ของ Chromium สำหรับการเรนเดอร์หน้าและการอ่านเอกสาร ส่วนทุกอย่างที่เอนจินไม่มีให้ losLab เขียนขึ้นเองด้วย Object Pascal ได้แก่ โมเดลคอมโพเนนต์, ชั้นการสร้างไฟล์และ revision ของ PDF, ลายเซ็นดิจิทัล, การเข้ารหัส, การตรวจสอบมาตรฐาน, สถาปัตยกรรมโปรแกรมอ่าน, ชั้นการเข้าถึง, ตัวอย่าง และการทดสอบ
PDFium Delphi Component ลงลายเซ็นดิจิทัลในเอกสาร PDF ได้หรือไม่
ได้ คอมโพเนนต์นี้รองรับโปรไฟล์พื้นฐาน PAdES ตาม ETSI EN 319 142-1 ระดับ B-B, B-T, B-LT และ B-LTA ทั้งการสร้าง CMS / CAdES SignedData ตาม RFC 5652, การขอไทม์สแตมป์ RFC 3161 จาก TSA, การรวบรวมห่วงโซ่ใบรับรองเข้าสู่ Document Security Store และไทม์สแตมป์สำหรับการเก็บถาวร คีย์สำหรับลงลายเซ็นเรียกใช้ผ่านแบ็กเอนด์ Windows CNG ด้วย RSA-PSS, PKCS#1 หรือ ECDSA ขณะที่ PDFium เองอ่านได้เพียงพจนานุกรมลายเซ็นที่มีอยู่แล้วเท่านั้น
เข้ารหัสเอกสาร PDF ได้หรือไม่
ได้ SaveAsEncrypted เขียนการเข้ารหัส AES-256 ตาม ISO 32000-2 ครอบคลุมการอนุมานแฮชรหัสผ่านแบบ R6 ของอัลกอริทึม 2.B, รายการพจนานุกรม /O /U /OE /UE /Perms และการเข้ารหัสสตรีมและสตริงอย่างครบถ้วน รองรับ ISO/TS 32003 AES-GCM และโทเค็น ISO/TS 32004 PDF MAC ด้วย ไพรมิทีฟ AES, SHA-256/384/512, HMAC และ ASN.1 ทั้งหมดเขียนด้วย Object Pascal ล้วนโดยไม่พึ่งไลบรารี C ภายนอก
รองรับ Lazarus และ Free Pascal หรือไม่
รองรับ แพ็กเกจประกอบด้วยไฟล์แพ็กเกจ Lazarus / Free Pascal และเดโม LCL พร้อมคอมโพเนนต์ VCL สำหรับ Delphi และ C++Builder
เปิดไฟล์ PDF ขนาดใหญ่มากได้เร็วเพียงใด
โปรแกรมอ่านใช้การเข้าถึง PDFium แบบค้นตำแหน่งและตามต้องการ แทนการโหลดทั้งไฟล์ล่วงหน้า PDF ขนาด 2.x GB จึงอาจพร้อมใช้งานได้เกือบในทันที
สร้างหรือแก้ไขเอกสาร PDF ได้หรือไม่
รองรับการประกอบเอกสาร เช่น สร้าง เพิ่ม ลบ นำเข้า และย้ายหน้า การจัดวาง N-up ลายน้ำ ตราประทับ และการอัปเดตเนื้อหาหน้า
จัดการฟอร์ม AcroForm และ XFA ได้หรือไม่
ได้ รองรับฟิลด์ AcroForm โฟกัสและข้อความที่เลือก ย้อนกลับและทำซ้ำ ลักษณะที่สร้างขึ้น แฟล็กฟิลด์ การทำให้แบน และการตรวจหาสถานะ XFA
ตรวจสอบมาตรฐาน PDF ใดได้บ้าง
มาตรฐานหกตระกูล แต่ละตระกูลมีตัวตรวจสอบของตัวเองพร้อมตัวช่วยบันทึกหรือฉีดมาร์กเกอร์ที่เข้าคู่กัน ได้แก่ PDF/A (ISO 19005 ส่วนที่ 1 ถึง 4 รวมถึง A-4 base/f/e ที่อิงกับ PDF 2.0), PDF/X (ISO 15930 รวมถึง X-6), PDF/UA (ISO 14289-1), PDF/E (ISO 24517-1), PDF/VT (ISO 16612-2 รวมถึงการบรรจุสตรีม MIME แบบ VT-2s) และ PDF/R (ISO 23504-1) ส่วนโครงสร้างพื้นฐาน PAdES ตรวจสอบแยกต่างหากตาม ETSI EN 319 142-1 รายงานพรีไฟลต์ส่งออกได้เป็น TXT, HTML, Markdown, JSON, CSV, SARIF 2.1.0, JUnit XML และ NDJSON ตัวตรวจสอบครอบคลุมระดับมาร์กเกอร์และข้อกำหนดระดับไฟล์ที่ขยายเพิ่มขึ้นเรื่อย ๆ หากต้องการการรับรองอย่างเป็นทางการ ควรใช้ควบคู่กับระบบตรวจสอบเฉพาะทาง
มีค่าลิขสิทธิ์ขณะรันหรือค่าธรรมเนียมต่อผู้ใช้หรือไม่
ไม่มี แอปพลิเคชันที่ได้รับอนุญาตเผยแพร่ได้โดยไม่มีค่าลิขสิทธิ์ และไม่มีค่ารันไทม์ต่อเอกสารหรือผู้ใช้ปลายทาง
สิทธิ์ใช้งานรวมอะไรบ้างและต่ออายุอย่างไร
สิทธิ์ใช้งานใหม่รวมซอร์สโค้ด Object Pascal การอัปเดตหนึ่งปี และการสนับสนุนทางอีเมลหนึ่งปี ลูกค้าปัจจุบันต่ออายุสิทธิ์การอัปเดตได้ที่ 40% ของราคาเต็ม
ค้นพบเพิ่มเติมจากคอมโพเนนต์ PDF และการพัฒนาสเปรดชีตของ Delphi
สมัครรับข้อมูลอัปเดตผลิตภัณฑ์
สมัครสมาชิกเพื่อรับข้อมูลอัปเดตล่าสุดทางอีเมลของคุณ
