/// <summary> /// Writes the underlying data of the file object to the passed text writer /// </summary> /// <param name="tw">The text writer object to write data to</param> public void WriteData(PDFWriter writer) { writer.BeginArrayS(); foreach (IFileObject pfo in this) { writer.BeginArrayEntry(); pfo.WriteData(writer); writer.EndArrayEntry(); } writer.EndArray(); }
/// <summary> /// Writes the collection of page labels and returns a reference to this collection /// </summary> /// <param name="context"></param> /// <param name="writer"></param> /// <returns></returns> private PDFObjectRef WritePageLabels(PDFRenderContext context, PDFWriter writer) { PDFPageNumbers nums = this.Numbers; PDFObjectRef labels = writer.BeginObject("PageLabels"); writer.BeginDictionary(); writer.BeginDictionaryEntry("Nums"); writer.BeginArrayS(); //PDFPageNumberRegistration def = this.Numbers.; //this.WriteAPageLabel(context, writer, def); foreach (PDFPageNumberRegistration entry in this.Numbers.Registrations) { WriteAPageLabel(context, writer, entry); } writer.EndArray(); writer.EndDictionaryEntry(); writer.EndDictionary(); writer.EndObject(); return(labels); }
private void WriteXObjectDictionaryContent(PDFRenderContext context, PDFWriter writer, long len, IStreamFilter[] filters) { writer.WriteDictionaryNameEntry("Type", "XObject"); if (!string.IsNullOrEmpty(this.SubType)) { writer.WriteDictionaryNameEntry("Subtype", "Form"); } writer.BeginDictionaryEntry("Matrix"); writer.WriteArrayRealEntries(PDFTransformationMatrix.Identity().Components); // this.Matrix.Components); writer.EndDictionaryEntry(); writer.BeginDictionaryEntry("BBox"); writer.BeginArrayS(); if (this._position.ViewPort.HasValue) { PDFRect vp = this._position.ViewPort.Value; writer.WriteReal(vp.X.PointsValue); writer.WriteRealS(vp.Y.PointsValue); writer.WriteRealS(vp.Width.PointsValue); writer.WriteRealS(vp.Height.PointsValue); } else { writer.WriteReal(0.0F); writer.WriteRealS(0.0F); writer.WriteRealS(this._childContainer.Height.PointsValue); writer.WriteRealS(this._childContainer.Height.PointsValue); } writer.EndArray(); writer.EndDictionaryEntry(); PDFObjectRef res = this._resources.WriteResourceList(context, writer); if (null != res) { writer.WriteDictionaryObjectRefEntry("Resources", res); } if (null != filters && filters.Length > 0) { writer.BeginDictionaryEntry("Length"); writer.WriteNumberS(len); writer.EndDictionaryEntry(); writer.BeginDictionaryEntry("Filter"); writer.BeginArray(); foreach (IStreamFilter filter in filters) { writer.BeginArrayEntry(); writer.WriteName(filter.FilterName); writer.EndArrayEntry(); } writer.EndArray(); writer.EndDictionaryEntry(); } else { writer.BeginDictionaryEntry("Length"); writer.WriteNumberS(len); writer.EndDictionaryEntry(); } }