function DecodeDate(const Value: string; out DateTime: TDateTime; out DateTimeOffset: Integer): Boolean;
| Value | سلسلة. سلسلة تاريخ PDF بصيغة تاريخ PDF: D:YYYYMMDDHHmmSSOHH'mm' (مثلًا "D:20240515120000+08'00'"). |
| DateTime | TDateTime. معامل إخراج يستقبل قيمة التاريخ والوقت المفكوكة. |
| DateTimeOffset | Integer. معامل إخراج يستقبل إزاحة UTC بالدقائق. تشير القيم الموجبة إلى شرق UTC؛ والسلبية إلى الغرب. |
True إذا حُلِّلت Value بنجاح كسلسلة تاريخ PDF صالحة. يعيد False إذا كانت السلسلة فارغة أو تالفة أو لا تتوافق مع صيغة تاريخ PDF.DecodeDate هي دالة عامة على مستوى الوحدة في وحدة 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;