/// <summary> /// If this document has artefacts then the collection is output. /// </summary> /// <param name="context"></param> /// <param name="writer"></param> private void WriteArtefacts(PDFRenderContext context, PDFWriter writer) { PDFArtefactCollectionSet artefacts = this.Artefacts; if (artefacts != null && artefacts.Count > 0) { foreach (IArtefactCollection col in artefacts) { context.TraceLog.Begin(TraceLevel.Verbose, "Layout Document", "Outputting artefact catalog entry collection " + col.CollectionName); writer.BeginDictionaryEntry(col.CollectionName); PDFObjectRef entry = col.OutputToPDF(context, writer); if (entry != null) { writer.WriteObjectRef(entry); } else { writer.WriteNull(); } writer.EndDictionaryEntry(); context.TraceLog.End(TraceLevel.Verbose, "Layout Document", "Finished artefact catalog entry collection " + col.CollectionName); } } }