Encapsulated PostScript (EPS) Feature Representation

In addition to the generic FME feature attributes that FME Workbench adds to all features (see About Feature Type Attributes), this format also adds format-specific attributes (Format Attributes).

EPS features consist of geometry but no user-defined attributes, although there are special attributes to hold the type of the geometric entity and its display parameters. The feature type of features written to EPS is ignored.

All EPS features contain a eps_type attribute, which identifies the geometric type. Each element type also has a color associated with it. Depending on the geometric type, the feature contains additional attributes specific to the geometric type. These are described in subsequent sections.

Attribute Name

Contents

eps_type

 

 

 

 

The EPS geometric type of this entity.

Range:

eps_polyline|

eps_area|

eps_text|

eps_ellipse|

eps_arc

Default: No default

eps_cmyk_color

 

 

This is a string that represents the color intensities of the element. It is formatted as cyan (C), magenta (M), yellow (Y) and black (K), This color attribute has highest priority. If present, it will be used in preference over eps_color and fme_color attributes.

Range: String. (0..1, 0..1, 0..1, 0...1)

Default: String (0,0,0, 1)

eps_color

 

 

This is a string that represents the color intensities of the element. It is formatted as red, green, blue intensities which range between 0..1 Note that if this attribute is not found, then fme_color will be used.

Range: String. (0..1, 0..1, 0..1)

Default: String (0,0,0)

Arc

eps_type: eps_arc

The arc definition handles arcs, including those with different primary and secondary axis values. EPS arc features are linear features used to specify elliptical arcs. As such, the feature definition for eps_arc is similar to the ellipse definition with two additional angles to control the portion of the ellipse boundary drawn. EPS arcs also support rotation.

Tip: The ArcStroker transformer can be used to convert an arc to a linestring. This is useful for storing arcs in systems that do not support them directly.

In addition to the attributes below, arcs also make use of the pen attributes as defined for eps_area since arcs can also have fills.

Attribute Name

Contents

eps_primary_axis

The length of the semi-major axis in ground units. (x-axis)

Range: Any real number > 0

Default: No default

eps_secondary_axis

The length of the semi-minor axis in ground units. (y-axis)

Range: Any real number > 0

Default: No default

eps_start_angle

How FME calculates start_angle and sweep_angle

Range: 0.0..360.0

Default: 0

eps_sweep_angle

How FME calculates start_angle and sweep_angle

Range: 0.0..360.0

Default: No default

eps_rotation

The rotation of the major axis. The rotation is measured in degrees counter clockwise up from horizontal.

Range: 360.0..360.0

Default: 0

Areas

eps_type: eps_area

EPS polygon features specify area (polygonal) features. The areas that make up a single feature may or may not be disjoint, and may contain polygons that have holes. Each area has a pen style associated with it to control the color, line weight, line type, and brush pattern used when it’s drawn. If the area contains holes then when the fill pattern is applied, the holes enclosed by the area will not be filled. If no pen style is defined for a polygon entity, the previous style is used.

The following table lists the special FME attribute names used to control the EPS polygon settings.

Attribute Name

Contents

eps_line_width

Defines the line width used to draw the polyline. By default, the line is drawn one pixel wide.

Range: Float >= 0

Default: 0.0

eps_dash_on

The number of pixels to be used as the on part of the dashed line used to draw the feature. If eps_line_width is specified, then this value is multiplied by the size of the pen to determine the number of pixels. If both eps_dash_on and eps_dash_off are 0, then a solid line is used.

Range: Integer > 0

Default: 0

eps_dash_off

The number of pixels to be used as the off part of the dashed line used to draw the feature. If eps_line_width is specified, then this value is multiplied by the size of the pen to determine the number of pixels. If both eps_dash_on and eps_dash_off are 0, then a solid line is used.

Range: Integer > 0

Default: 0

eps_line_join_type

 

 

Specify the type of corner that should be drawn onto this path.

0 = sharp corners, 1 = rounded corners, 2 = butt-end corners

Range: 0, 1, 2

Default: 0

Optional: Yes

eps_cmyk_fill_color

 

 

This is a string that represents the fill color intensities of the element. It is formatted as cyan (C), magenta (M), yellow (Y) and black (K), This color attribute has highest priority. If present, it will be used in preference over eps_fill_color and fme_fill_color attributes.

Range: String. (0..1, 0..1, 0..1, 0...1)

Default: String (0,0,0,1)

eps_fill_color

This is a string that represents the color intensities of the element. It is formatted as red, green, blue intensities which range between 0..1. If this attribute is not found, then the writer will refer to fme_fill_color.

Range: String. (0..1, 0..1, 0..1)

Default: None

Ellipse

eps_type: eps_ellipse

The eps_ellipse features are point features, and have only a single coordinate. This point serves as the center of the ellipse. Additional attributes specify the primary axis (X) and secondary axis (Y) of the ellipse. EPS ellipses also support rotation.

Tip: The primary ellipse axis is not necessarily the longest axis, but rather the one on the x axis.

From the EPS ellipse, we also can arrive at circles (since they are just ellipses with both primary and secondary axes being equal).

In addition to the attributes below, ellipses also make use of the brush and pen attributes as defined by eps_area.

Attribute Name

Contents

eps_primary_axis

The length of the semi-major axis in ground units. (x-axis)

Range: Any real number > 0

Default: No default

eps_secondary_axis

The length of the semi-minor axis in ground units. (y-axis)

Range: Any real number > 0

Default: No default

eps_rotation

The rotation of the major axis. The rotation is measured in degrees counterclockwise up from horizontal.

Range: -360.0..360.0

Default: 0

Point

eps_type: eps_point

EPS point is used for points in EPS.

The table below lists the special FME attribute names used to control the EPS point:

Attribute Name

Contents

eps_size

The size of the point specified in ground units

Range: float > 0

Default: 0

eps_rotation

The point rotation is given in degrees and measured counterclockwise up from the horizontal.

Range: -360..360

Default: 0

eps_font

The PostScript name of the font. The fonts supported depend on the destination of the EPS file. Some typical fonts are Times, Helvetica and Courier.

Range: String

Default: Times

eps_style

The style of the font. This attribute must be matched with the current font since it’s the combination of font and style that EPS recognizes. Some typical fonts and styles are Times-(Roman, Italic, Bold, BoldItalic), Helvetica-(Oblique, Bold, BoldOblique) and Courier-(Oblique, Bold, BoldOblique)

Range: String

Default: Roman

eps_symbol_string

The text to be displayed.

Range: String

Default: “.”

Polylines

eps_type: eps_polyline

EPS polyline features specify linear features defined by a sequence of x and y coordinates. Polylines encapsulate the concept of a line since a line is just a sequence of two points. Each polyline has a pen style associated with it that specifies the color, line weight, and line type used when the line is drawn. If no pen type is defined for a polyline entity, if line attributes aren’t found, then default parameters are used.

The table below lists the special FME attribute names used to control the EPS polyline settings.

Attribute Name

Contents

eps_line_width

Defines the line width used to draw the polyline. By default, the line is drawn one pixel wide.

Range: Float >= 0

Default: 0.0

eps_dash_on

The number of pixels to be used as the on part of the dashed line used to draw the feature. If eps_line_width is specified, then this value is multiplied by the size of the pen to determine the number of pixels. If both eps_dash_on and eps_dash_off are 0, then a solid line is used.

Range: Integer > 0

Default: 0

eps_dash_off

The number of pixels to be used as the off part of the dashed line used to draw the feature. If eps_line_width is specified, then this value is multiplied by the size of the pen to determine the number of pixels. If both eps_dash_on and eps_dash_off are 0, then a solid line is used.

Range: Integer > 0

Default: 0

eps_line_join_type

Specify the type of corner that should be drawn onto this path.

0 = sharp corners, 1 = rounded corners, 2 = butt-end corners

Range: 0, 1, 2

Default: 0

Optional: Yes

Text

eps_type: eps_text

EPS text is used for text annotation in EPS. The coordinates specify the lower left coordinates of the text when it is placed. In addition, the size and angle in which the text is output can be specified.

The table below lists the special FME attribute names used to control the EPS text:

Attribute Name

Contents

eps_size

The size of the text specified in ground units

Range: float > 0

Default: 0

eps_rotation

The text rotation is given in degrees and measured counterclockwise up from the horizontal.

Range: -360..360

Default: 0

eps_font

The PostScript name of the font. The fonts supported depend on the destination of the EPS file. Some typical fonts are Times, Helvetica and Courier.

Range: String

Default: Times

eps_style

The style of the font. This attribute must be matched with the current font since it’s the combination of font and style that EPS recognizes. Some typical fonts and styles are Times-(Roman, Italic, Bold, BoldItalic), Helvetica-(Oblique, Bold, BoldOblique) and Courier-(Oblique, Bold, BoldOblique)

Range: String

Default: Roman

eps_text_string

The text to be displayed.

Range: String

Default: No default