function DecodeDate(const Value: string; out DateTime: TDateTime; out DateTimeOffset: Integer): Boolean;
| Value | string。PDF 日期格式的日期字串:D:YYYYMMDDHHmmSSOHH'mm'(例如 "D:20240515120000+08'00'") |
| DateTime | TDateTime。接收解碼後日期與時間值的輸出參數 |
| DateTimeOffset | Integer。接收以分鐘為單位之 UTC 偏移的輸出參數。正值表示 UTC 以東;負值表示以西 |
Value 成功解析為有效的 PDF 日期字串,則傳回 True。若字串為空、格式錯誤或不符合 PDF 日期格式,則傳回 FalseDecodeDate 是 PDFium 單元中的單元層級全域函式。它會剖析 PDF 日期字串,並將其轉換為 Delphi TDateTime 值,同時附帶以分鐘為單位的 UTC 時區偏移
PDF 文件以 D:YYYYMMDDHHmmSSOHH'mm' 格式儲存日期,其中 O 表示與 UTC 的關係(+、- 或 Z)。請使用此函式解碼 CreationDate 與 ModifiedDate 等屬性傳回的原始字串
DateTimeOffset 輸出參數包含帶正負號的分鐘 UTC 偏移(例如 UTC+8 得到 480,UTC-5 得到 -300)。DateTime 輸出參數則設為 PDF 字串中編碼的本地時間,不會調整為 UTC
var
DT: TDateTime;
Offset: Integer;
begin
if DecodeDate(Pdf.CreationDate, DT, Offset) then
begin
ShowMessage('Created: ' + DateTimeToStr(DT));
ShowMessage('UTC offset (minutes): ' + IntToStr(Offset));
end;
end;