unit funciones;

interface

function RtfToText(Cadena: PChar): PChar; cdecl; export;

implementation

uses
  SysUtils;

function RtfToText(Cadena: PChar): PChar;
var
  i: integer;
  CadenaAux1: String;

begin
  //Si no tiene ninguna llave no esta guardado como rtf
  if (Pos('{', Cadena) = 0) then
     Result := Cadena
  else
  //Esta guardado com rtf
  begin
    //Quitamos todo lo que está antes de \fs1x
    i := Pos('\fs', Cadena);
    CadenaAux1 := Copy(Cadena, i, StrLen(Cadena)-1);

    //Quitamos la parte de delante \fs1x
    i:= Pos(' ', CadenaAux1);
    CadenaAux1 := Copy(PChar(CadenaAux1), i+1, StrLen(PChar(CadenaAux1))-1);

    //Quitamos todo lo de la parte de atras a partir de la primera barra \ que tengamos
    i:= Pos('\', CadenaAux1);
    CadenaAux1 := Copy(PChar(CadenaAux1), 0, i-1);

    Result := PChar(CadenaAux1);
  end;
end;

end.
