THPDFHeadlessDocument.SaveRichTextFieldUpdatesToFile
function SaveRichTextFieldUpdatesToFile(const FileName: string;
const Updates: THPDFHeadlessRichTextFieldUpdates;
const Options: THPDFHeadlessFormDataOptions): Integer;
scalar 텍스트, choice, 버튼 갱신을 원본 typed 리치 텍스트 run과 함께 담은 독립 PDF 하나를 준비해 원자적으로 발행합니다. 바뀐 필드 수를 반환하고 로드된 문서 그래프는 그대로 둡니다
현재 그래프는 갱신 적용 전에 비공개 인증 리비전으로 직렬화됩니다. 저장되지 않은 기존 페이지·필드 편집, AES R5/R6 자격, 암호화 식별자, 서명된 소스 접두부는 후보에서 계속 쓸 수 있습니다
typed run은 리치 XML 인코딩·디코딩 왕복 없이 appearance를 곧장 만듭니다. /V와 /RV는 authored 텍스트·스타일을 기술하고, /AP는 기존 appearance 엔진의 PDF 수치 정밀도를 원본 typed 크기·색에 유지합니다
typed no-op은 동등한 평문·리치 값과 모든 위젯에 대해 같은 생성 appearance 스트림, 풀린 폰트·리소스 그래프를 요구합니다. 비교는 기존 스트림을 복호화하고 간접 객체 참조를 정규화하며, 양자화된 /RV 색만 믿지 않습니다
덕분에 실제로 바뀌지 않은 읽기 전용·서명 잠금 필드를 통과시킬 수 있습니다. 실제 그리기 색, 크기, 공급 폰트, 위젯 appearance가 다르면 직렬화된 리치 값이 우연히 같더라도 보통 읽기 전용·FieldMDP·DocMDP 제약을 따릅니다
비교는 기존 appearance에 대해 보수적입니다. 시각 결과는 동등하지만 연산자나 리소스 표현이 다른 외부 authored PDF는 보통 보호 갱신이 필요할 수 있습니다
요청한 모든 필드가 바뀌지 않았고 로드 그래프에 대기 편집이 없으면, 발행된 PDF는 기존 AES 암호화 바이트와 인증 서명 리비전을 포함해 로드 소스와 바이트 단위로 같습니다. 빈 갱신 배열도 기존 소스 호환성 검사를 받으며 같은 규칙을 따릅니다
호출자 그래프의 대기 편집은 이 메서드가 필드 변경 0을 반환해도 후보에 한 번 직렬화됩니다. 무관한 저장되지 않은 페이지·필드 변경은 보존되고 원본 로드 그래프는 바뀌지 않습니다
갱신 없는 발행도 권한·서명 검증, 소스·대상 앨리어스 검사, 출력 예산 검사, 취소, 원자적 대상 교체를 수행합니다. 읽기 전용·잠긴 필드는 진짜 값·appearance 동등성을 요구합니다
이 바이트 보존 동작은 이 트랜잭션 메서드에만 적용됩니다. 일반 SaveToFile 메서드와 별도 FDF/XFDF 임포트 API는 기존 저장 동작을 유지합니다
필드 수, 중복 이름, Unicode, 값 크기, 텍스트 총용량은 Options를 씁니다. typed run 수, 글리프 총단위, 공급 폰트 바이트, 리치 값 바이트, 생성 객체, appearance 비교 바이트도 로드된 문서 한도를 씁니다
공유 managed 폰트 바이트 배열은 갱신 전체에서 한 번 셉니다. 서로 다른 할당은 바이트가 같아도 입력 폰트 용량을 따로 소비하지만, 생성 PDF 객체·출력 예산은 모든 appearance를 계속 커버합니다
폼·appearance 옵션에는 문서의 취소 토큰을 쓰세요. 잘못된 필드, 형식이 틀린 값, 권한, 실패한 서명 인증, 취소, 예산 실패는 이전 대상을 그대로 두고 소스·대상 앨리어스는 거절됩니다
이 API는 네이티브 혼합 트랜잭션을 다룹니다. Windows JSON typed-rich 채우기, 이전 작업 콜백 확장, 어노테이션 교환, 임베드·증분 FDF 데이터는 별도 워크플로입니다