GetStringListItemA

Sekalaiset funktiot

Kuvaus

Lopussa oleva A osoittaa DLL:n ANSI-sisääntulokohdan (char); ActiveX/COM-rajapinta paljastaa vain Unicode-muodon. Toiminta on sama kuin GetStringListItem, ja merkkijonoargumentit tulkitaan nykyisen SetAnsiMode-koodisivun mukaisesti

Palauttaa merkkijonon sijainnissa ItemIndex tunnisteella StringListID osoitetussa merkkijonoluettelossa. Merkkijonoluettelot tuottavat muut API-funktiot — yleisimpänä CheckFileCompliance, joka palauttaa yhden tietueen kutakin havaittua vaatimustenmukaisuusongelmaa kohden

Syntaksi

Delphi

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

DLL

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

Parametrit

StringListIDMerkkijonoluettelon tunnus sellaisena kuin tuottajafunktio kuten CheckFileCompliance sen palauttaa
ItemIndexHaettavan kohteen yhdestä alkava indeksi. Ensimmäinen kohde on 1; viimeisen kohteen indeksi on GetStringListCount(StringListID). Alueen ulkopuoliset indeksit palauttavat tyhjän merkkijonon

Paluuarvo

Pyydetyn indeksin merkkijono tai tyhjä merkkijono, jos StringListID on virheellinen tai ItemIndex on välin [1 .. GetStringListCount] ulkopuolella

Huomautukset

CheckFileCompliancefunktion tuottamien luetteloiden kohteiden muoto on CODE: human-readable description, missä CODE on jokin CheckFileCompliance-sivulla dokumentoiduista viisinumeroisista ongelmakoodeista (00002, 00003, 00005, 00006, 00007, 00011, 00012). Poimi kaksoispisteen edeltävä etuliite, jos haluat käsitellä koodia ohjelmallisesti

Esimerkki

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

Katso myös

GetStringListCount, ReleaseStringList, CheckFileCompliance