PTPatternColor

@interface PTPatternColor : NSObject

Patterns are quite general, and have many uses; for example, they can be used to create various graphical textures, such as weaves, brick walls, sunbursts, and similar geometrical and chromatic effects.

Patterns are specified in a special family of color spaces named Pattern, whose ‘color values’ are PatternColor objects instead of the numeric component values used with other spaces. Therefore PatternColor is to pattern color space what is ColorPt to all other color spaces.

A tiling pattern consists of a small graphical figure called a pattern cell. Painting with the pattern replicates the cell at fixed horizontal and vertical intervals to fill an area. The effect is as if the figure were painted on the surface of a clear glass tile, identical copies of which were then laid down in an array covering the area and trimmed to its boundaries. This is called tiling the area.

The pattern cell can include graphical elements such as filled areas, text, and sampled images. Its shape need not be rectangular, and the spacing of tiles can differ from the dimensions of the cell itself.

The order in which individual tiles (instances of the cell) are painted is unspecified and unpredictable; it is inadvisable for the figures on adjacent tiles to overlap.

  • Create a PatternColor from the given SDF/Cos object listed under Pattern entry in page Resource dictionary

    Declaration

    Objective-C

    - (instancetype)initWithPattern:(PTObj *)pattern;

    Swift

    init!(pattern: PTObj!)
  • Declaration

    Objective-C

    - (PTPatternColorType)GetType;

    Swift

    func getType() -> PTPatternColorType

    Return Value

    The pattern type

  • Declaration

    Objective-C

    - (PTObj *)GetSDFObj;

    Swift

    func getSDFObj() -> PTObj!

    Return Value

    the underlying SDF/Cos object

  • Declaration

    Objective-C

    - (PTMatrix2D *)GetMatrix;

    Swift

    func getMatrix() -> PTMatrix2D!

    Return Value

    pattern matrix, a transformation matrix that maps the pattern’s internal coordinate system to the default coordinate system of the pattern’s parent content stream (the content stream in which the pattern is defined as a resource). The concatenation of the pattern matrix with that of the parent content stream establishes the pattern coordinate space, within which all graphics objects in the pattern are interpreted.

  • Note

    for patterns other than Shading this method throws an exception.

    Declaration

    Objective-C

    - (PTShading *)GetShading;

    Swift

    func getShading() -> PTShading!

    Return Value

    The shading object defining the shading pattern’s gradient fill.

  • Note

    for patterns other than Tiling this method throws an exception.

    Declaration

    Objective-C

    - (PTTilingType)GetTilingType;

    Swift

    func getTilingType() -> PTTilingType

    Return Value

    the tiling type identifier that controls adjustments to the spacing of tiles relative to the device pixel grid:

  • Note

    for patterns other than Tiling this method throws an exception.

    Declaration

    Objective-C

    - (PTPDFRect *)GetBBox;

    Swift

    func getBBox() -> PTPDFRect!

    Return Value

    A rectangle in the pattern coordinate system giving the coordinates of the left, bottom, right, and top edges, respectively, of the pattern cell’s bounding box. These boundaries are used to clip the pattern cell.

  • Note

    that XStep and YStep may differ from the dimensions of the pattern cell implied by the BBox entry. This allows tiling with irregularly shaped figures. XStep and YStep may be either positive or negative, but not zero.

    Note

    for patterns other than Tiling this method throws an exception.

    Declaration

    Objective-C

    - (double)GetXStep;

    Swift

    func getXStep() -> Double

    Return Value

    the desired horizontal spacing between pattern cells, measured in the pattern coordinate system.

  • Note

    for patterns other than Tiling this method throws an exception.

    Declaration

    Objective-C

    - (double)GetYStep;

    Swift

    func getYStep() -> Double

    Return Value

    the desired vertical spacing between pattern cells, measured in the pattern coordinate system.