Adobe 27510753 Scripting Guide - Page 156
Setting margins and columns
![]() |
UPC - 718659445294
View all Adobe 27510753 manuals
Add to My Manuals
Save this manual to your list of manuals |
Page 156 highlights
148 Working with Documents in VBScript Adobe InDesign CS2 Scripting Guide Setting page margins and columns Each page in a document can have its own margin and column settings. With InDesign scripting, these properties are part of the MarginPreferences object for each page. This example script creates a new document, then sets the margins and columns for all pages in the master spread: Rem MarginsAndColumns.vbs Rem An InDesign CS2 VBScript Rem Sets up the margins and columns for the first page of an example document. Set myInDesign = CreateObject("InDesign.Application.CS2") Set myDocument = myInDesign.Documents.Add With myDocument.Pages.Item(1).MarginPreferences .ColumnCount = 3 Rem columnGutter can be a number or a measurement string. .ColumnGutter = "1p" .Top = "4p" .Bottom = "6p" Rem When document.documentPreferences.facingPages = true, Rem "left" means inside "right" means outside. .Left = "6p" .Right = "4p" End With InDesign does not allow you to create a page that is smaller than the sum of the relevant margins, that is, the width of the page must be greater than the sum of the current left and right page margins, and the height of the page must be greater than the sum of the top and bottom margins. If you're creating very small pages (for example, for individual newspaper advertisements) using the InDesign user interface, you can easily set the correct margin sizes as you create the document by entering new values in the document default page Margin fields in the New Document dialog box. From scripting, however, the solution is not as clear-when you create a document, it uses the application default margin preferences. These margins are applied to all pages of the document, including master pages. Setting the document margin preferences affects only new pages and has no effect on existing pages. If you try to set the page height and page width to values smaller than the sum of the corresponding margins on any of the existing pages, InDesign does not change the page size. There are two solutions. The first is to set the margins of existing pages before trying to change the page size: Rem PageMarginsForSmallPages.vbs Rem An InDesign CS2 VBScript Rem Creates a new document and sets up page margins. Set myInDesign = CreateObject("InDesign.Application.CS2") Set myDocument = myInDesign.Documents.Add myDocument.ViewPreferences.HorizontalMeasurementUnits = idMeasurementUnits.idPoints myDocument.ViewPreferences.VerticalMeasurementUnits = idMeasurementUnits.idPoints With myDocument.MarginPreferences .Top = 0 .Left = 0 .Bottom = 0 .Right = 0 .ColumnCount = 1 .ColumnGutter = 0 End With Rem The following assumes that your default document contains a single page. With myDocument.Pages.Item(1).MarginPreferences .Top = 0 .Left = 0 .Bottom = 0 .Right = 0 .ColumnCount = 1 .ColumnGutter = 0 End With
![](/manual_guide/products/adobe-27510753-scripting-guide-5f6265c/156.png)