41 lines
901 B
ObjectPascal
41 lines
901 B
ObjectPascal
|
|
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<73> 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.
|