Problem je sledeci:
Pokusavam da napravim preview za splash screen za ISOLinux. Da ne zamaram time sta je ISOLinux i SysLinux nego da predjem na problem.
Splash screen je tekstualni fajl koji sadrzi jos podatke o boji teksta i boji pozadine a te boje mogu da se menjaju u bilo kom delu teksta i vaze do sledece promene.
Primer:
¤0e ovo je tekst ¤07 ovo je tekst druge boje....
¤0e = '0' je boja pozadine, 'e' je boja slova
Pokusavam MEMO komponentu da nateram da mi prikaze ovo, medjutim svaka promena boje mi utice na ceo tekst.
Ja sam pokusao da resim to ovako, ali ne ide..
procedure TGlavna.EditorChange(Sender: TObject);
var
duzina: word;
tekst: string;
bafer: string;
boja1: string;
boja2: string;
brojac: integer;
begin
tekst := Editor.Text;
duzina := length(tekst)+1;
brojac := 0;
Preview.Text := '';
while brojac < duzina do
begin
bafer := copy (tekst,brojac,1);
if bafer = chr(12) then
begin
preview.Text := ''; // clear screen
end;
if bafer = chr(15) then
begin
boja1 := copy (tekst,brojac+1,1);
boja2 := copy (tekst,brojac+2,1);
bafer := '';
if boja1 = '0' then preview.Color := clBlack;
if boja1 = '1' then preview.Color := clNavy;
if boja1 = '2' then preview.Color := clGreen;
if boja1 = '3' then preview.Color := clOlive;
if boja1 = '4' then preview.Color := clMaroon;
if boja1 = '5' then preview.Color := clPurple;
if boja1 = '6' then preview.Color := clMaroon;
if boja1 = '7' then preview.Color := clSilver;
if boja1 = '8' then preview.Color := clGray;
if boja1 = '9' then preview.Color := clBlue;
if boja1 = 'a' then preview.Color := clLime;
if boja1 = 'b' then preview.Color := clMoneyGreen;
if boja1 = 'c' then preview.Color := clRed;
if boja1 = 'd' then preview.Color := clFuchsia;
if boja1 = 'e' then preview.Color := clYellow;
if boja1 = 'f' then preview.Color := clWhite;
if boja2 = '0' then preview.font.Color := clBlack;
if boja2 = '1' then preview.font.Color := clNavy;
if boja2 = '2' then preview.font.Color := clGreen;
if boja2 = '3' then preview.font.Color := clOlive;
if boja2 = '4' then preview.font.Color := clMaroon;
if boja2 = '5' then preview.font.Color := clPurple;
if boja2 = '6' then preview.font.Color := clMaroon;
if boja2 = '7' then preview.font.Color := clSilver;
if boja2 = '8' then preview.font.Color := clGray;
if boja2 = '9' then preview.font.Color := clBlue;
if boja2 = 'a' then preview.font.Color := clLime;
if boja2 = 'b' then preview.font.Color := clMoneyGreen;
if boja2 = 'c' then preview.font.Color := clRed;
if boja2 = 'd' then preview.font.Color := clFuchsia;
if boja2 = 'e' then preview.font.Color := clYellow;
if boja2 = 'f' then preview.font.Color := clWhite;
brojac := brojac +2;
end;
preview.Text := preview.Text + bafer;
preview.Refresh;
brojac := brojac+1;
end;
end;
Editor mi je jedna Memo komponenta u koju mogu da upisujem a Preview je druga Memo komponenta koja je ReadOnly i treba da mi prikaze tekst kakav bi izgledao u ISOLinuxu. Probao sam i sa RichEdit komponentom - isti rezultat.
Pomagajte molim vas.
-----------------------------------------------
Dodato
Uspeo sam da regulisem boju slova tako sto sam za preview uzeo RichEdit, ali jos uvek ne mogu da regulisem boju pozadine svakog slova posebno.
|