<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 12pt;
font-family:Calibri
}
--></style></head>
<body class='hmmessage'><div dir='ltr'><br><br><div>> Date: Fri, 12 Jun 2015 08:22:15 -0400<br>> From: John@wexfordpress.com<br>> To: scribus@lists.scribus.net<br>> Subject: [scribus] Scribus and long documents.<br>> <br>> Scribus has a serious flaw, one that<br>> limits its practical utility to short documents.<br>> This is not a flaw susceptible of a quick fix, or<br>> even a slow fix. <br>> <br>> A book length  document of 100 pages or more<br>> slows the program down to a point that is not<br>> tolerable. If one breaks down the document into<br>> ten page segments then problems occur in page<br>> numbering, the TOC, indexing and so on. <br></div><div><br></div><div>Could you post a sample document?</div><div><br></div><div>It might be possible to build a version of Scribus with gcc -pg profiling to have an idea of what is happening.</div><div><br></div><div>If you double the number of pages, is the slowness predictable? Does it get twice as slow or four times as slow?</div><div><br></div><div>Are the 100 pages all linked text frames so that any change to the first page requires recalculating everything through to the last page?</div><div><br></div><div>Is the book divisible into short chapters so that the text frame on the last page of one chapter does not have to be linked to the text frame on the first page of the next chapter?</div><div><br></div><div>I'm not a Scribus developer, but the solution might be changing the display to recalculate only currently visible pages.  Many laptops and PCs now come with 16GB of RAM, so memory should not be a problem.  It might be possible to store the starting layout state of each page as the page is processed, and then when you modify a page, the recalculation could run from the page that you changed forward to the last visible page on the screen and mark the remaining pages as currently uncalculated (or queue them for recalculation on a low priority thread).</div><div><br></div><div>Regards,</div><div>William</div><div><br></div><div><br></div>                                    </div></body>
</html>