Package writer2latex.xhtml

# Class DrawConverter

java.lang.Object
writer2latex.xhtml.DrawConverter

public class DrawConverter extends Object

## Field Summary

Fields
Modifier and Type
Field
Description
`static final int`
`ABSOLUTE`
Identifies objects that should be positioned absolute (using the css attribute postion:absolute)
`static final int`
`CENTERED`
Identifies objects that should be placed centered
`static final int`
`FLOATING`
Identifies objects that should be displayed as floats, either alone or with text wrap (using the css attribute float:left or float:right)
`static final int`
`FULL_SCREEN`
Identifies objects that should fill the entire screen
`static final int`
`INLINE`
Identifies objects that should be displayed inline.

## Constructor Summary

Constructors
Constructor
Description
`DrawConverter(OfficeReader ofr, XhtmlConfig config, Converter converter)`

## Method Summary

Modifier and Type
Method
Description
`void`
`convertDrawContent(Element onode)`
`Element`
`createForm()`
Create form, if there is a form in this document
`void`
`flushFrames(Element hnode)`
`Element`
`flushFullscreenFrames(Element hnode)`
`Element`
`getDrawAnchor(Element onode)`
A draw element with a hyperlink is represented as two elements, eg.
`Element`
`getRealDrawElement(Element onode)`
A draw element with a hyperlink is represented as two elements, eg.
`void`
`handleDrawElement(Element onode, Element hnodeBlock, Element hnodeInline, int nMode)`
Convert a draw element to xhtml.
`Element`
`insertCoverImage(Element hnode)`

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

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

## Field Details

### INLINE

public static final int INLINE
Identifies objects that should be displayed inline.

See Also:
  - Constant Field Values

### FLOATING

public static final int FLOATING
Identifies objects that should be displayed as floats, either alone or with text wrap (using the css attribute float:left or float:right)

See Also:
  - Constant Field Values

### ABSOLUTE

public static final int ABSOLUTE
Identifies objects that should be positioned absolute (using the css attribute postion:absolute)

See Also:
  - Constant Field Values

### CENTERED

public static final int CENTERED
Identifies objects that should be placed centered

See Also:
  - Constant Field Values

### FULL_SCREEN

public static final int FULL_SCREEN
Identifies objects that should fill the entire screen

See Also:
  - Constant Field Values

## Constructor Details

### DrawConverter

public DrawConverter(OfficeReader ofr, XhtmlConfig config, Converter converter)

## Method Details

### convertDrawContent

public void convertDrawContent(Element onode)

### createForm

public Element createForm()

Create form, if there is a form in this document

Returns:
  the form element, or null if there are no forms in the document

### getRealDrawElement

public Element getRealDrawElement(Element onode)

A draw element with a hyperlink is represented as two elements, eg. `<draw:a><draw:image/></draw:a>`. We thus need methods to switch between the two elements.

This method takes a `draw`-element. If this element is a hyperlink, the child element is returned. Otherwise the argument is returned unchanged.

Parameters:
  `onode` - the `draw:a` element
Returns:
  the corresponding element

### getDrawAnchor

public Element getDrawAnchor(Element onode)

A draw element with a hyperlink is represented as two elements, eg. `<draw:a><draw:image/></draw:a>`. We thus need methods to switch between the two elements.

This method takes a `draw`-element. If this element is contained in a hyperlink, the hyperlink is returned. Otherwise null is returned.

Parameters:
  `onode` - the `draw:a` element
Returns:
  the hyperlink element, if any

### insertCoverImage

public Element insertCoverImage(Element hnode)

### flushFullscreenFrames

public Element flushFullscreenFrames(Element hnode)

### flushFrames

public void flushFrames(Element hnode)

### handleDrawElement

public void handleDrawElement(Element onode, Element hnodeBlock, Element hnodeInline, int nMode)

Convert a draw element to xhtml. The presentation depends on the parameter `nMode`:

- `DrawConverter.INLINE`: Presented inline. The hnode must accept inline content. An inline container must be provided.
- `DrawConverter.FLOAT`: Presented as a float. The hnode must accept block/flow content. A block container must be provided.
- `DrawConverter.ABSOLUTE`: Presented at an absolute position. A block container must be provided.

Containers for block and inline elements should be supplied. The containers may be identical (flow container).

Note: A draw:text-box will be ignored in inline mode.

Parameters:
  `onode` - the draw element
  `hnodeBlock` - the xhtml element to attach the converted element to if it's a block element
  `hnodeInline` - the xhtml element to attach the converted element to if it's an inline element
  `nMode` - identifies how the element should be presented