Multi page document

Previous topic - Next topic

Rob Dixon

I want to create a multi-page document. How do I define that it is multi page and how do I ensure that if, for instance, I insert extra text on page 1, all text on subsequent pages moves down as required.

Many thanks

Rob Dixon

utnik

hi rob

you need define the number of pages in the setup dialog or to add more pages later to create a multi page document. scribus doesn't add pages when you insert more content. you have to do tis...
if you check the box for 'automatic text frames', your text will flow across all your pages –i think, that's what you're searching for.

utnik

Nermander

Quote from: Rob Dixon on May 12, 2016, 11:23:53 PM
I want to create a multi-page document. How do I define that it is multi page and how do I ensure that if, for instance, I insert extra text on page 1, all text on subsequent pages moves down as required.

You do not need to define anything to get a multi page document, just add pages.

However for automatic flowing you are limited to using linked text frames. Scribus is a page layout program not a word processor.

To me it sounds as someone has tricked you into using the wrong tool for the task. May I ask why you are using Scribus for this task instead of for example Libre Office Writer?

Rob Dixon

#3
Utnik and Nermander

Thank you both. I had assumed that Scribus would allow multi page documents and you have confirmed that it is possible. However, I still don't know how to do it – I looked in the Document Setup dialogue and I cannot see any option to define the number of pages. How do I do this please?

Nermander

You ask why I am using Scribus when the only thing that I have said about my task is that my document has multiple pages. Are you implying that Scribus is only suitable for single page documents? I am not intending to use Scribus as a word processor. I have no idea whether Scribus is suitable for my task but hope that it is. A word processing package, such as  Libre Office is certainly not suitable.  I will explain what I am hoping to achieve. 

I have created (and patented) a new type of database, ERROS, which I call a Connnectionist Database. This runs on larger systems under the IBM i operating system. This stores entity type, attribute and application definitions in the database, rather than in program code, and these definitions are stored in the same database as the user data that they define – in other words it defines itself, without programming. It does not use SQL. Very complex multi-user applications can be created without any new program coding or program generation, simply by updating the database. It is designed for enormous numbers of concurrent users and massive volumes of data (it has a 224 bit address space). It has extremely rapid response times and these do not noticeably degrade as data volumes increase. ERROS stores unlimited text as well as all other user data. Output can contain both text and more standard database data, totally integrated. It can be used over the internet, generating HTML and Javascript to create virtual web pages on the fly. It  generates PCL 5 code for printing. It can do quite sophisticated typeset printed output but I need something more advanced for publishing, for instance, a printed illustrated catalogue. ERROS can also generate XML code and my intention is to import this into a publishing package, such as Scribus, for the final polished result and create a PDF for sending to a printer.

I am hoping that much of the style information can be included with the XML data (as it is in ERROS with HTML and PCL 5), to reduce the amount of work to be done in Scribus and I will be asking questions about how this can be achieved. I intend to do a test of Scribus with a 20 page section of what may well be a 500 page document. I have been warned that Scribus does not perform well with such large tasks. It may be that I will have to use inDesign but it is expensive and, although it can import XML, I don't think that that can include style information.

Any ideas that you or anyone else may have will be gratefully received.

Rob Dixon

#4
The number of pages and the automatic text frames options have magically appeared, now that I have given my document a name. A pity that these weren't available before I gave it a name. A pity also that the initial document set up screen says "Single Page" when it really means single sided. After all, the next option is "Double Sided". I spent several hours trying to find out how to create a multi page document before I asked my question.

Nermander

Quote from: Rob Dixon on May 13, 2016, 01:06:14 PM
Thank you both. I had assumed that Scribus would allow multi page documents and you have confirmed that it is possible. However, I still don't know how to do it – I looked in the Document Setup dialogue and I cannot see any option to define the number of pages. How do I do this please?

Page menu, Insert.

Yes, you have to insert each new page, Scribus does not create pages automatically, because a new page is by default empty so it won't have any content.

Scribus is mainly intended for page layout, that is you design your document page by page.

Quote
my intention is to import this into a publishing package, such as Scribus, for the final polished result and create a PDF for sending to a printer.
I do not think Scribus is the best tool for that. What other tools have you looked at?

What you might look at is to make a program that creates a Scribus document as XML. There is a project I think is called "Scribus generator" which does something similar.

Rob Dixon

Nermander

Thanks for this.

One particular catalogue I am trying to create at present is quite complex. Each entry has a variable amount of data and there can be large amounts of text, both at the chapter level and within an individual entry. An entry may have more than one image. One entry might occupy a few lines and there might be more than one entry on a page whilst another might take more than one page. For the chapter level text, I will want two columns and for the entries I would like two columns also but not the same width. With my present ERROS printing facility, I can handle all this automatically, but it could be more sophisticated.

I can create an XML file that contains XML tags, style data, new line, new page, etc. and I want to convert this into a PDF. I may want to do some final editing within a publishing package, such as Scribus, before I create the PDF.

I had a look at Scribus Generator and, whilst it is impressive, I don't think that it would solve my problem. I don't create CSV files, although I could, but any entry may have a large number of attributes that do not have any data. ERROS ignores these so that there is no unwanted blank space on a page.

Any ideas please? I imagine that to generate my own .sla file within ERROS would be quite a lot of work, although not impossible. But I am in a hurry (who isn't?) and I want something quicker if possible. I might be content for the present to go straight from my ERROS generated XML file to a PDF. Is there a good package that can do that?

Rob

Nermander

What I meant was not to use Scribus Generator, but to use the source of it and write your own version.

But I honestly think it would be a lot easier to use Open/Libre Office Writer as your PDF creator.

From what I understand the Scribus document format is very messy to work with, it is really not structured XML (or at least it didnät use to be).

ODT is also an XML based format from what I understand it is easier to create.

You could also have a look at XML transformations like XSLT.

Rob Dixon

Thanks. I realise that LibreOffice uses XML internally but, if I open an XML file in LibreOffice, it just treats it as text.
There is no import facility in LibreOffice for any file structure. Is there a way round this? I imagine that creating ODT compatible output in ERROS would not be a trivial task.



Nermander

You need to package the XML inside an ODT file.

But if you do not want to create ODT XML directly, you can have a look at XSLT.


Rob Dixon

Many thanks. I will look at XSLT. But, first, I will try to import an XML file into Scribus to test the result.

Nermander

You cannot (as far as I know) import XML into Scribus.

You might be able to write a Python script for Scribus to import the XML, but that script would have to place frames and add formatting explicitly, so you would really not "import" the XML but you would pase it and create a Scribus document from it.

This looks like something to start from
https://wiki.scribus.net/canvas/Formatxml

Scribus SLA format is XML based, but you would most likely have to create the SLA compatible XML code from your application (like Scribus Generator does). I don't think XSLT would work because Scribus XML is not "well structured" (or at least didn't use to be, not sure if it has improved).

And that is why I believe Scribus is the wrong tool for you.

Rob Dixon

Many thanks again, Nermander.

I have already looked at FormatXML and tried the script there for importing XML. This had a bug and pne of the Scribus development team sent me a new version. I have managed to get this to work once and imported XML into Scribus. I tried to import XML a second time but failed. No doubt I will work out what I did wrong. My present idea is to replace some or all of the XML tags with valid Scribus code. I think that this is what you are suggesting. I believe that that is possible for style codes, chapters, paragraph and line breaks, but that is as far as I have got. My hope that is I will be able to do final refinement in Scribus but I don't know whether that is possible.

I tried validating my XML with Firefox and Safari, but it objects to diacritics. Given that most European languages use accented characters, this somewhat surprises me.

Nermander

The problem is, as I have tried to explain several times now, that content does not automatically flow in Scribus.

If all you have is text, then maybe you can import everything into linked text frames.

But all content in Scribus is contained in frames. A frame has properties stating what page it is located at and where on the page. So you will have to explicitly create each page, and create frames on each page to contain your content. You will have to perform the pagination of the content yourself.

That is why I am suggesting a Word processing application like Open/Libre Office Writer. Such an application will automatically paginate the contents.

Just replacing tags will not suffice, since your original code will most likely not be paginated.

exivious

Scribus only supports single pages. If you want three pages, you create three documents, just add -1, -2 to the end of the file name for each page. If you output to pdf, you can use pdftk to assemble them into a single multipage document.