Package jxl.write

# Class WritableImage

java.lang.Object
jxl.biff.drawing.Drawing
jxl.write.WritableImage

All Implemented Interfaces:
  `jxl.biff.drawing.DrawingGroupObject`, `Image`

public class WritableImage extends jxl.biff.drawing.Drawing
Allows an image to be created, or an existing image to be manipulated Note that co-ordinates and dimensions are given in cells, so that if for example the width or height of a cell which the image spans is altered, the image will have a correspondign distortion

## Field Summary

Fields
Modifier and Type
Field
Description
`static jxl.biff.drawing.Drawing.ImageAnchorProperties`
`MOVE_AND_SIZE_WITH_CELLS`
Image anchor properties which will move and resize an image along with the cells
`static jxl.biff.drawing.Drawing.ImageAnchorProperties`
`MOVE_WITH_CELLS`
Image anchor properties which will move an image when cells are inserted or deleted
`static jxl.biff.drawing.Drawing.ImageAnchorProperties`
`NO_MOVE_OR_SIZE_WITH_CELLS`
Image anchor properties which will leave an image unaffected when other cells are inserted, removed or resized

## Constructor Summary

Constructors
Constructor
Description
`WritableImage(double x, double y, double width, double height, byte[] imageData)`
Constructor
`WritableImage(double x, double y, double width, double height, File image)`
Constructor
`WritableImage(jxl.biff.drawing.DrawingGroupObject d, jxl.biff.drawing.DrawingGroup dg)`
Constructor, used when copying sheets

## Method Summary

Modifier and Type
Method
Description
`double`
`getColumn()`
Accessor for the image position
`double`
`getHeight()`
Accessor for the image dimensions
`jxl.biff.drawing.Drawing.ImageAnchorProperties`
`getImageAnchor()`
Accessor for the anchor properties
`byte[]`
`getImageData()`
Accessor for the image data
`File`
`getImageFile()`
Accessor for the image file
`double`
`getRow()`
Accessor for the image position
`double`
`getWidth()`
Accessor for the image dimensions
`void`
`setColumn(double c)`
Accessor for the image position
`void`
`setHeight(double c)`
Accessor for the image dimensions Note that the actual size of the rendered image will depend on the height of the rows it spans
`void`
`setImageAnchor(jxl.biff.drawing.Drawing.ImageAnchorProperties iap)`
Accessor for the anchor properties
`void`
`setRow(double c)`
Accessor for the image position
`void`
`setWidth(double c)`
Accessor for the image dimensions Note that the actual size of the rendered image will depend on the width of the columns it spans

### Methods inherited from class jxl.biff.drawing.Drawing

`getBlipId, getDrawingGroup, getHeight, getHorizontalResolution, getImageBytes, getImageFilePath, getImageHeight, getImageWidth, getMsoDrawingRecord, getObjectId, getOrigin, getReferenceCount, getShapeId, getSpContainer, getType, getVerticalResolution, getWidth, getX, getY, isFirst, isFormObject, removeRow, setDrawingGroup, setObjectId, setReferenceCount, setX, setY, writeAdditionalRecords, writeTailRecords`

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

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

## Field Details

### MOVE_AND_SIZE_WITH_CELLS

public static jxl.biff.drawing.Drawing.ImageAnchorProperties MOVE_AND_SIZE_WITH_CELLS
Image anchor properties which will move and resize an image along with the cells

### MOVE_WITH_CELLS

public static jxl.biff.drawing.Drawing.ImageAnchorProperties MOVE_WITH_CELLS
Image anchor properties which will move an image when cells are inserted or deleted

### NO_MOVE_OR_SIZE_WITH_CELLS

public static jxl.biff.drawing.Drawing.ImageAnchorProperties NO_MOVE_OR_SIZE_WITH_CELLS
Image anchor properties which will leave an image unaffected when other cells are inserted, removed or resized

## Constructor Details

### WritableImage

public WritableImage(double x, double y, double width, double height, File image)
Constructor

Parameters:
  `x` - the column number at which to position the image
  `y` - the row number at which to position the image
  `width` - the number of columns cells which the image spans
  `height` - the number of rows which the image spans
  `image` - the source image file

### WritableImage

public WritableImage(double x, double y, double width, double height, byte[] imageData)
Constructor

Parameters:
  `x` - the column number at which to position the image
  `y` - the row number at which to position the image
  `width` - the number of columns cells which the image spans
  `height` - the number of rows which the image spans
  `imageData` - the image data

### WritableImage

public WritableImage(jxl.biff.drawing.DrawingGroupObject d, jxl.biff.drawing.DrawingGroup dg)
Constructor, used when copying sheets

Parameters:
  `d` - the image to copy
  `dg` - the drawing group

## Method Details

### getColumn

public double getColumn()
Accessor for the image position

Specified by:
  `getColumn` in interface `Image`
Overrides:
  `getColumn` in class `jxl.biff.drawing.Drawing`
Returns:
  the column number at which the image is positioned

### setColumn

public void setColumn(double c)
Accessor for the image position

Parameters:
  `c` - the column number at which the image should be positioned

### getRow

public double getRow()
Accessor for the image position

Specified by:
  `getRow` in interface `Image`
Overrides:
  `getRow` in class `jxl.biff.drawing.Drawing`
Returns:
  the row number at which the image is positions

### setRow

public void setRow(double c)
Accessor for the image position

Parameters:
  `c` - the row number at which the image should be positioned

### getWidth

public double getWidth()
Accessor for the image dimensions

Specified by:
  `getWidth` in interface `jxl.biff.drawing.DrawingGroupObject`
Specified by:
  `getWidth` in interface `Image`
Overrides:
  `getWidth` in class `jxl.biff.drawing.Drawing`
Returns:
  the number of columns this image spans

### setWidth

public void setWidth(double c)
Accessor for the image dimensions Note that the actual size of the rendered image will depend on the width of the columns it spans

Specified by:
  `setWidth` in interface `jxl.biff.drawing.DrawingGroupObject`
Overrides:
  `setWidth` in class `jxl.biff.drawing.Drawing`
Parameters:
  `c` - the number of columns which this image spans

### getHeight

public double getHeight()
Accessor for the image dimensions

Specified by:
  `getHeight` in interface `jxl.biff.drawing.DrawingGroupObject`
Specified by:
  `getHeight` in interface `Image`
Overrides:
  `getHeight` in class `jxl.biff.drawing.Drawing`
Returns:
  the number of rows which this image spans

### setHeight

public void setHeight(double c)
Accessor for the image dimensions Note that the actual size of the rendered image will depend on the height of the rows it spans

Specified by:
  `setHeight` in interface `jxl.biff.drawing.DrawingGroupObject`
Overrides:
  `setHeight` in class `jxl.biff.drawing.Drawing`
Parameters:
  `c` - the number of rows which this image should span

### getImageFile

public File getImageFile()
Accessor for the image file

Specified by:
  `getImageFile` in interface `Image`
Overrides:
  `getImageFile` in class `jxl.biff.drawing.Drawing`
Returns:
  the file which the image references

### getImageData

public byte[] getImageData()
Accessor for the image data

Specified by:
  `getImageData` in interface `jxl.biff.drawing.DrawingGroupObject`
Specified by:
  `getImageData` in interface `Image`
Overrides:
  `getImageData` in class `jxl.biff.drawing.Drawing`
Returns:
  the image data

### setImageAnchor

public void setImageAnchor(jxl.biff.drawing.Drawing.ImageAnchorProperties iap)
Accessor for the anchor properties

### getImageAnchor

public jxl.biff.drawing.Drawing.ImageAnchorProperties getImageAnchor()
Accessor for the anchor properties