Witam

Mam problem z zamianą tekstu napisanego w RichEdit na HTML. O ile chodzi o pogrubianie, pochylanie, rozmiar czcionki itp. to nie ma problemu. Ale nie potrafie wykryć np. wypunktowania, numerowania oraz indeksów górnego i dolnego. Nie ma ich we właściwości SellAtributes i nie wiem jak sprawdzić czy ktoraś z tych opcji nie pojawiła się w tekście.

Oto kod do wstawiania numerowania:

procedure TForm1.BClick(Sender: TObject);
var
  num_format: TParaformat2;
begin
  FillChar(num_format, SizeOf(num_format), 0);
  num_format.cbSize := SizeOf(num_format);
  num_format.dwMask := PFM_NUMBERING or PFM_NUMBERINGSTART or PFM_NUMBERINGSTYLE or
                PFM_NUMBERINGTAB;
  num_format.wNumbering := 2;
      //0 bak wypunktowania i numerowania
      //1 wypuktowanie (czarne kółka)
      //2 cyfry arabskie (1, 2, 3, ...).
      //3 litery małe(a, b, c, ...).
      //4 litery duże (A, B, C, ...).
      //5 rzymskie małe (i, ii, iii, ...).
      //6 rzymskie duże (I, II, III, ...).
  num_format.wNumberingStart := 1;//zacznij numerowanie od
  num_format.wNumberingStyle := $200;//styl numerowania
      // 0 :    1)
      // $100 :(1)
      // $200 : 1.
      // $300 : 1
      // $400 : kontynuacja numerowania
      // $8000 : zacznij nowe numerowanie (od wNumberingStart)
  num_format.wAlignment := 1440 div 4;
  num_format.wNumberingTab := 1440 div 4;
  // odtsęp między znakiem numerowania a tekstem akapitu, w twipach
  R1.Perform(EM_SETPARAFORMAT, 0, lParam(@num_format));
end;

A to kod do wstawiania indeksu górnego:

procedure TForm1.ITopClick(Sender: TObject);
var
  CharFormat : TCharFormat;
begin
  ZeroMemory(@CharFormat, SizeOf(TCharFormat)); // zerowanie pamieci
  with CharFormat do begin
     cbSize := SizeOf(TCharFormat);  // przydziel pamiec
     R1.Perform(EM_GETCHARFORMAT, 1, LParam(@CharFormat));
     yHeight := Round(yHeight*0.7); // wysokosc
     yOffset := Round(yHeight*0.3);   // polozenie

     R1.Perform(EM_SETCHARFORMAT, wParam(SCF_SELECTION), LParam(@CharFormat));
  end;
  R1.SetFocus;
  R1.SelLength := 0;
end;

Czy wie ktoś jak wykryć czy w RichEdit jest wstawione numerowanie albo index górny bardzo bym prosił o jakąś podpowiedź.

Pozdro!!!