From: Nabil <na...@kr...> - 2007-03-16 20:50:33
|
For those of you who dont read the rlib-users list I am trying to make rlib page-aware when the output format is text. I have been reading over the source code but I am still lost over how to go about the implementation. One of the first things that needs to be implemented is a line counter.. in text.c I see no mention of a line counter but in reportgen.c there seems to be one, is that line counter reliable? In rlib_make_report why is end_page called twice is a row? Is there a version of the source code that has comments? Thank you in advance for your help. |
From: Bob D. <bd...@si...> - 2007-03-16 22:57:15
|
Nabil, Pagination is done by what fits on a page. In PDF mode the page footer and the page header approach each other, when the two meet it is time for a new page. Hints: in txt.c in: void rlib_txt_new_output_filter(rlib *r) OUTPUT(r)->paginate = FALSE; will need to be TRUE rlib_txt_end_page you may want to do something here..... in reportgen.c get_output_size HINT: Some of this logic will have to be moved down into the output filters. Cheers, - Bob On Fri, 2007-03-16 at 16:21 -0400, Nabil wrote: > For those of you who dont read the rlib-users list I am trying to > make rlib page-aware when the output format is text. I have been > reading over the source code but I am still lost over how to go about > the implementation. One of the first things that needs to be > implemented is a line counter.. in text.c I see no mention of a line > counter but in reportgen.c there seems to be one, is that line > counter reliable? In rlib_make_report why is end_page called twice is > a row? Is there a version of the source code that has comments? Thank > you in advance for your help. > > ------------------------------------------------------------------------- > Take Surveys. Earn Cash. Influence the Future of IT > Join SourceForge.net's Techsay panel and you'll get the chance to share your > opinions on IT & business topics through brief surveys-and earn cash > http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV > _______________________________________________ > Rlib-devel mailing list > Rli...@li... > https://lists.sourceforge.net/lists/listinfo/rlib-devel |
From: Nabil <na...@kr...> - 2007-03-20 19:22:02
|
Ok I worked on this a little bit.. I changed OUTPUT(r)->paginate to TRUE and in rlib_text_end_page I added OUTPUT_PRIVATE(r)->page_number+ + ; This will cause rlib to print the page headers in the correct location but all the footers are printed at the same time as the last thing in the report after the report footer!! I dont quite get how get_output_size works so some help would be appreciated. Again thanks in advance for your help. On Mar 16, 2007, at 6:56 PM, Bob Doan wrote: > Nabil, > > Pagination is done by what fits on a page. In PDF mode the page > footer > and the page header approach each other, when the two meet it is time > for a new page. > > Hints: > > in txt.c > > in: void rlib_txt_new_output_filter(rlib *r) > > OUTPUT(r)->paginate = FALSE; will need to be TRUE > > rlib_txt_end_page you may want to do something here..... > > in reportgen.c > > get_output_size > > HINT: Some of this logic will have to be moved down into the output > filters. > > > Cheers, > > - Bob > > > On Fri, 2007-03-16 at 16:21 -0400, Nabil wrote: >> For those of you who dont read the rlib-users list I am trying to >> make rlib page-aware when the output format is text. I have been >> reading over the source code but I am still lost over how to go about >> the implementation. One of the first things that needs to be >> implemented is a line counter.. in text.c I see no mention of a line >> counter but in reportgen.c there seems to be one, is that line >> counter reliable? In rlib_make_report why is end_page called twice is >> a row? Is there a version of the source code that has comments? Thank >> you in advance for your help. >> >> --------------------------------------------------------------------- >> ---- >> Take Surveys. Earn Cash. Influence the Future of IT >> Join SourceForge.net's Techsay panel and you'll get the chance to >> share your >> opinions on IT & business topics through brief surveys-and earn cash >> http://www.techsay.com/default.php? >> page=join.php&p=sourceforge&CID=DEVDEV >> _______________________________________________ >> Rlib-devel mailing list >> Rli...@li... >> https://lists.sourceforge.net/lists/listinfo/rlib-devel > > |
From: Bob D. <bd...@si...> - 2007-03-21 14:06:08
|
Nabil, You now want to look @ static void rlib_txt_end_part(rlib *r, struct rlib_part *part) in txt.c to make the "top" and "bottom" paginate correctly. As for the get_output_size it is based upon the current font's dpi. Cheers, - Bob On Tue, 2007-03-20 at 11:47 -0400, Nabil wrote: > Ok I worked on this a little bit.. I changed OUTPUT(r)->paginate to > TRUE and in rlib_text_end_page I added OUTPUT_PRIVATE(r)->page_number+ > + ; > This will cause rlib to print the page headers in the correct > location but all the footers are printed at the same time as the last > thing in the report after the report footer!! > I dont quite get how get_output_size works so some help would be > appreciated. > Again thanks in advance for your help. > > On Mar 16, 2007, at 6:56 PM, Bob Doan wrote: > > > Nabil, > > > > Pagination is done by what fits on a page. In PDF mode the page > > footer > > and the page header approach each other, when the two meet it is time > > for a new page. > > > > Hints: > > > > in txt.c > > > > in: void rlib_txt_new_output_filter(rlib *r) > > > > OUTPUT(r)->paginate = FALSE; will need to be TRUE > > > > rlib_txt_end_page you may want to do something here..... > > > > in reportgen.c > > > > get_output_size > > > > HINT: Some of this logic will have to be moved down into the output > > filters. > > > > > > Cheers, > > > > - Bob > > > > > > On Fri, 2007-03-16 at 16:21 -0400, Nabil wrote: > >> For those of you who dont read the rlib-users list I am trying to > >> make rlib page-aware when the output format is text. I have been > >> reading over the source code but I am still lost over how to go about > >> the implementation. One of the first things that needs to be > >> implemented is a line counter.. in text.c I see no mention of a line > >> counter but in reportgen.c there seems to be one, is that line > >> counter reliable? In rlib_make_report why is end_page called twice is > >> a row? Is there a version of the source code that has comments? Thank > >> you in advance for your help. > >> > >> --------------------------------------------------------------------- > >> ---- > >> Take Surveys. Earn Cash. Influence the Future of IT > >> Join SourceForge.net's Techsay panel and you'll get the chance to > >> share your > >> opinions on IT & business topics through brief surveys-and earn cash > >> http://www.techsay.com/default.php? > >> page=join.php&p=sourceforge&CID=DEVDEV > >> _______________________________________________ > >> Rlib-devel mailing list > >> Rli...@li... > >> https://lists.sourceforge.net/lists/listinfo/rlib-devel > > > > -- Bob Doan Vice President of Information Technology SICOM Systems bd...@si... 800-547-4266 x217 |
From: Nabil <na...@kr...> - 2007-03-21 17:01:13
|
If I understand correctly loops through _private->top and _private- >bottom and appends the data in them to _private->both So how would I use that to trigger a new page? It should be easy enough to count the lines in _private->top and _private->bottom and figure out if they are to big to fit on a page but what do I do after that? I would need to output a certain amount of data and then trigger a new page On Mar 21, 2007, at 10:05 AM, Bob Doan wrote: > Nabil, > > You now want to look @ > > static void rlib_txt_end_part(rlib *r, struct rlib_part *part) > in txt.c to make the "top" and "bottom" paginate correctly. > > As for the get_output_size it is based upon the current font's dpi. > > Cheers, > > - Bob > > > > > On Tue, 2007-03-20 at 11:47 -0400, Nabil wrote: >> Ok I worked on this a little bit.. I changed OUTPUT(r)->paginate to >> TRUE and in rlib_text_end_page I added OUTPUT_PRIVATE(r)- >> >page_number+ >> + ; >> This will cause rlib to print the page headers in the correct >> location but all the footers are printed at the same time as the last >> thing in the report after the report footer!! >> I dont quite get how get_output_size works so some help would be >> appreciated. >> Again thanks in advance for your help. >> >> On Mar 16, 2007, at 6:56 PM, Bob Doan wrote: >> >>> Nabil, >>> >>> Pagination is done by what fits on a page. In PDF mode the page >>> footer >>> and the page header approach each other, when the two meet it is >>> time >>> for a new page. >>> >>> Hints: >>> >>> in txt.c >>> >>> in: void rlib_txt_new_output_filter(rlib *r) >>> >>> OUTPUT(r)->paginate = FALSE; will need to be TRUE >>> >>> rlib_txt_end_page you may want to do something here..... >>> >>> in reportgen.c >>> >>> get_output_size >>> >>> HINT: Some of this logic will have to be moved down into the output >>> filters. >>> >>> >>> Cheers, >>> >>> - Bob >>> >>> >>> On Fri, 2007-03-16 at 16:21 -0400, Nabil wrote: >>>> For those of you who dont read the rlib-users list I am trying to >>>> make rlib page-aware when the output format is text. I have been >>>> reading over the source code but I am still lost over how to go >>>> about >>>> the implementation. One of the first things that needs to be >>>> implemented is a line counter.. in text.c I see no mention of a >>>> line >>>> counter but in reportgen.c there seems to be one, is that line >>>> counter reliable? In rlib_make_report why is end_page called >>>> twice is >>>> a row? Is there a version of the source code that has comments? >>>> Thank >>>> you in advance for your help. >>>> >>>> ------------------------------------------------------------------- >>>> -- >>>> ---- >>>> Take Surveys. Earn Cash. Influence the Future of IT >>>> Join SourceForge.net's Techsay panel and you'll get the chance to >>>> share your >>>> opinions on IT & business topics through brief surveys-and earn >>>> cash >>>> http://www.techsay.com/default.php? >>>> page=join.php&p=sourceforge&CID=DEVDEV >>>> _______________________________________________ >>>> Rlib-devel mailing list >>>> Rli...@li... >>>> https://lists.sourceforge.net/lists/listinfo/rlib-devel >>> >>> > -- > Bob Doan > Vice President of Information Technology > SICOM Systems > bd...@si... > 800-547-4266 x217 > > |