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 |