property ModifiedDate: WString; // read only
ModifiedDate는 문서 Information
딕셔너리(PDF 1.7 스펙 14.3.3절)의 /ModDate 항목을 PDF 날짜 리터럴 그대로 반환합니다. PDF는
타임스탬프를 D:YYYYMMDDHHmmSSOHH'mm' 형식의 리터럴 날짜 문자열로
저장합니다 — 예컨대
D:20260514103015+08'00'는 2026년 5월 14일 10:30:15(UTC+08:00)를 뜻하고,
D: 접두사와 뒤따르는 어포스트로피는 리터럴 문법의 일부입니다
(PDF 1.7 스펙 7.9.4절)
Active가 False이거나, 문서 Info 딕셔너리가 없거나,
/ModDate가 기록되지 않았으면 문자열은 비어 있습니다. 생성 도구는 저장 / 증분 업데이트 때마다
이 항목을 갱신하므로 ModifiedDate를 CreationDate와 비교하면
원본 렌더링 이후 파일이 편집되었는지 빠르게 판별할 수 있습니다
반환값은 파싱된 TDateTime이 아니라 원본 리터럴이며,
EncodeDateTime을 호출하기 전에 D: 접두사, 선택적 시간대, 뒤따르는 어포스트로피를 떼어 내세요. 아니면
(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})([+-Z])(\d{2})'(\d{2})'를 잡아내는
정규식을 쓰면 됩니다
+08'00') — ISO-8601이 쓰는 콜론 형식이 아닙니다D: 접두사를 뗀 뒤 문자열을 ASCII 사전순 정렬
가능한 것으로 취급하세요 — 이 형식은 초 필드까지
사전순 비교로 올바르게 정렬됩니다
var Raw: WString;
Raw := Pdf1.ModifiedDate;
if Raw <> '' then
begin
// e.g. "D:20260514103015+08'00'"
Memo1.Lines.Add('Last modified: ' + Raw);
end;