## org.apache.tools.ant.taskdefs.optional.image
Class Image

    java.lang.Object
      |
      +--org.apache.tools.ant.ProjectComponent
            |
            +--org.apache.tools.ant.Task
                  |
                  +--org.apache.tools.ant.taskdefs.MatchingTask
                        |
                        +--org.apache.tools.ant.taskdefs.optional.image.Image

All Implemented Interfaces:
  SelectorContainer

public class Image
extends MatchingTask

A MatchingTask which relies on JAI (Java Advanced Imaging) to perform image manipulation operations on existing images. The operations are represented as ImageOperation DataType objects. The operations are arranged to conform to the Chaining Model of JAI. Check out the JAI Programming Guide

Author:
  Kevin Z Grey, Eric Pugh
See Also:
  `ImageOperation`, `DataType`

Field Summary
`protected java.io.File` `destDir`
`protected java.util.Vector` `filesets`
`protected boolean` `garbage_collect`
`protected java.util.Vector` `instructions`
`protected boolean` `overwrite`
`protected java.io.File` `srcDir`
`protected java.lang.String` `str_encoding`

Fields inherited from class org.apache.tools.ant.taskdefs.MatchingTask
`fileset`

Fields inherited from class org.apache.tools.ant.Task
`description, location, target, taskName, taskType, wrapper`

Fields inherited from class org.apache.tools.ant.ProjectComponent
`project`

Constructor Summary
`Image()`

Method Summary
`void` `addDraw(Draw instr)` Adds a Draw ImageOperation to the chain.
`void` `addFileset(FileSet set)` Adds a set of files to be deleted.
`void` `addImageOperation(ImageOperation instr)` Adds an ImageOperation to chain.
`void` `addRotate(Rotate instr)` Adds a Rotate ImageOperation to the chain
`void` `addScale(Scale instr)` Adds a Scale ImageOperation to the chain
`void` `execute()` Executes the Task
`void` `processFile(java.io.File file)` Executes all the chained ImageOperations on the file specified.
`void` `setDestDir(java.io.File destDir)` Sets the destination directory for manipulated images.
`void` `setEncoding(java.lang.String encoding)` Set the image encoding type.
`void` `setFailOnError(boolean failonerror)` If false, note errors to the output but keep going.
`void` `setGc(boolean gc)` Enables Garbage Collection after each image processed.
`void` `setOverwrite(boolean overwrite)` Sets whether or not to overwrite a file if there is a naming conflict.
`void` `setSrcdir(java.io.File srcDir)` Set the source dir to find the image files.
`protected void` `validateAttributes()` Ensure we have a consistent and legal set of attributes, and set any internal flags necessary based on different combinations of attributes.

Methods inherited from class org.apache.tools.ant.taskdefs.MatchingTask

`add, addAnd, addContains, addContainsRegexp, addCustom, addDate, addDepend, addDepth, addDifferent, addFilename, addMajority, addModified, addNone, addNot, addOr, addPresent, addSelector, addSize, addType, appendSelector, createExclude, createExcludesFile, createInclude, createIncludesFile, createPatternSet, getDirectoryScanner, getImplicitFileSet, getSelectors, hasSelectors, selectorCount, selectorElements, setCaseSensitive, setDefaultexcludes, setExcludes, setExcludesfile, setFollowSymlinks, setIncludes, setIncludesfile, setProject, XsetIgnore, XsetItems`

Methods inherited from class org.apache.tools.ant.Task
`getDescription, getLocation, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, init, isInvalid, log, log, maybeConfigure, perform, reconfigure, setDescription, setLocation, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType`

Methods inherited from class org.apache.tools.ant.ProjectComponent
`getProject`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### instructions

    protected java.util.Vector instructions

### str_encoding

    protected java.lang.String str_encoding

### overwrite

    protected boolean overwrite

### garbage_collect

    protected boolean garbage_collect

### filesets

    protected java.util.Vector filesets

### srcDir

    protected java.io.File srcDir

### destDir

    protected java.io.File destDir

Constructor Detail

### Image

    public Image()

Method Detail

### addFileset

    public void addFileset(FileSet set)

  Adds a set of files to be deleted.

### setFailOnError

    public void setFailOnError(boolean failonerror)

  If false, note errors to the output but keep going.

  Parameters:
    `failonerror` - true or false

### setSrcdir

    public void setSrcdir(java.io.File srcDir)

  Set the source dir to find the image files.

### setEncoding

    public void setEncoding(java.lang.String encoding)

  Set the image encoding type. See this table in the JAI Programming Guide.

### setOverwrite

    public void setOverwrite(boolean overwrite)

  Sets whether or not to overwrite a file if there is a naming conflict.

### setGc

    public void setGc(boolean gc)

  Enables Garbage Collection after each image processed. Defaults to false.

### setDestDir

    public void setDestDir(java.io.File destDir)

  Sets the destination directory for manipulated images.

  Parameters:
    `destDir` - The destination directory

### addImageOperation

    public void addImageOperation(ImageOperation instr)

  Adds an ImageOperation to chain.

  Parameters:
    `instr` - The ImageOperation to append to the chain

### addRotate

    public void addRotate(Rotate instr)

  Adds a Rotate ImageOperation to the chain

  Parameters:
    `instr` - The Rotate operation to add to the chain
  See Also:
    `Rotate`

### addScale

    public void addScale(Scale instr)

  Adds a Scale ImageOperation to the chain

  Parameters:
    `instr` - The Scale operation to add to the chain
  See Also:
    `Scale`

### addDraw

    public void addDraw(Draw instr)

  Adds a Draw ImageOperation to the chain. DrawOperation DataType objects can be nested inside the Draw object

  Parameters:
    `instr` - The Draw operation to add to the chain
  See Also:
    `Draw`, `DrawOperation`

### processFile

    public void processFile(java.io.File file)

  Executes all the chained ImageOperations on the file specified.

  Parameters:
    `file` - The file to be processed

### execute

    public void execute()
                 throws BuildException

  Executes the Task

  Overrides:
    `execute` in class `Task`
  Throws:
    `BuildException` - if something goes wrong with the build

### validateAttributes

    protected void validateAttributes()
                               throws BuildException

  Ensure we have a consistent and legal set of attributes, and set any internal flags necessary based on different combinations of attributes.

    `BuildException`

Copyright © 2000-2003 Apache Software Foundation. All Rights Reserved.