com.lowagie.text.rtf.graphic

## Class RtfShapeProperty

- java.lang.Object
- - com.lowagie.text.Chunk
  - - com.lowagie.text.rtf.RtfAddableElement
    - - com.lowagie.text.rtf.graphic.RtfShapeProperty

All Implemented Interfaces:
  Element, RtfBasicElement, RtfElementInterface

    public class RtfShapeProperty
    extends RtfAddableElement

The RtfShapeProperty stores all shape properties that are not handled by the RtfShape and RtfShapePosition.
There is a huge selection of properties that can be set. For the most important properites there are constants for the property name, for all others you must find the correct property name in the RTF specification (version 1.6).
The following types of property values are supported:

- long
- double
- boolean
- Color
- int[]
- Point[]

Version:
  $Id$
Author:
  Mark Hall (Mark.Hall@mail.room3b.eu), Thomas Bickel (tmb99@inode.at)

### Field Summary

Fields
`private java.lang.String` `name` The RtfShapeProperty name.
`static java.lang.String` `PROPERTY_ADJUST_VALUE` Property for defining the first adjust handle for shapes.
`static java.lang.String` `PROPERTY_FILL_COLOR` Property for defining the fill color of the shape.
`static java.lang.String` `PROPERTY_FLIP_H` Property for signaling a horizontal flip of the shape.
`static java.lang.String` `PROPERTY_FLIP_V` Property for signaling a vertical flip of the shape.
`static java.lang.String` `PROPERTY_GEO_BOTTOM` Property for defining the maximum vertical coordinate that is visible.
`static java.lang.String` `PROPERTY_GEO_LEFT` Property for defining the minimum horizontal coordinate that is visible.
`static java.lang.String` `PROPERTY_GEO_RIGHT` Property for defining the maximum horizontal coordinate that is visible.
`static java.lang.String` `PROPERTY_GEO_TOP` Property for defining the minimum vertical coordinate that is visible.
`static java.lang.String` `PROPERTY_IMAGE` Property for defining an image.
`static java.lang.String` `PROPERTY_LAYOUT_IN_CELL` Property for defining that the shape is in a table cell.
`static java.lang.String` `PROPERTY_LINE_COLOR` Property for defining the line color of the shape.
`private static int` `PROPERTY_TYPE_ARRAY` The stored value is either an int or a Point array.
`private static int` `PROPERTY_TYPE_BOOLEAN` The stored value is boolean.
`private static int` `PROPERTY_TYPE_COLOR` The stored value is a Color.
`private static int` `PROPERTY_TYPE_DOUBLE` The stored value is a double.
`private static int` `PROPERTY_TYPE_IMAGE` The stored value is an Image.
`private static int` `PROPERTY_TYPE_LONG` The stored value is a long.
`static java.lang.String` `PROPERTY_VERTICIES` Property for defining vertices in freeform shapes.
`private int` `type` The value type.
`private java.lang.Object` `value` The RtfShapeProperty value.

### Fields inherited from class com.lowagie.text.rtf.RtfAddableElement

`doc, inHeader, inTable`

### Fields inherited from class com.lowagie.text.Chunk

`ACTION, attributes, BACKGROUND, CHAR_SPACING, COLOR, content, ENCODING, font, GENERICTAG, HSCALE, HYPHENATION, IMAGE, LOCALDESTINATION, LOCALGOTO, NEWLINE, NEWPAGE, NEXTPAGE, OBJECT_REPLACEMENT_CHARACTER, PDFANNOTATION, REMOTEGOTO, SEPARATOR, SKEW, SPLITCHARACTER, SUBSUPSCRIPT, TAB, TEXTRENDERMODE, UNDERLINE`

### Fields inherited from interface com.lowagie.text.rtf.RtfBasicElement

`CLOSE_GROUP, COMMA_DELIMITER, DELIMITER, OPEN_GROUP, TWIPS_FACTOR`

### Fields inherited from interface com.lowagie.text.Element

`ALIGN_BASELINE, ALIGN_BOTTOM, ALIGN_CENTER, ALIGN_JUSTIFIED, ALIGN_JUSTIFIED_ALL, ALIGN_LEFT, ALIGN_MIDDLE, ALIGN_RIGHT, ALIGN_TOP, ALIGN_UNDEFINED, ANCHOR, ANNOTATION, AUTHOR, CCITT_BLACKIS1, CCITT_ENCODEDBYTEALIGN, CCITT_ENDOFBLOCK, CCITT_ENDOFLINE, CCITTG3_1D, CCITTG3_2D, CCITTG4, CELL, CHAPTER, CHUNK, CREATIONDATE, CREATOR, HEADER, IMGRAW, IMGTEMPLATE, JBIG2, JPEG, JPEG2000, KEYWORDS, LIST, LISTITEM, MARKED, MULTI_COLUMN_TEXT, PARAGRAPH, PHRASE, PRODUCER, PTABLE, RECTANGLE, ROW, SECTION, SUBJECT, TABLE, TITLE, YMARK`

### Constructor Summary

Constructors
`` `RtfShapeProperty(java.lang.String name, boolean value)` Constructs a RtfShapeProperty with a boolean value.
`` `RtfShapeProperty(java.lang.String name, java.awt.Color value)` Constructs a RtfShapeProperty with a Color value.
`` `RtfShapeProperty(java.lang.String name, double value)` Constructs a RtfShapeProperty with a double value.
`` `RtfShapeProperty(java.lang.String name, Image value)` Constructs a RtfShapeProperty with an Image value.
`` `RtfShapeProperty(java.lang.String name, int[] value)` Constructs a RtfShapeProperty with an int array value.
`` `RtfShapeProperty(java.lang.String name, long value)` Constructs a RtfShapeProperty with a long value.
`private` `RtfShapeProperty(java.lang.String name, java.lang.Object value)` Internally used to create the RtfShape.
`` `RtfShapeProperty(java.lang.String name, java.awt.Point[] value)` Constructs a RtfShapeProperty with a Point array value.

### Method Summary

Methods
`java.lang.String` `getName()` Gets the name of this RtfShapeProperty.
`void` `writeContent(java.io.OutputStream result)` Writes the property definition.

### Methods inherited from class com.lowagie.text.rtf.RtfAddableElement

`intToByteArray, isEmpty, setInHeader, setInTable, setRtfDocument`

### Methods inherited from class com.lowagie.text.Chunk

`append, getAttributes, getCharacterSpacing, getChunks, getContent, getFont, getHorizontalScaling, getHyphenation, getImage, getTextRise, getWidthPoint, hasAttributes, isContent, isNestable, process, setAction, setAnchor, setAnchor, setAnnotation, setAttributes, setBackground, setBackground, setCharacterSpacing, setFont, setGenericTag, setHorizontalScaling, setHyphenation, setLocalDestination, setLocalGoto, setNewPage, setRemoteGoto, setRemoteGoto, setSkew, setSplitCharacter, setTextRenderMode, setTextRise, setUnderline, setUnderline, toString, type`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Field Detail

#### PROPERTY_IMAGE

    public static final java.lang.String PROPERTY_IMAGE

Property for defining an image.

See Also:
  Constant Field Values

#### PROPERTY_VERTICIES

    public static final java.lang.String PROPERTY_VERTICIES

Property for defining vertices in freeform shapes. Requires a Point array as the value.

See Also:
  Constant Field Values

#### PROPERTY_GEO_TOP

    public static final java.lang.String PROPERTY_GEO_TOP

Property for defining the minimum vertical coordinate that is visible. Requires a long value.

See Also:
  Constant Field Values

#### PROPERTY_GEO_LEFT

    public static final java.lang.String PROPERTY_GEO_LEFT

Property for defining the minimum horizontal coordinate that is visible. Requires a long value.

See Also:
  Constant Field Values

#### PROPERTY_GEO_RIGHT

    public static final java.lang.String PROPERTY_GEO_RIGHT

Property for defining the maximum horizontal coordinate that is visible. Requires a long value.

See Also:
  Constant Field Values

#### PROPERTY_GEO_BOTTOM

    public static final java.lang.String PROPERTY_GEO_BOTTOM

Property for defining the maximum vertical coordinate that is visible. Requires a long value.

See Also:
  Constant Field Values

#### PROPERTY_LAYOUT_IN_CELL

    public static final java.lang.String PROPERTY_LAYOUT_IN_CELL

Property for defining that the shape is in a table cell. Requires a boolean value.

See Also:
  Constant Field Values

#### PROPERTY_FLIP_V

    public static final java.lang.String PROPERTY_FLIP_V

Property for signaling a vertical flip of the shape. Requires a boolean value.

See Also:
  Constant Field Values

#### PROPERTY_FLIP_H

    public static final java.lang.String PROPERTY_FLIP_H

Property for signaling a horizontal flip of the shape. Requires a boolean value.

See Also:
  Constant Field Values

#### PROPERTY_FILL_COLOR

    public static final java.lang.String PROPERTY_FILL_COLOR

Property for defining the fill color of the shape. Requires a Color value.

See Also:
  Constant Field Values

#### PROPERTY_LINE_COLOR

    public static final java.lang.String PROPERTY_LINE_COLOR

Property for defining the line color of the shape. Requires a Color value.

See Also:
  Constant Field Values

#### PROPERTY_ADJUST_VALUE

    public static final java.lang.String PROPERTY_ADJUST_VALUE

Property for defining the first adjust handle for shapes. Used with the rounded rectangle. Requires a long value.

See Also:
  Constant Field Values

#### PROPERTY_TYPE_LONG

    private static final int PROPERTY_TYPE_LONG

The stored value is a long.

See Also:
  Constant Field Values

#### PROPERTY_TYPE_BOOLEAN

    private static final int PROPERTY_TYPE_BOOLEAN

The stored value is boolean.

See Also:
  Constant Field Values

#### PROPERTY_TYPE_DOUBLE

    private static final int PROPERTY_TYPE_DOUBLE

The stored value is a double.

See Also:
  Constant Field Values

#### PROPERTY_TYPE_COLOR

    private static final int PROPERTY_TYPE_COLOR

The stored value is a Color.

See Also:
  Constant Field Values

#### PROPERTY_TYPE_ARRAY

    private static final int PROPERTY_TYPE_ARRAY

The stored value is either an int or a Point array.

See Also:
  Constant Field Values

#### PROPERTY_TYPE_IMAGE

    private static final int PROPERTY_TYPE_IMAGE

The stored value is an Image.

See Also:
  Constant Field Values

#### type

    private int type

The value type.

#### name

    private java.lang.String name

The RtfShapeProperty name.

#### value

    private java.lang.Object value

The RtfShapeProperty value.

### Constructor Detail

#### RtfShapeProperty

    private RtfShapeProperty(java.lang.String name,
                    java.lang.Object value)

Internally used to create the RtfShape.

Parameters:
  `name` - The property name to use.
  `value` - The property value to use.

#### RtfShapeProperty

    public RtfShapeProperty(java.lang.String name,
                    long value)

Constructs a RtfShapeProperty with a long value.

Parameters:
  `name` - The property name to use.
  `value` - The long value to use.

#### RtfShapeProperty

    public RtfShapeProperty(java.lang.String name,
                    double value)

Constructs a RtfShapeProperty with a double value.

Parameters:
  `name` - The property name to use.
  `value` - The double value to use.

#### RtfShapeProperty

    public RtfShapeProperty(java.lang.String name,
                    boolean value)

Constructs a RtfShapeProperty with a boolean value.

Parameters:
  `name` - The property name to use.
  `value` - The boolean value to use.

#### RtfShapeProperty

    public RtfShapeProperty(java.lang.String name,
                    java.awt.Color value)

Constructs a RtfShapeProperty with a Color value.

Parameters:
  `name` - The property name to use.
  `value` - The Color value to use.

#### RtfShapeProperty

    public RtfShapeProperty(java.lang.String name,
                    int[] value)

Constructs a RtfShapeProperty with an int array value.

Parameters:
  `name` - The property name to use.
  `value` - The int array to use.

#### RtfShapeProperty

    public RtfShapeProperty(java.lang.String name,
                    java.awt.Point[] value)

Constructs a RtfShapeProperty with a Point array value.

Parameters:
  `name` - The property name to use.
  `value` - The Point array to use.

#### RtfShapeProperty

    public RtfShapeProperty(java.lang.String name,
                    Image value)

Constructs a RtfShapeProperty with an Image value.

Parameters:
  `name` - The property name to use.
  `value` - The Image to use.

### Method Detail

#### getName

    public java.lang.String getName()

Gets the name of this RtfShapeProperty.

Returns:
  The name of this RtfShapeProperty.

#### writeContent

    public void writeContent(java.io.OutputStream result)
                      throws java.io.IOException

Writes the property definition. How the property is written depends on the property type.

Specified by:
  `writeContent` in interface `RtfBasicElement`
Specified by:
  `writeContent` in class `RtfAddableElement`
Parameters:
  `result` - The `OutputStream` to write the content to
Throws:
  `java.io.IOException`