From: Doug Stevens Date: 2013-07-23T05:07:39+09:00 Subject: Prawn: multiple calls to formatted_text_box within a bounding_box? I'm a newbie to prawn, but enjoying using it. The API is very nicely conceived ... I'm generating a multi-column doc from the content of an xml file. The doc looks good at this point, but I'm trying to improve one part of the coding. I'm currently doing this ... * Read one tag value at a time from the xml file, and create a hash with the text and styling, and add that to a text array. * For each page and for each column within the page, call formatted_text_box with the text array, and catch the return (overflow) in the same array. I'm testing with xml files that generate about 5-10 pages, but I'm concerned that if I get a 1000-page xml file, I'll use huge amounts of memory in generating the text array. What I'd like to do is something more like ... * For each page and for each column, read an xml tag value, call formatted_text_box, and terminate the column when formatted_text_box returns an overflow. In multiple calls, each call starts over at the top of the bounding box, superimposing all entries in the bounding_box. Is there an optional arg somewhere that will position the text for the call at the last cursor position in the bounding box? I could do create a new (blind) BoundingBox and use that, gradually adding more and more entries to the text array until it did overflow, then use that array on a non-blind box in the document, then start the next column with the overflow. Determining the amount of text for each column is O(N^^2), which could get pretty slow with a small font. Or I could determine the minimum number of characters I'd need in the array by determining once how many minimum-size chars (sans-serif "i"?) would fit in the bounding box, then read at least that many characters from the xml file, but that approach seems inelegant. Thanks in advance for any tips ... -- Posted via http://www.ruby-forum.com/.