## com.lowagie.text.xml.xmp
Class XmpWriter

    java.lang.Object
      com.lowagie.text.xml.xmp.XmpWriter

    public class XmpWriter

extends java.lang.Object

With this class you can create an Xmp Stream that can be used for adding Metadata to a PDF Dictionary. Remark that this class doesn't cover the complete XMP specification.

Field Summary
`protected java.lang.String` `about` The about string that goes into the rdf:Description tags.
`protected char` `end` The end attribute.
`protected int` `extraSpace` You can add some extra space in the XMP packet; 1 unit in this variable represents 100 spaces and a newline.
`static java.lang.String` `EXTRASPACE` String used to fill the extra space.
`static java.lang.String` `UTF16` A possible charset for the XMP.
`static java.lang.String` `UTF16BE` A possible charset for the XMP.
`static java.lang.String` `UTF16LE` A possible charset for the XMP.
`static java.lang.String` `UTF8` A possible charset for the XMP.
`protected java.io.OutputStreamWriter` `writer` The writer to which you can write bytes for the XMP stream.

Constructor Summary
`XmpWriter(java.io.OutputStream os)` Creates an XmpWriter.
`XmpWriter(java.io.OutputStream os, java.util.Map info)`
`XmpWriter(java.io.OutputStream os, PdfDictionary info)`
`XmpWriter(java.io.OutputStream os, java.lang.String utfEncoding, int extraSpace)` Creates an XmpWriter.

Method Summary
`void` `addRdfDescription(java.lang.String xmlns, java.lang.String content)` Adds an rdf:Description.
`void` `addRdfDescription(XmpSchema s)` Adds an rdf:Description.
`void` `close()` Flushes and closes the XmpWriter.
`void` `setAbout(java.lang.String about)`
`void` `setReadOnly()` Sets the XMP to read-only

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

Field Detail

### UTF8

    public static final java.lang.String UTF8

  A possible charset for the XMP.

  See Also:
    Constant Field Values

### UTF16

    public static final java.lang.String UTF16

  A possible charset for the XMP.

  See Also:
    Constant Field Values

### UTF16BE

    public static final java.lang.String UTF16BE

  A possible charset for the XMP.

  See Also:
    Constant Field Values

### UTF16LE

    public static final java.lang.String UTF16LE

  A possible charset for the XMP.

  See Also:
    Constant Field Values

### EXTRASPACE

    public static final java.lang.String EXTRASPACE

  String used to fill the extra space.

  See Also:
    Constant Field Values

### extraSpace

    protected int extraSpace

  You can add some extra space in the XMP packet; 1 unit in this variable represents 100 spaces and a newline.

### writer

    protected java.io.OutputStreamWriter writer

  The writer to which you can write bytes for the XMP stream.

### about

    protected java.lang.String about

  The about string that goes into the rdf:Description tags.

### end

    protected char end

  The end attribute.

Constructor Detail

### XmpWriter

    public XmpWriter(java.io.OutputStream os,
                     java.lang.String utfEncoding,
                     int extraSpace)
              throws java.io.IOException

  Creates an XmpWriter.

  Parameters:
    `os` -
    `utfEncoding` -
    `extraSpace` -
  Throws:
    `java.io.IOException`

### XmpWriter

    public XmpWriter(java.io.OutputStream os)
              throws java.io.IOException

  Creates an XmpWriter.

  Parameters:
    `os` -
  Throws:
    `java.io.IOException`

### XmpWriter

    public XmpWriter(java.io.OutputStream os,
                     PdfDictionary info)
              throws java.io.IOException

Parameters:
  `os` -
  `info` -
Throws:
  `java.io.IOException`

### XmpWriter

    public XmpWriter(java.io.OutputStream os,
                     java.util.Map info)
              throws java.io.IOException

Parameters:
  `os` -
  `info` -
Throws:
  `java.io.IOException`

Method Detail

### setReadOnly

    public void setReadOnly()

  Sets the XMP to read-only

### setAbout

    public void setAbout(java.lang.String about)

  Parameters:
    `about` - The about to set.

### addRdfDescription

    public void addRdfDescription(java.lang.String xmlns,
                                  java.lang.String content)
                           throws java.io.IOException

  Adds an rdf:Description.

  Parameters:
    `xmlns` -
    `content` -
  Throws:
    `java.io.IOException`

### addRdfDescription

    public void addRdfDescription(XmpSchema s)
                           throws java.io.IOException

  Adds an rdf:Description.

  Parameters:
    `s` -
  Throws:
    `java.io.IOException`

### close

    public void close()
               throws java.io.IOException

  Flushes and closes the XmpWriter.

  Throws:
    `java.io.IOException`