Bueno.
Leyendo mi propio post, pienso que quizá no está muy claro el problema.
Veamos un ejemplo real:
Asignamos un valor a una variable de la siguiente manera:
Código Delphi
[-]
Bruto := Format( '%n', [SumaBruto] );
while Bruto.Length < 9 do Bruto := ' '+Bruto;
IVA := Format( '%n', [SumaIVA] );
while IVA.Length < 9 do IVA := ' '+IVA;
Str(Cuantas:8, S);
S2 := ('|'+S +' |Facturas emitidas desde '+DateEdit1.Text+' hasta '+DateEdit2.Text+
'|'+Bruto+'|'+IVA+'|');
Ordenamos imprimir S2:
Código Delphi
[-]
MyRect.Create(0,150,Printer.PageWidth-150,125);
FillText(MyRect, S2, False, 100,[TFillTextFlag.RightToLeft], TTextAlign.Leading, TTextAlign.Center);
La salida por la impresora es la siguiente:
Código Delphi
[-]
|Facturas emitidas desde 01/10/2017 hasta 01/10/2017| 1.350,00| 283,50| 1 |
Cuando, siguiendo el orden de la String S2, debería salir:
Código Delphi
[-]
| 1 |Facturas emitidas desde 01/10/2017 hasta 01/10/2017| 1.350,00| 283,50|
Queréis otro ejemplo real?
Asignamos un valor a una variable de la siguiente manera:
Código Delphi
[-]
IniR := '| aaaaa |aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa|aaaaaaaaa|aaaaaaaaa|'+#13#10;
Ordenamos imprimir IniR:
Código Delphi
[-]
MyRect.Create(0,150,Printer.PageWidth-150,125);
FillText(MyRect, IniR, False, 100,[TFillTextFlag.RightToLeft], TTextAlign.Leading, TTextAlign.Center);
La salida por la impresora es la siguiente:
Código Delphi
[-]
|aaaaa |aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa|aaaaaaaaa|aaaaaaaaa |
Cuando, siguiendo el orden de la String S2, debería salir:
Código Delphi
[-]
| aaaaa |aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa|aaaaaaaaa|aaaaaaaaa|
Si alguien conoce la explicación o la solución, por favor, ¡¡QUE ME LO EXPLIQUE...!!
Gracias por leerme.
Saludos cordiales a todos.