GetStringListItemA

Rôzne funkcie

Opis

Koncové A označuje ANSI (char) vstupný bod DLL; povrch ActiveX/COM vystavuje iba Unicode formu. Správanie je identické s GetStringListItem a reťazcové parametre sa interpretujú pomocou aktuálnej kódovej stránky SetAnsiMode

Vracia reťazec na pozícii ItemIndex v zozname reťazcov identifikovanom StringListID. Zoznamy reťazcov produkujú iné funkcie API — najčastejšie CheckFileCompliance, ktorá vracia jednu položku na každý zistený problém zhody.

Syntax

Delphi

Function DLGetStringListItemA(InstanceID, StringListID, ItemIndex: Integer): PAnsiChar;

DLL

const char * DLGetStringListItemA(int InstanceID, int StringListID, int ItemIndex);

Parametre

StringListIDID zoznamu reťazcov, ako ho vracia produkčná funkcia ako CheckFileCompliance.
ItemIndexIndex položky na získanie číslovaný od 1. Prvá položka je 1; posledná položka je GetStringListCount(StringListID). Indexy mimo rozsahu vraciajú prázdny reťazec.

Návratová hodnota

Reťazec na požadovanom indexe, alebo prázdny reťazec, ak je StringListID neplatné alebo ItemIndex je mimo [1 .. GetStringListCount].

Poznámky

Pre zoznamy produkované CheckFileCompliance má položka formát KÓD: čitateľný popis, kde KÓD je jeden z päťmiestnych kódov problémov zdokumentovaných na stránke CheckFileCompliance (00002, 00003, 00005, 00006, 00007, 00011, 00012). Na programové spracovanie kódu odstripujte predponu pred dvojbodkou.

Príklad

// 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;

Pozri tiež

GetStringListCount, ReleaseStringList, CheckFileCompliance