Namespace: PdfSharp.Pdf.AcroForms
Represents the base class for all interactive field dictionaries.
public abstract class PdfAcroField : PdfSharp.Pdf.PdfDictionary, System.ICloneable, System.Collections.Generic.IEnumerable`1[[System.Collections.Generic.KeyValuePair`2[[System.String, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[PdfSharp.Pdf.PdfItem, PdfSharp, Version=0.1.3.0, Culture=neutral, PublicKeyToken=null]], System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]], System.Collections.IEnumerable
Inheritance Object → PdfItem → PdfObject → PdfDictionary → PdfAcroField
Implements ICloneable, IEnumerable<KeyValuePair<String, PdfItem>>, IEnumerable
Gets the name of this field.
public string Name { get; set; }
Gets the alternative Name of the Field (/TU)
public string AlternateName { get; set; }
Gets the mapping Name of the Field (/TM)
public string MappingName { get; set; }
Gets the fully qualified name of this field, that is: “parent-name.field-name”
If the field has no parent, this is equal to PdfAcroField.Name
public string FullyQualifiedName { get; }
Gets the Parent of this field or null, if the field has no parent
public PdfAcroField Parent { get; internal set; }
Gets the field flags of this instance.
public PdfAcroFieldFlags Flags { get; }
Gets or sets the font used to draw the text of the field.
public XFont Font { get; set; }
Gets the font size that was obtained by analyzing the Fields’ content-stream.
public double DeterminedFontSize { get; internal set; }
Gets or sets the foreground color of the field.
public XColor ForeColor { get; set; }
Gets or sets the value of the field.
public PdfItem Value { get; set; }
Gets or sets the default value of the field.
public PdfItem DefaultValue { get; set; }
Gets or sets the alignment for the text of this field.
public TextAlignment TextAlign { get; set; }
Gets or sets a value indicating whether the field is read only.
public bool ReadOnly { get; set; }
public PdfAcroField Item { get; }
Indicates whether the field has child fields and/or annotations.
public bool HasKids { get; }
Indicates whether the field has child fields.
public bool HasChildFields { get; }
Use GetDescendantNames
Gets the names of all descendants of this field.
public String[] DescendantNames { get; }
Gets the collection of fields within this field.
public PdfAcroFieldCollection Fields { get; }
Gets the annotations for this field. The elements in this list are of type PdfWidgetAnnotation.
public PdfAnnotationArray Annotations { get; }
Gets the dictionary containing the elements of this dictionary.
public DictionaryElements Elements { get; }
Gets or sets the PDF stream belonging to this dictionary. Returns null if the dictionary has no stream. To create the stream, call the CreateStream function.
public PdfStream Stream { get; set; }
Gets the PdfDocument this object belongs to.
public PdfDocument Owner { get; }
Indicates whether the object is an indirect object.
public bool IsIndirect { get; }
Gets the PdfInternals object of this document, that grants access to some internal structures which are not part of the public interface of PdfDocument.
public PdfObjectInternals Internals { get; }
Gets the indirect reference of this object. If the value is null, this object is a direct object.
public PdfReference Reference { get; internal set; }
Gets the indirect reference of this object. Throws if it is null.
public PdfReference ReferenceNotNull { get; }
InvalidOperationException
The indirect reference must be not null here.
Gets a child field by name.
protected PdfAcroField GetValue(string name)
name
String
Gets the names of all descendants of this field.
public String[] GetDescendantNames()
Gets the names of all appearance dictionaries of this AcroField.
public String[] GetAppearanceNames()
internal void GetDescendantNames(List`1& names, string partialName)
names
List`1&
partialName
String
Adds a new Annotation to this field.
public PdfWidgetAnnotation AddAnnotation(Action<PdfWidgetAnnotation> configure)
configure
Action<PdfWidgetAnnotation>
A method that is used to configure the Annotation
PdfWidgetAnnotation
The created and configured Annotation
Removed the specified annotation from this field
public bool RemoveAnnotation(PdfWidgetAnnotation annotation)
annotation
PdfWidgetAnnotation
The annotation to remove
Boolean
true, if the annotation was removed, false otherwise
Adds the specified PdfAcroField to the list of child-fields of this field
public void AddChild(PdfAcroField childField)
childField
PdfAcroField
Deletes this field, all child-fields and associated annotations from the document
public void Delete()
Tries to determine the Appearance of the Field by checking elements of its dictionary
protected void DetermineAppearance()
Attempts to determine the font, font-size and fore-color of this AcroField
protected void DetermineFontFromContent(Byte[] contentBytes)
contentBytes
Byte[]
Gets a value indicating whether the specified font name is one of the predefined font-names for pdf documents
protected static bool IsStandardFont(string fontName, XFontStyleEx& fontStyle)
fontName
String
Name of the font to check
fontStyle
XFontStyleEx&
Receives the font-style of the checked-font
Adds the font of the current AcroField to the specified XForm object
protected void SetXFormFont(XForm form)
form
XForm
internal void PrepareForSave()
internal void Flatten()
Must be overridden by subclasses
protected void RenderAppearance()
Renders the widget-appearances of this field directly onto the page.
Used by the method.
protected void RenderAppearanceToPage()
Renders the contents of the supplied Stream to the Page at the position specified by the provided Rectangle
protected void RenderContentStream(PdfPage page, PdfDictionary streamDict, PdfRectangle rect)
page
PdfPage
Page to render the content onto
streamDict
PdfDictionary
A PdfDictionary containing a stream with drawing-operators and associated resources
rect
PdfRectangle