Arbeite nicht mit .Lines[] oder .Text, denn damit verarbeitest du immer nur reinen Text. Suche im Forum nach Beispielen zu SelStart, SelLength, SelText und SelAttributes - damit manipulierst du den jeweils ausgewählten Text. Mit
Delphi-Quellcode:
RichEdit1.SelStart := SendMessage(RichEdit1.Handle, EM_LINEINDEX, LineNo, 0);
RichEdit1.SelLength := SendMessage(RichEdit1.Handle, EM_LINELENGTH, RichEdit1.SelStart, 0);
kannst du jeweils eine ganze Zeile markieren und danach mit SelAttributes für diese Auswahl die Attribute ändern.