PrintablePlate Object

Publisher Developer Reference

Represents a single ink to be printed for the publication. The PrintablePlate object is a member of the PrintablePlates collection.

Remarks

To specify custom frequency or angle settings for a printable plate, the UseCustomHalftone of the AdvancedPrintOptions object must be set to True.

The PrintablePlates collection is generated when a publication's print mode is set to separations. Returns "Permission Denied" when any other print mode is specified.

The PrintablePlates collection represents the plates that will actually be printed for the publication, based on:

  • The plates (if any) you have defined for the publication
  • The advanced print options specified

You cannot programmatically create a printable plates collection, or add a printable plate to the collection.

Use the PrintMode property of the AdvancedPrintOptions object to set the publication to print as separations.

Each PrintablePlate object corresponds to a plate listed on the Separations tab of the Advanced Print Settings dialog box.

Example

Use the FindPlateByInkName method of the PrintablePlates collection to return a specific plate by referencing its ink name. Process colors are assigned different index numbers in the Plates collection than in the PrintablePlates collection. Use the FindPlateByInkName method to insure the desired Plate or PrintablePlate object is accessed.

The following example returns a spot color plate and sets several of its properties. The example assumes that separations have been specified as the active publication's print mode.

Visual Basic for Applications
  Sub SetPlatePropertiesByInkName()

Dim pplPlate As PrintablePlate ActiveDocument.AdvancedPrintOptions.UseCustomHalftone = True

Set pplPlate = ActiveDocument.AdvancedPrintOptions.PrintablePlates.<strong class="bterm">FindPlateByInkName</strong>(pbInkNameSpot3)

With pplPlate
    .Angle = 75
    .Frequency = 133
    .PrintPlate = True
End With

End Sub

The following example returns a list of the printable plates currently in the collection for the active publication. The example assumes that separations have been specified as the active publication's print mode.

Visual Basic for Applications
  Sub ListPrintablePlates()
    Dim pplTemp As PrintablePlates
    Dim pplLoop As PrintablePlate
    
Set pplTemp = ActiveDocument.AdvancedPrintOptions.PrintablePlates
Debug.Print "There are " &amp; pplTemp.Count &amp; " printable plates in this publication."

For Each pplLoop In pplTemp
    With pplLoop
        Debug.Print "Printable Plate Name: " &amp; .Name
        Debug.Print "Index: " &amp; .Index
        Debug.Print "Ink Name: " &amp; .InkName
        Debug.Print "Plate Angle: " &amp; .Angle
        Debug.Print "Plate Frequency: " &amp; .Frequency
        Debug.Print "Print Plate?: " &amp; .PrintPlate
    End With
Next pplLoop

End Sub

See Also