Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.03.24;
Скачать: CL | DM;

Вниз

rtf to txt   Найти похожие ветки 

 
Zbigniew Bonek   (2003-03-08 03:49) [0]

Уважаемые Мастера Дельфи подскажите, пожалуйста, как привести rtf формат (например {\rtf1\ansi\ansicpg1251\deff0\deflang1049{\fonttbl{\f0\fswiss\fcharset0 Arial;}{\f1\fswiss\fcharset204{\*\fname Arial;}Arial CYR;}{\f2\fswiss\fprq2\fcharset204 MS Sans Serif;}}{\colortbl ;\red0\green0\blue0;}\viewkind4\uc1\pard\cf1\lang1033\f0\fs16 1234567890\lang1049\f1\"e9\"f6\"f3\"ea\"e5\"ed\"e3\"f8\"f9\"e7\lang1033\f0\par} к "нормальному" тексту, без использования RichEdita. Может компонент какой есть?
Заранее благодарен.


 
ScableR ©   (2003-03-08 03:57) [1]

Попытайся юзануть SynEdit.


 
Anatoly Podgoretsky ©   (2003-03-08 10:36) [2]

НаМикрософтовском сайте есть описание формата.
Почему такая непризьн к RichEdit?
Ну тогда используй щкв.


 
Zbigniew Bonek   (2003-03-12 02:01) [3]

Спасибо за помощь ;-)


function RtfToTxt(const Value: String): String;
var
i: Word;
tag: Boolean;
st: String;
begin
Result := ""; tag := False; st := "";
if Value = "" then Exit;
if Copy(Value, 0, 6) <> "{\rtf1" then
begin
Result := Value;
Exit;
end;
for i := 1 to Length(Value) do
begin
if Value[i] in ["\", "}", "{"] then
tag := True;
if Value[i + 1] in ["\", "}", "{"] then
begin
tag := False;
if st <> "" then
begin
if st = "par" then Result := Result + #13#10
else if (st[1] = """") and (Length(st) >= 3) then
begin
Delete(st, 1, 1);
Result := Result + Chr(HexToInt(Copy(st, 0, 2))) + Copy(st, 3, Length(st) - 2);
end
else if ((Pos(" ", st) > 0) or ((Copy(st, 0, 3) = "par") and (st <> "pard"))) and (st[Length(st)] <> ";") then
begin
while (Pos(#13, st) > 0) do Delete(st, Pos(#13, st), 1);
while (Pos(#10, st) > 0) do Delete(st, Pos(#10, st), 1);
if Copy(st, 0, 3) = "par" then
Result := Result + #13#10 + Copy(st, 4, Length(st) - 3)
else
Result := Result + Copy(st, Pos(" ", st) + 1, Length(st) - Pos(" ", st));
end;
end;
st := "";
end;
if tag then
st := st + Value[i + 1];
end;
end;



Страницы: 1 вся ветка

Текущий архив: 2003.03.24;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.013 c
1-76459
Jel
2003-03-12 09:55
2003.03.24
Как добавить свой контрол к стандартному диалогу открытия файла?


3-76312
ki11er
2003-03-03 21:24
2003.03.24
вопрос про TSession


1-76416
Vlad V. Oshin
2003-03-13 15:42
2003.03.24
как быстро обнулить массив


14-76632
Шишкин Илья
2003-03-01 18:54
2003.03.24
Подкиньте идею


1-76412
Igor-san
2003-03-06 16:37
2003.03.24
Как прочитать путь из ярлыка,например, Word XP ?