/**
* Writes the document to a byte array.
*/
public byte[] SerializeDoc() {
XmlDomWriter xw = new XmlDomWriter();
MemoryStream fout = new MemoryStream();
xw.SetOutput(fout, null);
byte[] b = new UTF8Encoding(false).GetBytes(XmpWriter.XPACKET_PI_BEGIN);
fout.Write(b, 0, b.Length);
fout.Flush();
XmlNodeList xmpmeta = domDocument.GetElementsByTagName("x:xmpmeta");
xw.Write(xmpmeta[0]);
fout.Flush();
b = new UTF8Encoding(false).GetBytes(XmpWriter.EXTRASPACE);
for (int i = 0; i < 20; i++) {
fout.Write(b, 0, b.Length);
}
b = new UTF8Encoding(false).GetBytes(XmpWriter.XPACKET_PI_END_W);
fout.Write(b, 0, b.Length);
fout.Close();
return fout.ToArray();
}