GetStringListItemA

Razne funkcije

Opis

Sufiks A na kraju označava ulaznu tačku DLL-a tipa ANSI (char); sučelje ActiveX/COM izlaže samo Unicode oblik. Ponašanje je identično sa GetStringListItem, a string argumenti se tumače pomoću trenutne kodne stranice SetAnsiMode

Vraća string na poziciji ItemIndex u listi stringova identifikovanoj sa StringListID. Liste stringova proizvode druge API funkcije — najčešće CheckFileCompliance, koja vraća jedan unos za svaki otkriveni problem usaglašenosti.

Sintaksa

Delphi

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

DLL

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

Parametri

StringListIDID string liste kakav vraća producerska funkcija poput CheckFileCompliance
ItemIndexIndeks stavke koju treba dohvatiti, koji počinje od 1. Prva stavka je 1; poslednja je GetStringListCount(StringListID). Indeksi van opsega vraćaju prazan string

Povratna vrednost

String na zatraženom indeksu, ili prazan string ako je StringListID neispravan ili je ItemIndex van [1 .. GetStringListCount]

Napomene

Za liste koje pravi CheckFileCompliance format stavke je CODE: human-readable description, gde je CODE jedan od petocifrenih kodova problema dokumentovanih na stranici CheckFileCompliance (00002, 00003, 00005, 00006, 00007, 00011, 00012). Skinite prefiks pre dvotačke da biste programski radili sa kodom

Primer

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

Vidi takođe

GetStringListCount, ReleaseStringList, CheckFileCompliance