org.apache.batik.util.awt.svg
Class SVGPath

java.lang.Object
  |
  +--org.apache.batik.util.awt.svg.SVGGraphicObjectConverter
        |
        +--org.apache.batik.util.awt.svg.SVGPath
All Implemented Interfaces:
CSSConstants, SVGConstants, SVGSyntax

public class SVGPath
extends SVGGraphicObjectConverter

Utility class that converts a Shape object into an SVG path element. Note that this class does not attempt to find out what type of object (e.g., whether the input Shape is a Rectangle or an Ellipse. This type of analysis is done by the SVGShape class). Note that this class assumes that the parent of the path element it generates defines the fill-rule as nonzero. This is not the SVG default value. However, because it is the GeneralPath's default, it is preferable to have this attribute specified once to set the default (in the parent element, e.g., a group) and then only in the rare instance where the winding rule is different than the default. Otherwise, the attribute would have to be specified in the majority of path elements.


Fields inherited from class org.apache.batik.util.awt.svg.SVGGraphicObjectConverter
domFactory, ERROR_DOM_FACTORY_NULL
 
Fields inherited from interface org.apache.batik.util.awt.svg.SVGSyntax
ATTR_HREF, CLOSE_PARENTHESIS, COMMA, ID_PREFIX_ALPHA_COMPOSITE_CLEAR, ID_PREFIX_ALPHA_COMPOSITE_DST_IN, ID_PREFIX_ALPHA_COMPOSITE_DST_OUT, ID_PREFIX_ALPHA_COMPOSITE_DST_OVER, ID_PREFIX_ALPHA_COMPOSITE_SRC, ID_PREFIX_ALPHA_COMPOSITE_SRC_IN, ID_PREFIX_ALPHA_COMPOSITE_SRC_OUT, ID_PREFIX_AMBIENT_LIGHT, ID_PREFIX_BUMP_MAP, ID_PREFIX_CLIP_PATH, ID_PREFIX_DEFS, ID_PREFIX_DIFFUSE_ADD, ID_PREFIX_DIFFUSE_LIGHTING_RESULT, ID_PREFIX_FE_COMPLEX_FILTER, ID_PREFIX_FE_COMPONENT_TRANSFER, ID_PREFIX_FE_COMPOSITE, ID_PREFIX_FE_CONVOLVE_MATRIX, ID_PREFIX_FE_DIFFUSE_LIGHTING, ID_PREFIX_FE_FLOOD, ID_PREFIX_FE_GAUSSIAN_BLUR, ID_PREFIX_FE_LIGHTING_FILTER, ID_PREFIX_FE_SPECULAR_LIGHTING, ID_PREFIX_GENERIC_DEFS, ID_PREFIX_LINEAR_GRADIENT, ID_PREFIX_MASK, ID_PREFIX_PATTERN, ID_PREFIX_RADIAL_GRADIENT, ID_PREFIX_SPECULAR_ADD, ID_PREFIX_SPECULAR_LIGHTING_RESULT, OPEN_PARENTHESIS, RGB_PREFIX, RGB_SUFFIX, SIGN_PERCENT, SIGN_POUND, SPACE, URL_PREFIX, URL_SUFFIX
 
Fields inherited from interface org.apache.batik.util.SVGConstants
ATTR_AMPLITUDE, ATTR_AZIMUTH, ATTR_BASE_FREQUENCY, ATTR_BIAS, ATTR_CLIP_PATH, ATTR_CLIP_PATH_UNITS, ATTR_COLOR_INTERPOLATION, ATTR_COLOR_RENDERING, ATTR_CX, ATTR_CY, ATTR_D, ATTR_DIFFUSE_CONSTANT, ATTR_DIVISOR, ATTR_DX, ATTR_DY, ATTR_EDGE_MODE, ATTR_ELEVATION, ATTR_ENABLE_BACKGROUND, ATTR_EXPONENT, ATTR_FILL, ATTR_FILL_OPACITY, ATTR_FILL_RULE, ATTR_FILTER, ATTR_FILTER_RES, ATTR_FILTER_UNITS, ATTR_FLOOD_COLOR, ATTR_FLOOD_OPACITY, ATTR_FONT_FAMILY, ATTR_FONT_SIZE, ATTR_FONT_STYLE, ATTR_FONT_WEIGHT, ATTR_FX, ATTR_FY, ATTR_GRADIENT_TRANSFORM, ATTR_GRADIENT_UNITS, ATTR_HEIGHT, ATTR_ID, ATTR_IMAGE_RENDERING, ATTR_IN, ATTR_IN2, ATTR_INTERCEPT, ATTR_K1, ATTR_K2, ATTR_K3, ATTR_K4, ATTR_KERNEL_MATRIX, ATTR_KERNEL_UNIT_LENGTH_X, ATTR_KERNEL_UNIT_LENGTH_Y, ATTR_LIGHT_COLOR, ATTR_LIMITING_CONE_ANGLE, ATTR_MASK, ATTR_MASK_CONTENT_UNITS, ATTR_MASK_UNITS, ATTR_MEDIA, ATTR_METHOD, ATTR_MODE, ATTR_NUM_OCTAVES, ATTR_OFFSET, ATTR_OPACITY, ATTR_OPERATOR, ATTR_ORDER, ATTR_ORDER_X, ATTR_ORDER_Y, ATTR_PATTERN_CONTENT_UNITS, ATTR_PATTERN_TRANSFORM, ATTR_PATTERN_UNITS, ATTR_POINTS, ATTR_POINTS_AT_X, ATTR_POINTS_AT_Y, ATTR_POINTS_AT_Z, ATTR_PRESERVE_ALPHA, ATTR_PRESERVE_ASPECT_RATIO, ATTR_PRIMITIVE_UNITS, ATTR_R, ATTR_RADIUS, ATTR_RESULT, ATTR_RESULT_SCALE, ATTR_RX, ATTR_RY, ATTR_SCALE, ATTR_SEED, ATTR_SHAPE_RENDERING, ATTR_SLOPE, ATTR_SPACE, ATTR_SPACING, ATTR_SPECULAR_CONSTANT, ATTR_SPECULAR_EXPONENT, ATTR_SPREAD_METHOD, ATTR_START_OFFSET, ATTR_STD_DEVIATION, ATTR_STITCH_TILES, ATTR_STOP_COLOR, ATTR_STOP_OPACITY, ATTR_STROKE, ATTR_STROKE_DASHARRAY, ATTR_STROKE_DASHOFFSET, ATTR_STROKE_LINECAP, ATTR_STROKE_LINEJOIN, ATTR_STROKE_MITERLIMIT, ATTR_STROKE_OPACITY, ATTR_STROKE_WIDTH, ATTR_STYLE, ATTR_SURFACE_SCALE, ATTR_SYSTEM_LANGUAGE, ATTR_TABLE, ATTR_TABLE_VALUES, ATTR_TARGET, ATTR_TARGET_X, ATTR_TARGET_Y, ATTR_TEXT_ANCHOR, ATTR_TEXT_LENGTH, ATTR_TEXT_RENDERING, ATTR_TITLE, ATTR_TRANSFORM, ATTR_TYPE, ATTR_VALUES, ATTR_VIEW_BOX, ATTR_WIDTH, ATTR_X, ATTR_X_CHANNEL_SELECTOR, ATTR_X1, ATTR_X2, ATTR_Y, ATTR_Y_CHANNEL_SELECTOR, ATTR_Y1, ATTR_Y2, ATTR_Z, DEFAULT_VALUE_FILTER_HEIGHT, DEFAULT_VALUE_FILTER_WIDTH, DEFAULT_VALUE_FILTER_X, DEFAULT_VALUE_FILTER_Y, DEFAULT_VALUE_MASK_HEIGHT, DEFAULT_VALUE_MASK_WIDTH, DEFAULT_VALUE_MASK_X, DEFAULT_VALUE_MASK_Y, DEFAULT_VALUE_PATTERN_HEIGHT, DEFAULT_VALUE_PATTERN_WIDTH, DEFAULT_VALUE_PATTERN_X, DEFAULT_VALUE_PATTERN_Y, PATH_CLOSE, PATH_CUBIC_TO, PATH_LINE_TO, PATH_MOVE, PATH_QUAD_TO, SVG_NAMESPACE_URI, SVG_PUBLIC_ID, SVG_SYSTEM_ID, TAG_A, TAG_ANIMATE, TAG_CIRCLE, TAG_CLIP_PATH, TAG_DEFS, TAG_DESC, TAG_ELLIPSE, TAG_FE_BLEND, TAG_FE_COLOR_MATRIX, TAG_FE_COMPONENT_TRANSFER, TAG_FE_COMPOSITE, TAG_FE_CONVOLVE_MATRIX, TAG_FE_DIFFUSE_LIGHTING, TAG_FE_DISPLACEMENT_MAP, TAG_FE_DISTANT_LIGHT, TAG_FE_FLOOD, TAG_FE_FUNC_A, TAG_FE_FUNC_B, TAG_FE_FUNC_G, TAG_FE_FUNC_R, TAG_FE_GAUSSIAN_BLUR, TAG_FE_IMAGE, TAG_FE_MERGE, TAG_FE_MERGE_NODE, TAG_FE_MORPHOLOGY, TAG_FE_OFFSET, TAG_FE_POINT_LIGHT, TAG_FE_SPECULAR_LIGHTING, TAG_FE_SPOT_LIGHT, TAG_FE_TILE, TAG_FE_TURBULENCE, TAG_FILTER, TAG_G, TAG_IMAGE, TAG_LINE, TAG_LINEAR_GRADIENT, TAG_MASK, TAG_METADATA, TAG_PATH, TAG_PATTERN, TAG_POLYGON, TAG_POLYLINE, TAG_RADIAL_GRADIENT, TAG_RECT, TAG_SCRIPT, TAG_STOP, TAG_STYLE, TAG_SVG, TAG_SWITCH, TAG_SYMBOL, TAG_TEXT, TAG_TEXT_PATH, TAG_TITLE, TAG_TREF, TAG_TSPAN, TAG_USE, TRANSFORM_MATRIX, TRANSFORM_ROTATE, TRANSFORM_SCALE, TRANSFORM_SKEWX, TRANSFORM_SKEWY, TRANSFORM_TRANSLATE, VALUE_A, VALUE_ALIGN, VALUE_ARITHMETIC, VALUE_ATOP, VALUE_AUTO, VALUE_B, VALUE_BACKGROUND_IMAGE, VALUE_COMPOSITE, VALUE_CRISP_EDGES, VALUE_DARKEN, VALUE_DIGIT_ONE, VALUE_DILATE, VALUE_DISCRETE, VALUE_EDGE_DUPLICATE, VALUE_EDGE_NONE, VALUE_END, VALUE_ERODE, VALUE_EVEN_ODD, VALUE_EXACT, VALUE_FLOOD, VALUE_FONT_STYLE_ITALIC, VALUE_FONT_STYLE_NORMAL, VALUE_FONT_STYLE_OBLIQUE, VALUE_FONT_WEIGHT_100, VALUE_FONT_WEIGHT_200, VALUE_FONT_WEIGHT_300, VALUE_FONT_WEIGHT_400, VALUE_FONT_WEIGHT_500, VALUE_FONT_WEIGHT_600, VALUE_FONT_WEIGHT_700, VALUE_FONT_WEIGHT_800, VALUE_FONT_WEIGHT_900, VALUE_FONT_WEIGHT_BOLD, VALUE_FONT_WEIGHT_BOLDER, VALUE_FONT_WEIGHT_LIGHTER, VALUE_FONT_WEIGHT_NORMAL, VALUE_FRACTAL_NOISE, VALUE_G, VALUE_GAMMA, VALUE_GEOMETRIC_PRECISION, VALUE_HUE_ROTATE, VALUE_HUNDRED_PERCENT, VALUE_IDENTITY, VALUE_IN, VALUE_LIGHTEN, VALUE_LINE_CAP_BUTT, VALUE_LINE_CAP_ROUND, VALUE_LINE_CAP_SQUARE, VALUE_LINE_JOIN_BEVEL, VALUE_LINE_JOIN_MITER, VALUE_LINE_JOIN_ROUND, VALUE_LINEAR, VALUE_LINEAR_RGB, VALUE_LUMINANCE_TO_ALPHA, VALUE_MATRIX, VALUE_MIDDLE, VALUE_MULTIPLY, VALUE_NEW, VALUE_NINETY, VALUE_NO_STITCH, VALUE_NON_ZERO, VALUE_NONE, VALUE_NORMAL, VALUE_OBJECT_BOUNDING_BOX, VALUE_ONE, VALUE_OPAQUE, VALUE_OPTIMIZE_LEGIBILITY, VALUE_OPTIMIZE_QUALITY, VALUE_OPTIMIZE_SPEED, VALUE_OUT, VALUE_OVER, VALUE_PAD, VALUE_PRESERVE, VALUE_R, VALUE_REFLECT, VALUE_REPEAT, VALUE_SATURATE, VALUE_SCREEN, VALUE_SOURCE_GRAPHIC, VALUE_SRGB, VALUE_START, VALUE_STITCH, VALUE_STRETCH, VALUE_TABLE, VALUE_TURBULENCE, VALUE_TYPE_LINEAR, VALUE_TYPE_TABLE, VALUE_USER_SPACE, VALUE_USER_SPACE_ON_USE, VALUE_XOR, VALUE_ZERO, VALUE_ZERO_PERCENT
 
Fields inherited from interface org.apache.batik.util.CSSConstants
CSS_ACCUMULATE_VALUE, CSS_ACTIVEBORDER_VALUE, CSS_ACTIVECAPTION_VALUE, CSS_AFTER_EDGE_VALUE, CSS_ALIGNMENT_BASELINE_PROPERTY, CSS_ALL_VALUE, CSS_APPWORKSPACE_VALUE, CSS_AUTO_VALUE, CSS_AUTOSENSE_SCRIPT_VALUE, CSS_BACKGROUND_VALUE, CSS_BASELINE_SHIFT_PROPERTY, CSS_BASELINE_VALUE, CSS_BEFORE_EDGE_VALUE, CSS_BEVEL_VALUE, CSS_BIDI_OVERRIDE_VALUE, CSS_BLINK_VALUE, CSS_BLOCK_VALUE, CSS_BOLD_VALUE, CSS_BOLDER_VALUE, CSS_BOTTOM_VALUE, CSS_BUTT_VALUE, CSS_BUTTONFACE_VALUE, CSS_BUTTONHIGHLIGHT_VALUE, CSS_BUTTONSHADOW_VALUE, CSS_BUTTONTEXT_VALUE, CSS_CAPTIONTEXT_VALUE, CSS_CLIP_PATH_PROPERTY, CSS_CLIP_PROPERTY, CSS_CLIP_RULE_PROPERTY, CSS_COLLAPSE_VALUE, CSS_COLOR_INTERPOLATION_PROPERTY, CSS_COLOR_PROPERTY, CSS_COLOR_RENDERING_PROPERTY, CSS_COMPACT_VALUE, CSS_CONDENSED_VALUE, CSS_CRISPEDGES_VALUE, CSS_CROSSHAIR_VALUE, CSS_CURRENTCOLOR_VALUE, CSS_CURSIVE_VALUE, CSS_CURSOR_PROPERTY, CSS_DEFAULT_VALUE, CSS_DIRECTION_PROPERTY, CSS_DISPLAY_PROPERTY, CSS_DOMINANT_BASELINE_PROPERTY, CSS_E_RESIZE_VALUE, CSS_EMBED_VALUE, CSS_ENABLE_BACKGROUND_PROPERTY, CSS_END_VALUE, CSS_EVENODD_VALUE, CSS_EXPANDED_VALUE, CSS_EXTRA_CONDENSED_VALUE, CSS_EXTRA_EXPANDED_VALUE, CSS_FANTASY_VALUE, CSS_FILL_OPACITY_PROPERTY, CSS_FILL_PROPERTY, CSS_FILL_RULE_PROPERTY, CSS_FILL_VALUE, CSS_FILLSTROKE_VALUE, CSS_FILTER_PROPERTY, CSS_FLOOD_COLOR_PROPERTY, CSS_FLOOD_OPACITY_PROPERTY, CSS_FONT_FAMILY_PROPERTY, CSS_FONT_SIZE_ADJUST_PROPERTY, CSS_FONT_SIZE_PROPERTY, CSS_FONT_STRETCH_PROPERTY, CSS_FONT_STYLE_PROPERTY, CSS_FONT_VARIANT_PROPERTY, CSS_FONT_WEIGHT_PROPERTY, CSS_GEOMETRICPRECISION_VALUE, CSS_GLYPH_ORIENTATION_HORIZONTAL_PROPERTY, CSS_GLYPH_ORIENTATION_VERTICAL_PROPERTY, CSS_GRAYTEXT_VALUE, CSS_HANGING_VALUE, CSS_HELP_VALUE, CSS_HIDDEN_VALUE, CSS_HIGHLIGHT_VALUE, CSS_HIGHLIGHTTEXT_VALUE, CSS_IDEOGRAPHIC_VALUE, CSS_IMAGE_RENDERING_PROPERTY, CSS_INACTIVEBORDER_VALUE, CSS_INACTIVECAPTION_VALUE, CSS_INACTIVECAPTIONTEXT_VALUE, CSS_INFOBACKGROUND_VALUE, CSS_INFOTEXT_VALUE, CSS_INLINE_TABLE_VALUE, CSS_INLINE_VALUE, CSS_ITALIC_VALUE, CSS_LARGE_VALUE, CSS_LARGER_VALUE, CSS_LETTER_SPACING_PROPERTY, CSS_LIGHTER_VALUE, CSS_LIGHTING_COLOR_PROPERTY, CSS_LINE_THROUGH_VALUE, CSS_LINEARRGB_VALUE, CSS_LIST_ITEM_VALUE, CSS_LOWER_VALUE, CSS_LR_TB_VALUE, CSS_LR_VALUE, CSS_LTR_VALUE, CSS_MARKER_END_PROPERTY, CSS_MARKER_MID_PROPERTY, CSS_MARKER_START_PROPERTY, CSS_MARKER_VALUE, CSS_MASK_PROPERTY, CSS_MATHEMATICAL_VALUE, CSS_MEDIUM_VALUE, CSS_MENU_VALUE, CSS_MENUTEXT_VALUE, CSS_MIDDLE_VALUE, CSS_MITER_VALUE, CSS_MONOSPACED_VALUE, CSS_MOVE_VALUE, CSS_N_RESIZE_VALUE, CSS_NARROWER_VALUE, CSS_NE_RESIZE_VALUE, CSS_NEW_VALUE, CSS_NO_CHANGE_VALUE, CSS_NONE_VALUE, CSS_NONZERO_VALUE, CSS_NORMAL_VALUE, CSS_NW_RESIZE_VALUE, CSS_OBLIQUE_VALUE, CSS_OPACITY_PROPERTY, CSS_OPTIMIZELEGIBILITY_VALUE, CSS_OPTIMIZEQUALITY_VALUE, CSS_OPTIMIZESPEED_VALUE, CSS_OVERFLOW_PROPERTY, CSS_OVERLINE_VALUE, CSS_PAINTED_VALUE, CSS_POINTER_EVENTS_PROPERTY, CSS_POINTER_VALUE, CSS_RESET_VALUE, CSS_RL_TB_VALUE, CSS_RL_VALUE, CSS_ROUND_VALUE, CSS_RTL_VALUE, CSS_RUN_IN_VALUE, CSS_S_RESIZE_VALUE, CSS_SANS_SERIF_VALUE, CSS_SCROLL_VALUE, CSS_SCROLLBAR_VALUE, CSS_SE_RESIZE_VALUE, CSS_SEMI_CONDENSED_VALUE, CSS_SEMI_EXPANDED_VALUE, CSS_SERIF_VALUE, CSS_SHAPE_RENDERING_PROPERTY, CSS_SMALL_CAPS_VALUE, CSS_SMALL_VALUE, CSS_SMALLER_VALUE, CSS_SQUARE_VALUE, CSS_SRGB_VALUE, CSS_START_VALUE, CSS_STOP_COLOR_PROPERTY, CSS_STOP_OPACITY_PROPERTY, CSS_STROKE_DASHARRAY_PROPERTY, CSS_STROKE_DASHOFFSET_PROPERTY, CSS_STROKE_LINECAP_PROPERTY, CSS_STROKE_LINEJOIN_PROPERTY, CSS_STROKE_MITERLIMIT_PROPERTY, CSS_STROKE_OPACITY_PROPERTY, CSS_STROKE_PROPERTY, CSS_STROKE_VALUE, CSS_STROKE_WIDTH_PROPERTY, CSS_SUB_VALUE, CSS_SUPER_VALUE, CSS_SW_RESIZE_VALUE, CSS_TABLE_CAPTION_VALUE, CSS_TABLE_CELL_VALUE, CSS_TABLE_COLUMN_GROUP_VALUE, CSS_TABLE_COLUMN_VALUE, CSS_TABLE_FOOTER_GROUP_VALUE, CSS_TABLE_HEADER_GROUP_VALUE, CSS_TABLE_ROW_GROUP_VALUE, CSS_TABLE_ROW_VALUE, CSS_TABLE_VALUE, CSS_TB_RL_VALUE, CSS_TB_VALUE, CSS_TEXT_AFTER_EDGE_VALUE, CSS_TEXT_ANCHOR_PROPERTY, CSS_TEXT_BEFORE_EDGE_VALUE, CSS_TEXT_BOTTOM_VALUE, CSS_TEXT_DECORATION_PROPERTY, CSS_TEXT_RENDERING_PROPERTY, CSS_TEXT_TOP_VALUE, CSS_TEXT_VALUE, CSS_THREEDDARKSHADOW_VALUE, CSS_THREEDFACE_VALUE, CSS_THREEDHIGHLIGHT_VALUE, CSS_THREEDLIGHTSHADOW_VALUE, CSS_THREEDSHADOW_VALUE, CSS_TOP_VALUE, CSS_ULTRA_CONDENSED_VALUE, CSS_ULTRA_EXPANDED_VALUE, CSS_UNDERLINE_VALUE, CSS_UNICODE_BIDI_PROPERTY, CSS_VISIBILITY_PROPERTY, CSS_VISIBLE_VALUE, CSS_VISIBLEFILL_VALUE, CSS_VISIBLEFILLSTROKE_VALUE, CSS_VISIBLEPAINTED_VALUE, CSS_VISIBLESTROKE_VALUE, CSS_W_RESIZE_VALUE, CSS_WAIT_VALUE, CSS_WIDER_VALUE, CSS_WINDOW_VALUE, CSS_WINDOWFRAME_VALUE, CSS_WINDOWTEXT_VALUE, CSS_WORD_SPACING_PROPERTY, CSS_WRITING_MODE_PROPERTY, CSS_X_LARGE_VALUE, CSS_X_SMALL_VALUE, CSS_XX_LARGE_VALUE, CSS_XX_SMALL_VALUE
 
Constructor Summary
SVGPath(Document domFactory)
           
 
Method Summary
static void main(java.lang.String[] args)
          Unit testing
 Element toSVG(java.awt.Shape path)
           
 
Methods inherited from class org.apache.batik.util.awt.svg.SVGGraphicObjectConverter
doubleString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SVGPath

public SVGPath(Document domFactory)
Parameters:
domFactory - used to build Elements
Method Detail

toSVG

public Element toSVG(java.awt.Shape path)
Parameters:
path - the Shape that should be converted to an SVG path element.
Returns:
a path Element.

main

public static void main(java.lang.String[] args)
                 throws java.lang.Exception
Unit testing


Copyright © 2000 Apache Software Foundation. All Rights Reserved.