GetStringListItem
Fungsi lain-lain
Deskripsi
Mengembalikan string pada posisi ItemIndex dalam string list yang diidentifikasi StringListID. String list dihasilkan fungsi API lain — yang paling umum CheckFileCompliance, yang mengembalikan satu entri per issue kepatuhan yang terdeteksi
Sintaks
Delphi
Function TPDFlib.GetStringListItem(StringListID, ItemIndex: Integer): WideString;
ActiveX
Function PDFlib::GetStringListItem(StringListID As Long, ItemIndex As Long) As String
DLL
const wchar_t * DLGetStringListItem(int InstanceID, int StringListID, int ItemIndex);
Parameter
| StringListID | ID string list seperti yang dikembalikan fungsi producer seperti CheckFileCompliance |
|---|---|
| ItemIndex | Index item yang diambil (mulai dari 1). Item pertama adalah 1; item terakhir adalah GetStringListCount(StringListID). Index di luar rentang mengembalikan string kosong |
Nilai kembali
String pada index yang diminta, atau string kosong jika StringListID tidak valid atau ItemIndex di luar [1 .. GetStringListCount]
Catatan
Untuk list yang dihasilkan CheckFileCompliance, format itemnya adalah CODE: human-readable description, di mana CODE adalah salah satu kode issue lima digit yang didokumentasikan di halaman CheckFileCompliance (00002, 00003, 00005, 00006, 00007, 00011, 00012). Buang prefix sebelum titik dua untuk memproses kodenya secara programatik
Contoh
// Parse the issue code from each compliance issue line
var
Issues, Count, I, ColonPos: Integer;
Line, Code: WideString;
begin
Issues := PDF.CheckFileCompliance('archive.pdf', '', 1, 0);
if Issues = 0 then Exit;
Count := PDF.GetStringListCount(Issues);
for I := 1 to Count do
begin
Line := PDF.GetStringListItem(Issues, I);
ColonPos := Pos(':', Line);
if ColonPos > 0 then
Code := Trim(Copy(Line, 1, ColonPos - 1))
else
Code := Line;
if Code = '00006' then
WriteLn('Document is encrypted — cannot be PDF/A')
else
WriteLn('Issue ', Code, ': ', Line);
end;
PDF.ReleaseStringList(Issues);
end;