PDA

Ver la Versión Completa : poner negrita a algunas partes del texto en QRRichText


Confucio
15-03-2012, 14:08:59
Buenos Dias Comunidad:
necesito formatear unos valores y sus monedas en un reporte, el asunto es que lo muevo a un QRRichText para que quede justificado como parrafo.
necesito que los valores y sus monedas salgan en negrita.
no se como hacerlo, agradeceria de sobremanera una ayuda.

saludos y que esten todos bien
Confucio



QRRichText1.Lines.Add('Con fecha de hoy '+ sRazonSocial+' '+stransac + ' dólares a '+ sDesccliente+ ' por un monto de '
+ trim(sMoneda)+' '+ FormatFloat('##,###,###,##0.00',Strtofloat(sValor))+'.- '+trim(smoneda1)
+ ' a un tipo de cambio de $ '+ ' '+ FormatFloat('###,##0.00',Strtofloat(sValorTc))+ ' pesos por dólar, '
+' lo que totaliza un monto de $ '+ FormatFloat('##,###,###,##0.00',Strtofloat(sMonto))+'.'
+ ' se paga con fecha '+sFechaLarga

ecfisa
15-03-2012, 23:03:04
Hola Confucio.

Si te fuera posible saber la posición donde van los valores y sus monedas, se me ocurre que podrías usar un TRichEdit. Asignar los atributos a la porción de texto que desees, poner su propiedad Visible en False y luego asignar el TRichEdit a la propiedad ParentRichEdit del TQRRichText.

Te pongo un ejemplo de la idea:

...
implementation

var
RE: TRichEdit;

procedure TForm1.Button1Click(Sender: TObject);
begin
RE:= TRichEdit.Create(nil);
RE.Visible:= False;
RE.Parent:= Self;
RE.Text:= 'PRUEBA DE TEXTO EN NEGRITA Y SUBRAYADO';
// bold
RE.SelStart:= Pos('NEGRITA',Re.Text)-1;
RE.SelLength:= Length('NEGRITA');
RE.SelAttributes.Style:= [fsBold];
// Underline
RE.SelStart:= Pos('SUBRAYADO',Re.Text)-1;
RE.SelLength:= Length('SUBRAYADO');
RE.SelAttributes.Style:= [fsUnderline];
QRRichText1.ParentRichEdit:= RE;
QuickRep1.Preview;
end;
...
procedure TForm1.FormDestroy(Sender: TObject);(Sender: TObject; var Action: TCloseAction);
begin
if Assigned(RE) then
RE.Free;
end;


Saludos.