But the documents that InBooklet produced have a fatal flaw. As long as you don't use footnotes, you might not care. But the process that destroys footnote numbering in CS2 booklet documents will equally destroy numbered lists in CS3.
"Fixing" this problem involves a whole different approach to imposing live pages. My BuildBooklet script (which produces saddle-stitched printer spreads) uses one technique that preserves numbered lists. But it doesn't have the same flexibility as CS2's otherwise excellent InBooklet.
Perhaps it will do all you need. You can download it from:
Footnotes are not an issue for me, nor are images that span the 2 sheets of a spread.
I have your excellent script. But it doesn't solve my problem because I need to create a new document with each SPREAD on a separate page (i.e. the 2 original pages combined into 1 page), as InBooklet does.
The reason is, I have to print double-sided, and since my printer has unequal minimum top and bottom margins, the center lines on the spreads on either side of the printed sheet do not align.
My workaround for this is to create a new document with InBooklet and print it in 2 runs: (a) even-numbered spreads in landscape mode, (b) odd-numbered spreads in reverse landscape mode, reverse order, turning the paper appropriately when I reinsert it in the printer to do the 2nd side.
Another workaround is to export to PDF, then in Acrobat rotate either the odd or even pages 180 degrees, then print from Acrobat using my printer's duplex mode.
Is there any chance you could modify your script to create a new document, as InBooklet does?
I've used your script to impose the pages in the correct order, then tried copying one spread at a time to a new document with double width pages, but I have numbered lists, and the numbering is not preserved.
Or can you point me to some script(s) that demonstrates how to copy all of the items on a single page of the original document and paste to the left (or right) half of a double-size page in a new document? I understand the logic re selecting and pasting the pages in the right order and the correct side of the page, but the InD Scripting Help file isn't very helpful in finding the right methods and properties. It needs lots more sample code.....
I have 10+ years programming in Visual Basic, but I can also handle Java script.
Reply to #6<br /><br />Thanks, Dave. I'm not using a lot of features, page numbering among them, but I realize that a script would have to handle a lot of things that don't matter to me.<br /><br />Thanks for the info. It looks like the PDF export, rotate pages and print there, is the simplest solution until Adobe "fixes" Print Booklet (fingers crossed <g>).
I just posted a new script for CS3 only that takes advantage of the new ability to import pages from other documents. This first version is little more than a proof of concept and so it provides the bare minimum of functionality:
As long as your document has been saved and is a multiple of four pages long, the script produces something that looks a lot like the PageMaker booklets (i.e., single-sided document with double-sized pages with your pages in printer spreads.
The differences are:
1. I save the booklet file to the same folder as the original (to minimize the risk of the user saving over the orginal document and losing everything).
2. The pages are imported and linked rather than reshuffled. Thus, everything about the pages is perfectly preserved including footnote numbers, page breaks in text and what have you.
This also means that you can make the booklet as early in the process as you like and as you work on the original, the booklet will be automatically updated each time you open it (just don't change the number of pages -- if you do, you'll have to make a new booklet).
I've not given much thought to where to take this script in terms of new functionality. Obvious candidates are:
1. Supporting creep.
2. Supporting signatures.
3. Supporting InDesign Books.
4. Supporting Bleed and Slug (including at the binding).
5. Other kinds of n-up arrangements.
For now, you can give it a whirl by downloading:
After unzipping, put the .jsxbin file in the Scripts Panel folder in the Scripts folder of the Version 5.0 folder in the Adobe InDesign folder in Preferences. You can if you wish create subfolders in the Scripts Panel folder.
Access the Scripts panel via View/Automation.
To use the script, open a document that has a page length that is an exact multiple of four and then double-click the script's name in the panel.
If you are looking for suggestions for further development, one thing I noted relates to margins:
In my original document the pages are 4.75" x 4.75", with 0.25" margins all around. The newly created booklet has the correct size pages (9.5" wide x 4.75" high), but the margins are 0.5" all around. Setting the booklet margins to match the original would be a nice touch.
But of course there are "complications" if the margins vary from page to page in the original.
Handling creep would be a nice addition for long documents, of course.
Re the margins, I was a bit confused when I saw my pages all extending beyond the margins of the booklet. Perhaps it wouldn't matter to most people.
Assuming the only purpose of the document is to print it, since InD prints things that extend beyond the margins, I guess there is no "real" problem. OTOH, a 0" margin would work well (IMO).
I've discovered a small glitch. Let's say I open a document and immediately create the booklet. Then I close the booklet and delete its file from disk. All the while the original document remains open.
Then I try to run the script again: I get the message that unsaved documents cannot be processed. But Save is grayed out on the File menu since I haven't made any changes to the original. I tried Save As, specifying the same file name, but that doesn't fix the problem. To run the script again, I have to close the document and reopen it.
I ran into a variation of that problem. I believe it might be a bug in the scripting system itself. If I can repeat your experience, I'll report it to the Adobe scripting team. I even restructured the script to avoid the variation I ran into, but I didn't try the seqence you describe.
This lack of an imposition feature makes CS3 virtually unusable for us. What I've been doing is exporting the CS3 document in InDesign Interchange format and opening it in CS2 so I can use the InBooklet feature to make printer spreads. I'm the only one using CS3, and no one else will be getting it until this issue is resolved. This is an egregious upgrade.
Yes I did, Dave, but it didn't help. I'll go back and try it again; I was in a rush and maybe I didn't have something set correctly. I'm just trying to create printer spreads (11x17) from a multiple-of-four 8 1/2 x 11 document. Thanks.
Two other booklet/imposition scripts for InDesign CS, CS2, and CS3 are "Booklet CE", http://products.carlsenenterprises.com, and "ImpositionCompanion", http://www.rorohiko.com/. Both are for Mac and Windows.
Dave, I've tried it two more times on a Mac Pro and it seems to be working great now, but it didn't work at all on an older Powerbook; half the content on each page was off on the pasteboard. Maybe I missed the part about it being only for Intel Macs.
Thanks a bunch.
No, it's not only for MacIntels. It could well be that you've identified a real bug. I bet it has to do with the default ruler origin settings on the two machines. I'll take a look at the script and update it if necessary.
I gather that you don't use footnotes and you don't care much about numbered lists. Those two features just don't work in CS2's implementation of make booklet. And with the more sophisticated numbering in CS3, it's even more of a problem.
InBooklet SE shipped as part of InDesign CS2 and in the Pagemaker plugins for CS1. If you didn't get it either of those ways, you're out of luck. Quark acquired ALAP, the plugin manufacturer and promptly took it off the market.
In CS3 the booklet functionality has been replaced with Print Booklet, which you will find under the File menu.
That said, you need to tell us a lot more than you want to prints both sides of a page on your duplex printer. You only need booklet imposition if you have a multipage document that you want to convert to two-page spreads and bind. The actual duplexing is handled in the printer driver.
Thanks Peter, found in Inbooklet but could not fathom it out.
When I try to print in duplex it comes back and tells me I cannot do this. I have only just loaded the software so trying to find out something about it. I print a lot of newsletter for the various charities I work with and want to be able to do this in InDesign now I have it.
InBooklet organizes the pages into "printer's spreads" putting the front and back pages together and so forth. It does not set up the printer -- that's up to you.
For example, if you set up your newsletter as 8.5 x 11 facing pages (which is typically what you want to do for a lettersize newsletter that will be folded and mailed), InBooklet will "impose" 11 x 17 spreads (note that you need to work in multiples of 4 pages for this style of binding which is called two-up saddle-stitch) onto a new page size of 11 x 17. You must select the correct page size, positioning (centered) and orientation in the print dialog, which will appear after you click the print button. Printing on a sheet that is exactly twice the size of your page means you can't have any printer marks and you should set the margins in InBooklet to zero.
To get your printer to duplex you will need to click the "setup" button in the lower left of the print dialog and ignore the warning if it appears about making settings in the dialog. This will put you in another dialog which is the printer driver settings setup. Each of these is different, depending on the printer, so I can't tell you what to do from here, exactly, but if you look around you'll find the duplex settings. Typically you would want to set the duplex to "short edge binding" or "top to top" but you should run a test print and if it's wrong just change the setting.
I've been giving some thought to what it means for the MakeBooklet script to support bleeds and slugs. And there are two completely separate cases which could only be integrated into a single script by forcing the user to make a choice each time. This is caused by the famous "bleed at the binding" issue.
Bleed at the binding can only be supported by pushing the pages apart to allow the bleed to appear between the pages. Frankly, I'm not at all sure that there is much merit in doing this -- not because I don't believe bleed at the binding is important but because documents that require bleed at the binding usually require far more sophisticated impositions that the simple booklet imposition I'm providing with MakeBooklet.
There's also the issue of slug at the binding -- why would anyone do that? Who knows, but it is possible and for the script to support a slug on the other three sides, it can't ignore a slug at the binding in the original document.
Speaking of the original document, I do strongly believe that my script has no right at all to change the original document (other than insisting that it be in a saved, unmodified state -- and even then I give the user the chance to cancel). It would be so much easier to write this script if it could just set the binding slug and bleed to zero in the original document. But that I must not do.
So, I'm thinking that suporting bleed and slug in MakeBooklet requires that I create the booklet document with the same bleed and slug settings as the original document, except for at the binding because the booklet document doesn't bleed there -- it's not an edge of the paper. Then, when I place the pages I bring along the bleed and slug, and if any is present at the binding, I crop them out of existence.
So, having talked it through with myself, that's what I'll do for the next version of this MakeBooklet script. Like Bob and Peter, I am disappointed with the tiling issue for images. I understand from my contacts with Adobe that this is acknowledged to be a bug, but how soon they will fix it is anybody's guess. In the meantime, I do not see it as a big issue for people using MakeBooklet to do local printouts of documents they're sending off to a printer -- that's what I use it for; to make sure I provide the printer with a mock-up of how a document is supposed to be assembled when printed.