HotPDF Enhancement Delivery Plan
2026년 10월 8일에 version 2.800.2 기준으로 시작했으며, 아래 acceptance 항목이 모두 구현되고 검증될 때까지 지속 전달 목표는 계속 유효합니다
이후의 남은 기능 완료 목표는 활성입니다. 과거 체크리스트는 일반 렌더링, FDF 전송, 리치 텍스트 CSS, 동적 XFA 호환성의 완료를 입증하지 않습니다
완료된 작업은 동작하는 public API, 의미 있는 non-GUI acceptance 검사, 미국 영어 기준 문서, 동기화된 release metadata, 로컬 release commit을 요구합니다
호환성은 명시적으로 지원하는 입력과 관측 가능한 진단으로 정의되고, interface placeholder, 검증되지 않은 구현, 지원하지 않는 기능 거부는 해당 기능을 완료한 것이 아닙니다
전달 체크리스트
| 작업 스트림 | acceptance 기준 | 상태 |
|---|---|---|
| JSON 및 C ABI 동등성 | 구조화 HTML/XHTML/XML/JSON과 typed table CSV/JSON 내보내기, 외부 OCR 엔진, incremental 서명과 기존 signature 필드, 문서 비교, capability 탐색, 취소, 리소스 한도, failure-safe 공개 | 진행 중: 구조화 및 typed table 내보내기는 구현됐고 외부 OCR, incremental 서명, 비교는 남음 |
| HTML 비즈니스 template | flex/grid 안의 image와 form control, 중첩 container, 줄바꿈 flex row, grid column span, 통제된 font-face 리소스, 인보이스·보고서·2단 계약서 regression fixture | 완료: 중첩 비즈니스 layout, wrapping/span, image/form과 통제된 폰트를 Win32/Win64에서 검증 |
| 스캔 문서 처리 | 페이지 전체 orientation, 임의 각도 deskew, border/그림자 정리, 상한 있는 perspective 보정, 가역 coordinate mapping, OCR에서 구조화 data로 이어지는 workflow | 계획됨 |
| PDF/A 아카이브 변환 | 선택적인 보이는 annotation/widget appearance 합성, 검색 가능한 text 유지, 문서화된 text/vector 보존 변환 profile, 검증, 명시적 loss 보고, atomic 출력 | 계획됨 |
| 계약서 비교 | 문단 alignment, 양쪽 소스 위치를 담은 word/sentence insert/delete/replace record, 설정 가능한 boilerplate 제외, 주석 달린 PDF 또는 HTML review 출력 | 완료: 양방향 계약서 편집, 이동, 제외와 review artifact를 Delphi와 FPC에서 검증 |
| 상한 있는 문단 편집 | 명시적 page rectangle 안 reflow, 폰트와 폭 변경, 인접 내용 충돌 보고, preview/commit/rollback, 지원되는 cross-baseline과 Form text 편집 | 계획됨 |
| XLSX table 내보내기 | typed 숫자/날짜/통화/백분율, 병합된 셀, 소스 page metadata, 상한 있는 리소스, failure-safe 출력을 갖춘 Office 비의존 XLSX | 완료: 네이티브, JSON, C ABI workbook을 Win32/Win64와 독립 reader acceptance로 검증 |
| 전자 인보이스 profile | 버전 관리되는 profile 규칙 등록, 올바른 Factur-X dispatch, 전용 XRechnung과 프랑스 profile 리소스, 명시적 검증 범위, 유효/무효 공식 acceptance fixture | 완료: 버전 관리 registry, 공식 XRechnung과 프랑스 CTC 레이어, 실제 Saxon acceptance |
| Linux headless 배포 | Windows나 활성 데스크톱 없이 parsing, text, form, security/서명, 지원되는 rendering을 위한 실제 Linux ELF 빌드와 non-GUI acceptance | 진행 중: 실제 Linux portable parsing, object I/O, 압축, cryptography, writer, text/font 경로는 완료, 전체 문서·form·서명·rendering 통합은 남음 |
| 동적 XFA 호환성 | 예산이 적용된 conditional event, 명시적 data binding, 인스턴스별 presentation, host painter/accessibility 통합, 재현 가능한 동적 form fixture | 계획됨 |
| barcode 인식 | raster당 여러 symbol, Data Matrix perspective sampling, 상한 있는 인식, 소스 좌표, 회전/perspective/손상 symbol fixture | 진행 중: multi-symbol과 perspective regression acceptance는 완료, 통합은 남음 |
릴리스 근거
Version 2.801.0은 구조화 및 typed table 내보내기 연산을 추가하고, Win32와 Win64 연산 suite는 30개 새 export case를 포함해 각각 121개 테스트를 통과하며, 독립 JSON/XML/HTML/CSV reader가 partial callback, budget 실패, 공개 취소와 함께 실제 Win64 ABI DLL을 검증합니다
Version 2.802.0은 네이티브, JSON, C ABI XLSX 내보내기를 추가하고, Win32와 Win64는 각각 134개 연산 및 workbook case를 통과하며, 실제 DLL 출력은 typed 값과 소스 page 선택으로 ZIP CRC와 독립 XML 파싱을 통과합니다
Version 2.803.0은 명시적 인보이스 규칙 registry와 공식 XRechnung 및 프랑스 CTC 검증을 추가하고, Win32와 Win64는 실제 국가 규칙 positive/negative sample, 잘못된 엔진 설정, DTD 거부, 상한 있는 프로세스 출력을 포함해 각각 17개 case를 통과합니다
Version 2.804.0은 native Linux FPC 3.2.2와 3.3.1에서 여덟 regression group으로 Linux portable core를 릴리스하고 Windows compiler 검사와 일치하며 Delphi/C++Builder type alias를 유지하고, 전체 Linux 문서·form·서명·rendering acceptance는 계속 진행 중입니다
Version 2.805.0은 28개 Win32와 28개 Win64 regression case, 실제 PDF reload, 네이티브 필드, image object, 통제된 폰트 embedding, fallback과 리소스 예산 검사로 HTML 비즈니스 template 작업 스트림을 완료합니다
Version 2.806.0은 플랫폼별 10개 Win32와 10개 Win64 Delphi case, 다섯 FPC acceptance group으로 계약서 비교 작업 스트림을 완료하며, 실제 멀티 page wording 편집, 교차 page 문단, 중복 조항, Unicode review 출력, stale 소스 거부, 예산과 취소를 다룹니다
Version 2.807.0은 99개 Win32와 99개 Win64 검사로 바코드 인식 작업 스트림을 완료합니다. 여기에는 혼합 심볼, 투시, 손상 심볼, 소스 보존, 기하, 예산, 취소 검사 18건이 새로 들어갑니다. Windows FPC 양 플랫폼은 네이티브 스캐너와 기하 헬퍼를 컴파일합니다
Version 2.808.0은 네이티브 헤드리스 classic-xref 문서 로딩, 상속된 리소스와 중첩 Form 텍스트, Unicode AcroForm 조회와 값 채우기, 상한이 적용된 원자적 증분 저장을 더합니다. 여섯 네이티브 Linux FPC 3.2.2/3.3.1 및 Windows FPC/Delphi 대상은 각각 46건의 단정을 통과하고, 생성된 C++ 인터페이스와 독립 pypdf/MuPDF 리더가 이 첫 문서 프로필을 검증합니다
Version 2.809.0은 Tesseract CLI/DLL과 RapidOCR CLI/DLL을 JSON 및 C ABI OCR 작업에 더합니다. Win32와 Win64는 각각 새 연산 case 39건과 기존 연산/내보내기 case 134건을 검증하고, 실제 Tesseract와 독립 PDF 리더는 실제 Win64 ABI DLL을 거쳐 검색 가능한 텍스트와 변하지 않은 스캔 픽셀을 검증합니다
Version 2.810.0은 16개 Win32와 16개 Win64 Delphi 테스트, 플랫폼별 여섯 실제 Windows FPC 검사로 스캔 전처리와 구조화 OCR을 완료합니다. live Tesseract는 37.5도 스캔을 포함한 네 방향과 여섯 보정 래스터 변형을 검증하고, ±179.25도까지의 기하, 작업/할당 한도, 프로세스 출력 초과, 진행 중 취소, 소스 보존, semantic 출력이 검증됩니다
Version 2.811.0은 공유 xref 스트림과 객체 스트림 검증, hybrid 리비전 우선순위, 정확한 넓은 숫자 토큰, 압축 객체의 소스 보존 왕복을 더합니다. 네이티브 Linux와 Windows 문서/코어 acceptance와 독립 리더가 확장 프로필을 검증하고, Delphi 플랫폼당 파서 회귀 case 66건은 기존 성능 게이트를 유지합니다
Version 2.812.0은 PDF/A 아카이브 강화 작업 스트림을 완료합니다. Delphi Win32와 Win64는 각각 보존 case 24건과 기존 래스터 case 47건을 통과하고, 새 Windows FPC와 C++Builder 인터페이스가 컴파일되며, 독립 pypdf/MuPDF는 원본 콘텐츠와 리소스를 검증하고, 생성된 appearance/OCR 아티팩트 3개는 실패 규칙이나 검사 0건으로 veraPDF PDF/A-4를 통과합니다
Version 2.813.0은 아키텍처당 20개 Delphi case와 아키텍처당 일곱 FPC acceptance group, 네 출력 전체의 독립 텍스트/렌더 검사로 상한이 적용된 단락 편집을 완료합니다. 반복 저장 회귀는 그래프가 flush된 뒤에도 편집을 유지합니다
Version 2.814.0은 네이티브 헤드리스 프로필에 AES-256 보안을 더합니다. 실제 Linux FPC 툴체인 둘, Windows FPC 대상 둘, Delphi 대상 둘은 각각 기본 단정 64건, 프로바이더 단정 81건, 암호화 문서 단정 82건을 통과하고, C++Builder 공개 헤더가 컴파일되며, 독립 엄격 리더는 암호화 출력 36개와 보존된 소스 접두부를 검증합니다
Version 2.815.0은 문서화된 instance-presentation 헬퍼 프로필로 동적 XFA 호스트 어댑터 작업 스트림을 완료합니다. Delphi 아키텍처마다 새 case 23건과 호환 case 83건을 통과하고, 새 FPC 소스와 C++Builder 헤더 대상 양쪽이 컴파일되며, 독립 pypdf/XML 리더는 영속된 데이터와 identity를 검증합니다
Version 2.816.0은 네이티브 스트리밍 OpenSSL 3 CMS와 정확한 PDF 서명 검증을 더합니다. 여섯 네이티브 Linux/Windows 컴파일러 대상은 각각 프로바이더 단정 40건과 문서 단정 13건을 통과하고, 원본 Windows 검증기가 생성된 서명을 인증하며, C++Builder 공개 헤더 양쪽이 컴파일되고, 독립 OpenSSL/pypdf/MuPDF 검사가 실제 DER과 PDF 픽스처를 검증합니다
Version 2.817.0은 JSON/C ABI 패리티를 완료합니다. 아키텍처마다 네이티브/FPC 서명 단정 34건, 실제 DLL 서명 단정 516건, 독립 CMS 검사 11건을 통과하고, 비교는 아키텍처별 네이티브/FPC 단정 28건과 실제 DLL 단정 82건 더하기 독립 JSON/HTML/PDF 검사 123건을 통과하며, 기존 연산·ABI·OCR 회귀는 계속 녹색입니다
Version 2.818.0은 네이티브 헤드리스 증분 PDF 서명 공개를 더합니다. 여섯 Linux/Windows 컴파일러 대상은 각각 plain/CAdES 단정 45건과 암호화 서명 단정 31건을 통과하고, C++Builder 인터페이스 양쪽이 컴파일되며, 독립 리더와 OpenSSL은 암호화 서명 검사를 약화시키지 않고 실제 PDF 54개와 ByteRange 서명 60건을 검증합니다
Version 2.819.0은 네이티브 CPU Cairo/FreeType PNG 렌더링과 정준 표준 폰트 진행 폭을 더합니다. 네이티브 Linux FPC 툴체인 양쪽은 각각 상한이 적용된 렌더링 단정 128건과 독립 pypdf/MuPDF 픽셀/기하 단정 946건을 통과하고, Windows 컴파일러 대상 넷이 새 소스에서 빌드되며, C++Builder 공개 헤더 양쪽이 컴파일되고, 표준 폰트 회귀는 실제 페이지 15개에 걸친 독립 문자 원점 1085건과 일치합니다
Version 2.820.0은 실제 내장 Unicode 위젯 appearance로 네이티브 Linux 작업 스트림을 완료합니다. Linux FPC 툴체인마다 메타데이터 단정 19건과 appearance 단정 58건을 통과하고, Windows 컴파일러 대상 넷은 각각 19건과 52건을 통과하며, C++Builder 인터페이스 양쪽이 컴파일되고, 독립 리더는 원본 소스 접두부, AES 보안, 정확한 폰트/글리프/ToUnicode 데이터, 래스터 충실도를 포함한 단정 1294건으로 실제 PDF 42개를 검증합니다
원래 열한 개의 유계 작업 스트림은 위에 릴리스 버전 증거가 있습니다. 이후 완료 목표에서 요청한 더 넓은 기능은 구현과 요구된 acceptance가 완료될 때까지 열려 있습니다
활성 기능 완료
완료 계획은 이후 릴리스와 남은 작업을 기록합니다. 후보 구현과 부분 대상 결과는 릴리스된 기능이나 목표 완료를 입증하지 않습니다
| 활성 전달 항목 | 남은 acceptance |
|---|---|
| FDF와 주석 전송 | 릴리스된 2.973.0의 바이너리 FDF 주석 그래프, appearance 상태, 공유 리소스, 트랜잭션 교체와 2.974.0의 트랜잭션 주석 제거를 기반으로 구축하세요. Widget 필드 트리 제거, 내장 파일, 더 넓은 action 체인, 추가 필드 정책 모델링을 독립 출력 검증과 함께 완료해야 합니다 |
| 네이티브 렌더링 | 릴리스된 2.972.0의 주석 기본 appearance와 텍스트 클리핑을 기반으로 구축하세요. 기본값이 아닌 가변 폰트, 추가 그래픽 상태, 폰트와 변환 조합, 독립 지오메트리와 래스터 비교, 인쇄 정책, 시험 소스 재구축을 완료해야 합니다 |
| 리치 텍스트 CSS와 레이아웃 | 릴리스된 스타일시트, 미디어 프로파일, 외부 리소스, 유한 숫자 수학을 기반으로 구축하세요. 추가 속성, selector, 미디어 feature, 테이블, 이미지, 일반 레이아웃을 완료해야 합니다 |
| 동적 XFA 런타임 | 일반 template과 form DOM 편집, 명시적 재병합, 발생과 바인딩 규칙, 안정적인 alias, 외부 미디어, 추가 소비자를 트랜잭션 취소와 영속 reader 검증과 함께 다룹니다 |
현재 FPC 구현과 릴리스 acceptance는 모든 플랫폼에서 3.3.1 이상을 요구하며 실제 컴파일러 빌드를 기록합니다. 위의 오래된 컴파일러 결과는 역사적 identity를 유지하며 현재 릴리스 관문이 아닙니다
실행 제약
표준 프로젝트 디렉터리에서 직접 작업하고, 관련 없는 편집은 보존하고, viewer 실행을 억제한 상태로 non-GUI 검사를 돌리고, task 변경만 stage하며, 절대 push하지 않습니다
구현 중에는 표준 en-us 문서만 갱신하고, 번역 동기화는 별도 task입니다