From 6ad42423bfec5bd3b5e229001726f018f347a0b4 Mon Sep 17 00:00:00 2001 From: alex Date: Fri, 16 Jun 1995 15:56:58 +0000 Subject: [PATCH] Rifatta la fill_page git-svn-id: svn://10.65.10.50/trunk@1478 c028cbd2-c16b-5b4b-a496-9718f37d4682 --- cg/cg3400.cpp | 37 +++++++++++++++++++++++-------------- 1 file changed, 23 insertions(+), 14 deletions(-) diff --git a/cg/cg3400.cpp b/cg/cg3400.cpp index 03725e62d..6f73dded1 100755 --- a/cg/cg3400.cpp +++ b/cg/cg3400.cpp @@ -866,28 +866,37 @@ void CG3400_application::fill_page(int riga) { TString256 rigas; // char frm[4]; - word r_l = 0; + int r_l = printer().rows_left() - RIGHE_FOOTER; - r_l = printer().rows_left() - RIGHE_FOOTER; // Se sono rimaste righe da riempire if (r_l) { rigas.fill('=', _stampa_width); rigas.cut(_stampa_width+1); // sprintf(frm, "%%%3ds", _stampa_width); - set_row(riga, "%s", (const char*) rigas); - rigas = ""; - if (--r_l) + set_row(riga++, "%s", (const char*) rigas); + // rigas = ""; + // if (--r_l) + // { + // int j=0; + // Calcola una specie di coefficiente angolare + // int alfa = _stampa_width / r_l; + // for (int i = riga+1; i < r_l; i++, j++) + // { + // if (j*alfa >= _stampa_width-alfa) break; // non uscire dai margini + // rigas.format("@%dg======", j*alfa); + // set_row(i, "%s", (const char*)rigas); + // } + // } + int j=0; + // Calcola una specie di coefficiente angolare + int alfa = _stampa_width / r_l; + + while (--r_l && j + alfa < _stampa_width) { - int j=0; - // Calcola una specie di coefficiente angolare - int alfa = _stampa_width / r_l; - for (word i = riga+1; i < r_l; i++, j++) - { - if (j*alfa >= _stampa_width-alfa) break; // non uscire dai margini - rigas.format("@%dg======", j*alfa); - set_row(i, "%s", (const char*)rigas); - } + rigas.format("@%dg======", j); + set_row(riga++, "%s", (const char*)rigas); + j += alfa; } } }