Class Text
This class represents a Text annotation.
Inheritance
Implements
Namespace: PSPDFKit.Pdf.Annotation
Assembly: PSPDFKit.dll
Syntax
public sealed class Text : IAnnotation
Properties
AnnotationType
The type of the annotation.
Declaration
public AnnotationType AnnotationType { get; }
Property Value
| Type | Description |
|---|---|
| AnnotationType |
BackgroundColor
Optional background Windows.UI.Color that will fill the complete bounding box.
Declaration
public Color? BackgroundColor { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Nullable<Windows.UI.Color> |
BlendMode
The blend mode to use when rendering.
Declaration
public BlendMode BlendMode { get; set; }
Property Value
| Type | Description |
|---|---|
| BlendMode |
Bold
If true, the font will be bold if the font family supports this.
Declaration
public bool Bold { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
BoundingBox
The bounding box of the annotation within the page.
Declaration
public Rect BoundingBox { get; set; }
Property Value
| Type | Description |
|---|---|
| Windows.Foundation.Rect |
Contents
The visible contents in plain text formats. We use a simple newline delimiter \n for multi line texts. A trailing newline (e.g. 'foobar\n' ) will result in an additional line. We don't support rich text formatting in the text field.
Declaration
public string Contents { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String |
CreatedAt
The date of the annotation creation.
Declaration
public DateTimeOffset CreatedAt { get; set; }
Property Value
| Type | Description |
|---|---|
| System.DateTimeOffset |
CreatorName
The name of the creator of the annotation. This is a general purpose string which can easily be spoofed and might not reflect the actual creator of the annotation.
Declaration
public string CreatorName { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String |
CustomData
Annotations can store additional user-specified data.
PSPDFKit does not use or evaluate CustomData in the UI directly.
You have full control over this property.
For a new annotation, this defaults to a null object.
Declaration
public JsonObject CustomData { get; set; }
Property Value
| Type | Description |
|---|---|
| Windows.Data.Json.JsonObject |
FontColor
A Windows.UI.Color for the visible glyphs.
Declaration
public Color FontColor { get; set; }
Property Value
| Type | Description |
|---|---|
| Windows.UI.Color |
FontFamily
The name of the font family that should be used. The default is 'Helvetica'.
Declaration
public string FontFamily { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String |
FontSize
The font size in page size pixels. Per default, we use values between 10 and 192 inclusive in the UI. The text will scale when you zoom in.
Declaration
public int FontSize { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
HorizontalAlign
The horizontal alignment of the text inside the bounding box.
Declaration
public HorizontalAlign HorizontalAlign { get; set; }
Property Value
| Type | Description |
|---|---|
| HorizontalAlign |
Id
A unique identifier to describe the annotation.
Declaration
public string Id { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String |
Italic
If true, the font will be italic if the font family supports this
Declaration
public bool Italic { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
Name
An optional field that may be used to identify the annotation. By default it is set that to the same value as the automatically generated Id.
Declaration
public string Name { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String |
NoPrint
If the annotation should be printed or not.
Declaration
public bool NoPrint { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
NoView
The property that determines if the annotation is prevented from being rendered in the UI. The annotation may still be rendered in a printed page, depending of the value of NoPrint.
Declaration
public bool NoView { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
Opacity
The opacity of the annotation, 0.0 - 1.0.
Declaration
public float Opacity { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Single |
OptionalNote
An optional note. An note that can be set on any annotation. This value is displayed in the PSPDFKit for UWP UI for all annotations except note annotation, text annotation, and widget annotation.
Declaration
public string OptionalNote { get; set; }
Property Value
| Type | Description |
|---|---|
| System.String |
PageIndex
The page index of the annotation in the document.
Declaration
public int PageIndex { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
PdfObjectId
The Pdf object ID, if the annotation is included in a Pdf file.
Declaration
public int? PdfObjectId { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Nullable<System.Int32> |
Rotation
The rotation of the annotation. Can either be 0°, 90°, 180°, or 270°.
Declaration
public int Rotation { get; set; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
UpdatedAt
The date of last annotation update.
Declaration
public DateTimeOffset UpdatedAt { get; set; }
Property Value
| Type | Description |
|---|---|
| System.DateTimeOffset |
Version
The Instant JSON spec version this annotation is compliant to.
Declaration
public int Version { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
VerticalAlign
The vertical alignment of the text inside the bounding box.
Declaration
public VerticalAlign VerticalAlign { get; set; }
Property Value
| Type | Description |
|---|---|
| VerticalAlign |
Methods
FromJson(JsonObject)
Constructs the IAnnotation from the Instant JSON representing it. See https://pspdfkit.com/guides/server/current/document/json-format/ If any mandatory properties are missing then an exception will be thrown.
Declaration
public static IAnnotation FromJson(JsonObject json)
Parameters
| Type | Name | Description |
|---|---|---|
| Windows.Data.Json.JsonObject | json | The Instant JSON representing the IAnnotation. |
Returns
| Type | Description |
|---|---|
| IAnnotation | The IAnnotation represented by the Instant JSON. |
FromPartialJson(JsonObject)
Constructs the IAnnotation from the Instant JSON representing it. See https://pspdfkit.com/guides/server/current/document/json-format/ This method does not require mandatory properties to be present in the JSON. Instead appropriate default values will be used.
Declaration
public static IAnnotation FromPartialJson(JsonObject json)
Parameters
| Type | Name | Description |
|---|---|---|
| Windows.Data.Json.JsonObject | json | The Instant JSON or partial Instant JSON representing the IAnnotation |
Returns
| Type | Description |
|---|---|
| IAnnotation | The IAnnotation represented by the Instant JSON. |
ToJson()
Converts the annotation to the Instant JSON annotation format. See https://pspdfkit.com/guides/server/current/document/json-format/
Declaration
public JsonObject ToJson()
Returns
| Type | Description |
|---|---|
| Windows.Data.Json.JsonObject | The annotation object. |