PDF Library for Delphi สำรองฟอนต์อัตโนมัติสำหรับข้อความ CJK และอิโมจิ
PDF Library for Delphi ไล่หาฟอนต์สำรองทีละคลัสเตอร์เมื่อฟอนต์หลักวาดกลิฟ CJK สัญลักษณ์ หรืออิโมจิไม่ได้ พร้อม SetAutomaticFontFallback และรายงาน JSON กลิฟที่ขาด
บล็อกการพัฒนาซอฟต์แวร์ของ losLab
Software Development Blog
PDF Library for Delphi ไล่หาฟอนต์สำรองทีละคลัสเตอร์เมื่อฟอนต์หลักวาดกลิฟ CJK สัญลักษณ์ หรืออิโมจิไม่ได้ พร้อม SetAutomaticFontFallback และรายงาน JSON กลิฟที่ขาด
PDF Library for Delphi ติดแท็กข้อความ หัวเรื่อง รูปภาพ และตารางในขณะที่วาด ทำให้เอาต์พุต PDF ที่เข้าถึงได้ไม่ต้องหุ้มทุกคำสั่งวาดด้วย BeginTag ด้วยมืออีกต่อไป
PDF Library for Delphi รับภาพ AVIF, HEIF และ JPEG XL ผ่าน AddModernImageFromFile โดยคงอัลฟา โปรไฟล์ ICC และแชนแนล 16 บิต ที่การแปลงผ่านบิตแมปมักทำหาย
PDF Library for Delphi วาด QR, PDF417, DataMatrix และ Code128 เป็นเวกเตอร์ลงหน้า PDF จาก Delphi พร้อมระดับการกู้คืนข้อมูลและการวัดขนาดสำหรับจัดเลย์เอาต์
PDFlibPas เสริมความแข็งแรงตัวถอดรหัส TIFF ใน Delphi ปฏิเสธ BigTIFF magic 43 ตามชื่อ ไม่รับ TIFF แบบ Tiled ตั้งแต่ขั้นแท็ก และจำกัดการถอดรหัสที่ 256 MiB
เขียน metadata คำสั่ง Web Capture SpiderInfo ลงใน catalog ของ PDF ด้วย PDFlibPas รองรับ indirect command dict, URL, ระดับความลึก และ whitelist ของ flag
SendDocumentByMail ของ PDF Library for Delphi ส่ง PDF เป็นไฟล์แนบผ่าน CDO และการเรียก CoInitializeEx ให้ตรง apartment คือสิ่งที่กันแบตช์หลายเธรดไม่ให้ล้ม
รวมไฟล์ PDF จากสแกนหน้าและหลัง (กลับด้าน) ให้เรียงลำดับหน้าถูกต้องด้วย PDF Library for Delphi CollateDocumentsEx ใน Delphi พร้อมสอดใบโดยไม่ซ้ำฟอนต์ที่ใช้ร่วมกัน
ร้อย preflight PDF/A, การลงนาม PAdES และการตรวจ ByteRange เข้าเป็นเวิร์กเบนช์ Delphi เดียว เพื่อให้รีวิชันที่คุณตรวจคือรีวิชันเดียวกับที่ลงลายเซ็นจริง
TPDFContentStateTracker เล่นซ้ำ content stream ของหน้า PDF ใน Delphi โดยไม่ต้องเรนเดอร์ พร้อมติดตาม CTM, text matrix, ขอบเขต clip และสแตก q/Q ทุก operator
ConvertToPDFA ซ่อมแซมเอกสารเก็บถาวร ระบุ part PDF/A-4 ที่อ้างและตรวจผลก่อนยืนยัน ขณะที่ RepairDocumentMetadata ทำ Info dictionary และ XMP ให้ตรงกันใน Delphi
CopyForeignObject deep copy closure ของออบเจกต์ PDF ข้ามเอกสาร และเฉลยว่า back reference แบบวงวนของ /Parent พังเพราะอะไร ก่อนมีเงื่อนไข in-progress คอยดัก
ส่งออก TDataSet, FastReport, QuickReport หรือ ReportBuilder ใดๆ เป็น PDF ใน Delphi โดยใช้ losLab PDF Library พร้อมตารางที่มีการแบ่งหน้าและเอาต์พุตแบบไม่มีส่วนติ
ทำให้ผลลัพธ์ PDF จาก Delphi เหมือนกันทุกไบต์ด้วย trailer ID แบบกำหนดล่วงหน้า seed มาจากไหน ทำไมไฟล์เข้ารหัสยังคง ID เดิม และควร pin อะไรอีก losLab PDF Library
PDF Library for Delphi เปิดเอ็นจิน PDF ตัวเดียวเป็น Stdcall DLL, ActiveX แบบ Safecall และ dylib แบบ Cdecl พร้อมกับดักสตริงยืมและ handle ที่แต่ละบายดิงซ่อนไว้
PDF Library for Delphi แขวน action ระดับเอกสารอย่าง WillClose และ WillPrint ไว้ที่ Catalog /AA ส่วน Open กับ Close อยู่ที่ Page /AA พร้อมข้อจำกัดฝั่ง PDF/A
PDFlibPas ใช้งาน Ed448 ตาม RFC 8032 และเส้นโค้ง Brainpool สามเส้นตาม RFC 5639 ด้วย Object Pascal ล้วน โดยไม่พึ่งไลบรารีเข้ารหัสภายนอก พร้อมสาเหตุรากทั้งหกที่พบ
การปฏิบัติตามข้อกำหนด PDF/A ไม่ใช่การปฏิบัติตามข้อกำหนดของใบแจ้งหนี้ ดูวิธีที่ e-invoices ของ PDF Library for Delphi ผ่านทั้งการตรวจสอบคอนเทนเนอร์ด้วย veraPDF
แก้ไขข้อผิดพลาด preflight PDF/A 00030 ใน Delphi: EmbedMissingFonts ใน losLab PDF Library จะแนบโปรแกรมฟอนต์เข้ากับ PDF ที่มีอยู่โดยไม่ต้องสร้างพจนานุกรมฟอนต์ขึ้น
ทำไมตัวแปลง EMF เป็น PDF 6500 บรรทัดต้องการแค่เปลี่ยนเงื่อนไข compile ไม่ใช่เขียนใหม่ทั้งหมด และ field ULONG_PTR ของ hatch เพี้ยนตำแหน่ง record บน Win64 อย่างไร
PDF Library for Delphi retry รหัสผ่าน PDF ที่เข้ารหัสไว้ด้วยการสร้าง TPDFDocument ใหม่ทุกครั้งผ่าน callback OnPassword ไม่ใช่รีเซ็ตตัวเดิม และหยุดที่สิบหกครั้ง
อ่าน /Encrypt dictionary อย่างผู้ตรวจสอบด้วย PDF Library for Delphi ทั้งอัลกอริทึม ความยาวคีย์ AES-256 R5 กับ R6 บิตสิทธิ์ และกับดักตัวกรอง Identity
ใบแจ้งหนี้อิเล็กทรอนิกส์คือ PDF/A-3 ที่ฝัง XML ไว้ข้างใน ดูวิธีที่ PDF Library for Delphi ประกอบใบแจ้งหนี้ไฮบริด Factur-X และ ZUGFeRD ครบทุกโปรไฟล์จาก Delphi
PDF Library for Delphi ต่อไฟล์ PDF ด้วยการใช้ไบต์ต้นฉบับซ้ำและเลื่อน indirect reference ทีละอ็อบเจกต์ จึงข้ามรอบ parse และ serialize ใหม่ไปทั้งรอบ
เคลื่อนย้ายข้อมูลฟอร์ม PDF ระหว่าง AcroForm และระบบธุรกิจใน Delphi ด้วย losLab PDF Library: ค่า FDF และ XFDF, ฟิลด์แบบลำดับชั้น, Rich Text และ XFA XDP
AuditDocumentSpace ใน losLab PDF Library แจกแจงขนาดไฟล์ PDF ออกเป็น 12 หมวดหมู่ object ใน Delphi ได้อย่างไร เพื่อให้คุณวัดความเทอะทะก่อนบีบอัดจริง
PDF Library for Delphi EnumPageContentStatesEx เรียกเข้าไปยัง Form XObject ของ PDF ใน Delphi แบบวนซ้ำ ตรวจจับวงจรตาม call chain และจำกัดขอบเขตชื่อ resource
Free Pascal บน Win32 ต้องการออบเจกต์ COFF PDFlibPas จึงแยกชุดออบเจกต์ไว้ต่างหาก จัดระเบียบชื่อเซกชันใหม่ และตัด ABI ตัวช่วยจำนวนเต็ม 64 บิตของ Delphi ออก
หน้า PDF พกระบบพิกัดแผนที่ไว้ได้ ดูวิธีที่ PDF Library for Delphi อ่าน viewport ของ GeoPDF, measure dictionary และเฟรมภูมิศาสตร์แบบ WKT หรือ EPSG จาก Delphi
สร้าง action แบบ GoToR, GoToE และ Launch ด้วย PDF Library for Delphi ทั้งการกระโดดข้ามไฟล์ เป้าหมาย PDF ที่ฝังไว้ การเปิดโปรแกรมภายนอก และกับดักเลขหน้าฐานศูนย์
PDF Library for Delphi จัดเลย์เอาต์ HTML ที่ใช้ display flex และ grid ภายในหน้า PDF และแบ่งหน้าเชิงอรรถข้ามคอลัมน์และหน้าด้วยการนับเลขต่อเนื่อง
จัดข้อความ PDF ให้ไหลผ่านคอลัมน์ที่สมดุลกันพร้อมการแบ่งพยางค์ตามภาษาใน Delphi ด้วย PDF Library for Delphi ผ่าน DrawTextFlowColumns และ SetTextFlowHyphenation
เขียนการอัปเดตแบบเพิ่มหน่วยของ ISO 32000-1 ใน Delphi ด้วย AppendToStream ของ losLab PDF Library: รักษาลายเซ็นดิจิทัลและข้ามการเขียนซ้ำทั้งหมดของไฟล์ PDF
TPDFlibViewer commit ตัวแก้ไขฟิลด์ฟอร์มแบบ in-place ผ่าน OnExit การซ่อนหรือ free คอนโทรลจากใน handler ของมันเองจะยิง OnExit ซ้ำและทำให้ข้อมูลฟอร์มเสียหาย
เรียนรู้วิธีใช้ PDF Library for Delphi เชื่อมต่อการดำเนินการ Hide, ImportData, Named และ JavaScript เข้ากับฟิลด์และลิงก์ของฟอร์ม PDF ใน Delphi ฟิลด์ฟอร์ม PDF
สร้าง PDF viewer แบบโต้ตอบได้ใน Delphi VCL ด้วย TPDFlibViewer: เครื่องมือเมาส์ 5 แบบ, แอ็กชันสำเร็จรูป, การเน้นผลการค้นหา, การคลิกคำอธิบายประกอบ และการพิมพ์
PDFlibPas มี JBIG2 encoder แบบ Pascal ในตัวและแบบภายนอกเป็นทางเลือก และการย้าย backend ภายนอกไปบน Free Pascal จบลงที่ DLL ไม่ใช่ไฟล์ object ได้อย่างไร
PDFlibPas 3.538.0 ฝังตัวเข้ารหัส JBIG2 ภายนอกในโปรแกรม Free Pascal และ Lazarus พร้อมแก้ COMDAT ของ FPC ด้วย ObjConv โดยไม่ต้องแจกจ่าย DLL เพิ่มเติม
เปิด PDF ขนาดกิกะไบต์ในหลักมิลลิวินาทีด้วยการเข้าถึงตรงของ PDF Library for Delphi ทั้งแฮนเดิล PageRef, ลิสต์ merge แบบสตรีม, การดึงตามช่วงหน้า และการซ่อม xref
dictionary ของ LZW encoder นำหน้า decoder หนึ่ง entry ทั้งสองฝั่งจึงใช้ threshold ความกว้างของ code ต่างกัน ว่าด้วยวิธีที่ PDFlibPas ทำให้ EarlyChange ถูกต้อง
เหตุใดการลบหน้า PDF จึงไม่ทำให้ไฟล์เล็กลง และวิธีที่ mark-sweep garbage collection ใน Delphi กำจัดอ็อบเจกต์ที่ถูกทิ้งขว้างโดยไล่จาก root set ใน trailer
PDFlibPas อ่าน PDF ระดับกิกะไบต์ด้วยหน้าต่าง memory-mapped บานเดียวแบบเลื่อนได้ โดย LoadFromMappedFile อ่าน object ด้วย absolute offset โดยไม่ใช้ buffer เพิ่ม
PDF Library for Delphi ผสานเอกสาร AcroForm ด้วยนโยบายฟิลด์ซ้ำที่ชัดเจน ซึ่งปฏิเสธ ใช้ร่วมกัน หรือเปลี่ยนชื่อฟิลด์ที่มีชื่อเดียวกันได้อย่างปลอดภัย
PDFlibPas สร้าง FIPS 204 ML-DSA 44, 65 และ 87 ล้วนใน Object Pascal สำหรับ Delphi กับ FPC พร้อมเครื่องยนต์แบบใช้ร่วมกัน และบั๊ก sampling ที่เคยทำ KAT พัง
PDFlibPas เทียบเอกสารกับ revision ก่อนหน้าแล้วจัดทุกความต่างเข้า whitelist การบังคับใช้ DocMDP จึงเหลือเพียงการเทียบระดับเดียวกับนโยบายเท่านั้น
แปลงหน้า PDF เป็นบิตแมปขาวดำ 1 บิตและครอปเฉพาะบางส่วนใน Delphi ด้วย PDF Library for Delphi โดยใช้ GDI halftone down-conversion โดยไม่แตะ renderer เดิมเลย
สลับเอนจินในตัว, Cairo และ PDFium รายไฟล์ใน PDF Library for Delphi พร้อมการตรวจเอนจินตอนเริ่มโปรแกรม กับดักการสเกล DPI และห่วงโซ่ถอยกลับที่บันทึกล็อกเอง
วิธีที่ losLab PDF Library เขียน object stream และ xref stream ของ PDF 1.5 จาก Delphi ครอบคลุมโครงสร้าง ObjStm, type-2 entry, ความกว้างของฟิลด์ W
เลเยอร์ PDF ช่วยขับเคลื่อนแผนที่ แบบวาด CAD และรุ่นหลายภาษา เรียนรู้วิธีที่ PDF Library for Delphi สร้างและอ่านกลุ่มเนื้อหาทางเลือกพร้อมการกำหนดค่าใน Delphi
ไลบรารี PDF สำหรับ Delphi ส่วนใหญ่เขียนแอ็กชันของบุ๊กมาร์กและคำอธิบายประกอบได้ แต่ยังอ่านกลับไม่ได้ บทความนี้แสดงการตรวจสอบ GoTo, URI, Launch และ JavaScript
สร้างลายเซ็น PAdES ระดับ B-B, B-T และ B-LT ด้วย PDF Library for Delphi พร้อมการจองที่ให้ timestamp, การประกอบ DSS และการตรวจ ByteRange ก่อนเชื่อไฟล์ที่ลงนาม
PDFlibPas ผูกไฟล์ที่ฝังไว้เข้ากับหน้าใดหนึ่งโดยเฉพาะผ่านอาร์เรย์ /AF ตาม ISO 32000-2 14.13 โดยยังเก็บตัว payload ไว้ใน name tree ของ EmbeddedFiles เหมือนเดิม
เย็บหน้า PDF เคียงข้างกันหรือซ้อนทับกันด้วยความเที่ยงตรงของเวกเตอร์โดยใช้การจับภาพ Form XObject ของ losLab PDF Library และเทมเพลตลายน้ำที่ประกอบได้ใน Delphi
เรนเดอร์หน้า PDF แบบขนานจาก Delphi ด้วย losLab PDF Library: เหตุใด TPDFlib จึงต้องการหนึ่งอินสแตนซ์ต่อหนึ่งเธรดทำงาน, CoInitialize สำหรับ GDI+ และการทำบันทึก
ลดขนาดไฟล์ PDF ใน Delphi ด้วย losLab PDF Library: ทำ subset ฟอนต์ที่ฝังตัว, ลดขนาดรูปภาพที่มีขนาดใหญ่เกินไป และแปลงสตรีม LZW แบบเก่าเป็น Flate ในขั้นตอนเดียว
ExportPageMarkdown และ SaveDOCXToFile แปลงหน้า PDF เป็น Markdown เชิงความหมายหรือ DOCX จาก Delphi ทั้งหัวข้อที่อนุมาน รายการ และตาราง โดยไม่ต้องมี Office
รัน preflight ของ PDF/A และ PDF/UA จาก Delphi ด้วย PDF Library for Delphi ทั้งผลตรวจแบบมีโครงสร้าง รายงานที่นำไป diff ต่อได้ และการสอบทานซ้ำด้วย veraPDF
ใบแจ้งหนี้ Factur-X จะตก veraPDF ถ้าคุณสมบัติ XMP ไม่ได้ประกาศไว้ ดูวิธีที่ PDF Library for Delphi เติมสคีมาส่วนขยาย PDF/A-3 ให้เมทาดาตา fx จาก Delphi
PDF/E-1 มี XMP namespace เป็นของตัวเอง เรียก lifecycle metadata ครบชุด และห้ามทางหนีแบบ BX PDFlibPas จึง preflight เนื้อหาภายใต้เพดานที่กำหนดเอาไว้
PDFlibPas ตรวจชั้นฟอนต์ PDF/UA ใน Delphi ความกว้างกลิฟ resolve ผ่าน cmap กับ CIDToGIDMap กฎ CharSet กับ CIDSet แบบอนุรักษ์นิยม และการสแกน content stream
PDFlibPas สร้าง replacement template ของ PDF/VCR-1 เป็นสาขาของ StructTreeRoot save gate และ manifest จึงเดินทุก top level branch ไม่ใช่แค่สาขาแรก
DeduplicateSimilarImages รวมภาพใน PDF ที่ตาเห็นเหมือนกันแต่ต่างกันแค่การเข้ารหัส ด้วย perceptual hash เกณฑ์ความคลาดเคลื่อนสามชั้น และโหมดทดลองรันก่อนแก้จริง
ตัวอย่างก่อนพิมพ์ Delphi ที่ตรงกับหน้าที่พิมพ์: เรนเดอร์บนบริบทอุปกรณ์, เครื่องพิมพ์เสมือน, การปรับสเกล และการคงอยู่ของ DevMode ด้วย PDF Library for Delphi
โปรไฟล์เส้นทางเรนเดอร์ของ PDF Library for Delphi แล้วเปลี่ยนการสแกน dictionary เชิงเส้นเป็น hash index, gamma ต่อพิกเซลเป็น LUT และการต่อ string เป็น builder
PDFlibPas เปิด PDF หลายกิกะไบต์จากเซิร์ฟเวอร์ HTTP range กับ object storage: คอลแบ็กอ่าน แคชแนว chunk request coalescing และ prefetch แบบวนซ้ำ
PDF Library for Delphi เปิด PDF ที่เข้ารหัสด้วย raw file encryption key แบบ hex ตรวจ verifier และให้ Direct Access แบบอ่านอย่างเดียวโดยไม่ต้องใช้รหัสผ่าน
วิธีที่ PDF Library for Delphi Delphi PDF Library สร้างตาราง xref ที่เสียหายขึ้นใหม่ด้วยการสแกน token รอบเดียวที่ไม่สนใจ string, comment และ byte ของ stream
RecolorDocument ย้าย PDF เข้าสู่เกรย์ RGB หรือ CMYK โดยไม่ต้องวาดใหม่ แปลง colour operator รูปภาพ indexed palette และ gradient stop ไปพร้อมกัน
แทนที่หน้า PDF แบบ in-place ด้วย PDF Library for Delphi โดยคงอ็อบเจกต์หน้าเดิมไว้และย้ายเฉพาะคีย์ฝั่งรูปลักษณ์ bookmark ลิงก์ และ form widget จึงไม่พัง
รหัสผ่าน AES-256 ที่ไม่ใช่ ASCII จะเปิดไม่ได้ในรีดเดอร์ตัวอื่นถ้าขาด SASLprep ดูวิธีที่ PDF Library for Delphi เตรียมรหัสผ่านตาม ISO 32000-2 และ RFC 4013
PLCreateSelfSignedCertificate สร้างใบรับรองทดสอบ RSA แบบเซ็นเองใน Delphi ผ่าน Win32 CryptoAPI ทั้ง flag ความยาวคีย์ของ CryptGenKey และกับดัก CRYPT_EXPORTABLE
PDFlibPas รัน SHA-3 และ SHAKE256 บนแกน Keccak-f[1600] เดียวกัน แยกกันด้วย byte domain pad10*1 กับกฎ rate เท่านั้น พร้อม XOF แบบ streaming สำหรับ Delphi
รูปร่างของ implementation แทนที่ว่างเปล่าสามแบบ เหตุใดแบบที่รายงานความสำเร็จจึงหายากที่สุด และวิธีวินิจฉัยด้วยการส่องไบต์ของผลลัพธ์ที่ไหลออกมา
PDF Library for Delphi สร้าง soft mask แบบ alpha และ luminosity ตั้งค่ารายการ Matte ของภาพ และทำให้ความโปร่งใสแบนราบเป็นไฟล์ PDF 1.3 ที่พร้อมพิมพ์
สร้าง PDF แบบติดแท็กจาก Delphi ด้วย PDF Library for Delphi: โครงสร้างต้นไม้ขณะวาด, ความหมายของหัวตาราง, อาร์ติแฟกต์ และการวินิจฉัย PDF/UA ก่อนทำการบันทึก
PDF Library for Delphi เชื่อมตำแหน่งอักขระ UTF-16 กลับไปยัง byte ใน content stream เพื่อแก้เฉพาะจุด โดยคง TJ kerning และตรวจ fingerprint กันตำแหน่ง stale
แยกข้อความที่มีตำแหน่ง, สตรีมรูปภาพต้นฉบับ และเมทาดาตาฟอนต์จาก PDF ใน Delphi ด้วย PDF Library for Delphi พร้อมตัวเลือกการแยกที่เหมาะกับงานค้นหาและงานตรวจสอบ
ค้นหาข้อความใน PDF ตามช่วงหน้าใน Delphi ด้วย PDF Library for Delphi โดยแต่ละผลลัพธ์บอกหน้าที่พบและกรอบพิกัดของตำแหน่ง พร้อมไล่บล็อกข้อความและรูปภาพในหน้าได้
การปกปิดข้อมูล PDF ที่แท้จริงใน Delphi ด้วย losLab PDF Library: RedactRegion จะลบไบต์สตรีมเนื้อหาออกไปจริง ในขณะที่ SanitizeDocument จะลบเมทาดาตา สคริปต์
PDF Library for Delphi จับคู่ข้อความตามความเทียบเท่าเชิงมาตรฐาน คำค้นแบบ NFC จึงเจอเนื้อหา NFD และทุกผลลัพธ์ยังหยุดบนขอบเขตกลุ่มอักขระที่มองเห็นเสมอ
ตัววิเคราะห์ PDF คือเป้าหมายการโจมตี เรียนรู้ข้อบกพร่องจริงเกี่ยวกับจำนวนเต็มล้น การเขียนนอกขอบเขต และการรันซ้ำแบบไม่สิ้นสุดในตัวถอดรหัสและวิธีแก้ไขใน Delphi
หน้า PDF คือผืนผ้าใบเวกเตอร์ 2 มิติเต็มตัว ดูวิธีที่ PDF Library for Delphi วาดเส้นทาง เส้นโค้งเบซิเยร์ และไล่โทนตามแนวแกน พร้อมกฎเติมสี even-odd กับ nonzero
SetVerticalWritingMode ทำให้ PDF Library for Delphi วางข้อความญี่ปุ่นและจีนไล่ลงหน้าด้วยฟอนต์ Type0 พร้อมรูปกลิฟแนวตั้งและ metric ที่ตัวฟอนต์จัดหามาให้
เร่งความเร็ว PDF viewer ใน Delphi ด้วยแคชหน้าเอกสารบนดิสก์ข้ามเซสชัน และ DPI ต่อจอภาพ: ลายนิ้วมือ FNV-1a, การตัดโฟลเดอร์แบบ LRU และ WM_DPICHANGED ใน losLab PDF
PDF Library for Delphi นำเข้าฟอนต์เว็บ WOFF2 และสร้างอินสแตนซ์แกนแปรผันของ TrueType และ CFF2 เป็นฟอนต์คงที่ที่ฝัง ทำ subset และดึงข้อมูลได้ตามปกติ
กรอกข้อมูลแถวที่ซ้ำกันในฟอร์ม XFA แบบไดนามิกจาก Delphi โดยใช้นิพจน์เส้นทาง XFA 3.3 SOM ใน losLab PDF Library: รูท $record, [*] occurrences และ predicates