GetStringListItemA

Funciones varias

Descripción

El sufijo A indica el punto de entrada ANSI (char) de la DLL; la superficie ActiveX/COM expone únicamente la forma Unicode. El comportamiento es idéntico a GetStringListItem y los argumentos de cadena se interpretan utilizando la página de códigos SetAnsiMode actual

Devuelve la cadena en ItemIndex de la lista StringListID. Funciones como CheckFileCompliance producen estas listas

Sintaxis

Delphi

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

DLL

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

Parámetros

StringListIDEl identificador de la lista de cadenas devuelto por una función productora, como CheckFileCompliance
ItemIndexEl índice basado en uno del elemento que se recuperará. El primer elemento es 1; el último es GetStringListCount(StringListID). Los índices fuera del intervalo devuelven una cadena vacía

Valor devuelto

La cadena del índice solicitado, o una cadena vacía si StringListID no es válido o ItemIndex está fuera de [1 .. GetStringListCount]

Observaciones

En listas de CheckFileCompliance, el formato es CODE: human-readable description; CODE es uno de los documentados en CheckFileCompliance: 00002, 00003, 00005, 00006, 00007, 00011 o 00012. Quite el prefijo hasta los dos puntos

Ejemplo

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

Véase también

GetStringListCount, ReleaseStringList, CheckFileCompliance