Return the DER encoding of the object, null if the DER encoding can not be made.
@return a DER byte array, null otherwise.
a general purpose ASN.1 decoder - note: this class differs from the
others in that it returns null after it has read the last object in
the stream. If an ASN.1 Null is encountered a Der/BER Null object is
returned.
Create an ASN1InputStream where no DER object will be longer than limit.
@param input stream containing ASN.1 encoded data.
@param limit maximum size of a DER encoded object.
Create an ASN1InputStream based on the input byte array. The length of DER objects in
the stream is automatically limited to the length of the input array.
@param input array containing ASN.1 encoded data.
build an object given its tag and the number of bytes to construct it from.
A Null object.
Create a base ASN.1 object from a byte array.
The byte array to parse.
The base ASN.1 object represented by the byte array.
If there is a problem parsing the data.
Read a base ASN.1 object from a stream.
The stream to parse.
The base ASN.1 object represented by the byte array.
If there is a problem parsing the data.
return an Octet string from a tagged object.
@param obj the tagged object holding the object we want.
@param explicitly true if the object is meant to be explicitly
tagged false otherwise.
@exception ArgumentException if the tagged object cannot
be converted.
return an Octet string from the given object.
@param obj the object we want converted.
@exception ArgumentException if the object cannot be converted.
@param string the octets making up the octet string.
return an Asn1Sequence from the given object.
@param obj the object we want converted.
@exception ArgumentException if the object cannot be converted.
Return an ASN1 sequence from a tagged object. There is a special
case here, if an object appears to have been explicitly tagged on
reading but we were expecting it to be implicitly tagged in the
normal course of events it indicates that we lost the surrounding
sequence - so we need to add it back (this will happen if the tagged
object is a sequence that contains other sequences). If you are
dealing with implicitly tagged sequences you really should
be using this method.
@param obj the tagged object.
@param explicitly true if the object is meant to be explicitly tagged,
false otherwise.
@exception ArgumentException if the tagged object cannot
be converted.
return the object at the sequence position indicated by index.
@param index the sequence number (starting at zero) of the object
@return the object at the sequence position indicated by index.
return an ASN1Set from the given object.
@param obj the object we want converted.
@exception ArgumentException if the object cannot be converted.
Return an ASN1 set from a tagged object. There is a special
case here, if an object appears to have been explicitly tagged on
reading but we were expecting it to be implicitly tagged in the
normal course of events it indicates that we lost the surrounding
set - so we need to add it back (this will happen if the tagged
object is a sequence that contains other sequences). If you are
dealing with implicitly tagged sets you really should
be using this method.
@param obj the tagged object.
@param explicitly true if the object is meant to be explicitly tagged
false otherwise.
@exception ArgumentException if the tagged object cannot
be converted.
return the object at the set position indicated by index.
@param index the set number (starting at zero) of the object
@return the object at the set position indicated by index.
ASN.1 TaggedObject - in ASN.1 notation this is any object preceded by
a [n] where n is some number - these are assumed to follow the construction
rules (as with sequences).
@param tagNo the tag number for this object.
@param obj the tagged object.
@param explicitly true if the object is explicitly tagged.
@param tagNo the tag number for this object.
@param obj the tagged object.
return whether or not the object may be explicitly tagged.
Note: if the object has been read from an input stream, the only
time you can be sure if isExplicit is returning the true state of
affairs is if it returns false. An implicitly tagged object may appear
to be explicitly tagged, so you need to understand the context under
which the reading was done as well, see GetObject below.
return whatever was following the tag.
Note: tagged objects are generally context dependent if you're
trying to extract a tagged object you should be going via the
appropriate GetInstance method.
Return the object held in this tagged object as a parser assuming it has
the type of the passed in tag. If the object doesn't have a parser
associated with it, the base object is returned.
A BER Null object.
convert a vector of octet strings into a single byte string
The octets making up the octet string.
return the DER octets that make up this string.
create an empty sequence
create a sequence containing one object
create a sequence containing a vector of objects.
create an empty sequence
create a set containing one object
create a set containing a vector of objects.
BER TaggedObject - in ASN.1 notation this is any object preceded by
a [n] where n is some number - these are assumed to follow the construction
rules (as with sequences).
@param tagNo the tag number for this object.
@param obj the tagged object.
@param explicitly true if an explicitly tagged object.
@param tagNo the tag number for this object.
@param obj the tagged object.
create an implicitly tagged object that contains a zero
length sequence.
Base class for an application specific object
Return the enclosed object assuming explicit tagging.
@return the resulting object
@throws IOException if reconstruction fails.
Return the enclosed object assuming implicit tagging.
@param derTagNo the type tag that should be applied to the object's contents.
@return the resulting object
@throws IOException if reconstruction fails.
return a Bit string from the passed in object
@exception ArgumentException if the object cannot be converted.
return a Bit string from a tagged object.
@param obj the tagged object holding the object we want
@param explicitly true if the object is meant to be explicitly
tagged false otherwise.
@exception ArgumentException if the tagged object cannot
be converted.
@param data the octets making up the bit string.
@param padBits the number of extra bits at the end of the string.
Return the octets contained in this BIT STRING, checking that this BIT STRING really
does represent an octet aligned string. Only use this method when the standard you are
following dictates that the BIT STRING will be octet aligned.
@return a copy of the octet aligned data.
@return the value of the bit string as an int (truncating if necessary)
Der BMPString object.
return a BMP string from the given object.
@param obj the object we want converted.
@exception ArgumentException if the object cannot be converted.
return a BMP string from a tagged object.
@param obj the tagged object holding the object we want
@param explicitly true if the object is meant to be explicitly
tagged false otherwise.
@exception ArgumentException if the tagged object cannot
be converted.
basic constructor - byte encoded string.
basic constructor
return a bool from the passed in object.
@exception ArgumentException if the object cannot be converted.
return a DerBoolean from the passed in bool.
return a Boolean from a tagged object.
@param obj the tagged object holding the object we want
@param explicitly true if the object is meant to be explicitly
tagged false otherwise.
@exception ArgumentException if the tagged object cannot
be converted.
return an integer from the passed in object
@exception ArgumentException if the object cannot be converted.
return an Enumerated from a tagged object.
@param obj the tagged object holding the object we want
@param explicitly true if the object is meant to be explicitly
tagged false otherwise.
@exception ArgumentException if the tagged object cannot
be converted.
Class representing the DER-type External
Creates a new instance of DerExternal
See X.690 for more informations about the meaning of these parameters
@param directReference The direct reference or null
if not set.
@param indirectReference The indirect reference or null
if not set.
@param dataValueDescriptor The data value descriptor or null
if not set.
@param externalData The external data in its encoded form.
Creates a new instance of DerExternal.
See X.690 for more informations about the meaning of these parameters
@param directReference The direct reference or null
if not set.
@param indirectReference The indirect reference or null
if not set.
@param dataValueDescriptor The data value descriptor or null
if not set.
@param encoding The encoding to be used for the external data
@param externalData The external data
The encoding of the content. Valid values are
0
single-ASN1-type
1
OCTET STRING
2
BIT STRING
Generalized time object.
return a generalized time from the passed in object
@exception ArgumentException if the object cannot be converted.
return a Generalized Time object from a tagged object.
@param obj the tagged object holding the object we want
@param explicitly true if the object is meant to be explicitly
tagged false otherwise.
@exception ArgumentException if the tagged object cannot
be converted.
The correct format for this is YYYYMMDDHHMMSS[.f]Z, or without the Z
for local time, or Z+-HHMM on the end, for difference between local
time and UTC time. The fractional second amount f must consist of at
least one number with trailing zeroes removed.
@param time the time string.
@exception ArgumentException if string is an illegal format.
base constructor from a local time object
Return the time.
@return The time string as it appeared in the encoded object.
return the time - always in the form of
YYYYMMDDhhmmssGMT(+hh:mm|-hh:mm).
Normally in a certificate we would expect "Z" rather than "GMT",
however adding the "GMT" means we can just use:
dateF = new SimpleDateFormat("yyyyMMddHHmmssz");
To read in the time and Get a date which is compatible with our local
time zone.
return a Graphic String from the passed in object
@param obj a DerGraphicString or an object that can be converted into one.
@exception IllegalArgumentException if the object cannot be converted.
@return a DerGraphicString instance, or null.
return a Graphic String from a tagged object.
@param obj the tagged object holding the object we want
@param explicit true if the object is meant to be explicitly
tagged false otherwise.
@exception IllegalArgumentException if the tagged object cannot
be converted.
@return a DerGraphicString instance, or null.
basic constructor - with bytes.
@param string the byte encoding of the characters making up the string.
Der IA5String object - this is an ascii string.
return a IA5 string from the passed in object
@exception ArgumentException if the object cannot be converted.
return an IA5 string from a tagged object.
@param obj the tagged object holding the object we want
@param explicitly true if the object is meant to be explicitly
tagged false otherwise.
@exception ArgumentException if the tagged object cannot
be converted.
basic constructor - with bytes.
basic constructor - without validation.
Constructor with optional validation.
@param string the base string to wrap.
@param validate whether or not to check the string.
@throws ArgumentException if validate is true and the string
contains characters that should not be in an IA5String.
return true if the passed in String can be represented without
loss as an IA5String, false otherwise.
@return true if in printable set, false otherwise.
return an integer from the passed in object
@exception ArgumentException if the object cannot be converted.
return an Integer from a tagged object.
@param obj the tagged object holding the object we want
@param isExplicit true if the object is meant to be explicitly
tagged false otherwise.
@exception ArgumentException if the tagged object cannot
be converted.
in some cases positive values Get crammed into a space,
that's not quite big enough...
A Null object.
Der NumericString object - this is an ascii string of characters {0,1,2,3,4,5,6,7,8,9, }.
return a Numeric string from the passed in object
@exception ArgumentException if the object cannot be converted.
return an Numeric string from a tagged object.
@param obj the tagged object holding the object we want
@param explicitly true if the object is meant to be explicitly
tagged false otherwise.
@exception ArgumentException if the tagged object cannot
be converted.
basic constructor - with bytes.
basic constructor - without validation..
Constructor with optional validation.
@param string the base string to wrap.
@param validate whether or not to check the string.
@throws ArgumentException if validate is true and the string
contains characters that should not be in a NumericString.
Return true if the string can be represented as a NumericString ('0'..'9', ' ')
@param str string to validate.
@return true if numeric, fale otherwise.
return an Oid from the passed in object
@exception ArgumentException if the object cannot be converted.
return an object Identifier from a tagged object.
@param obj the tagged object holding the object we want
@param explicitly true if the object is meant to be explicitly
tagged false otherwise.
@exception ArgumentException if the tagged object cannot
be converted.
Return true if this oid is an extension of the passed in branch, stem.
@param stem the arc or branch that is a possible parent.
@return true if the branch is on the passed in stem, false otherwise.
The octets making up the octet string.
Der PrintableString object.
return a printable string from the passed in object.
@exception ArgumentException if the object cannot be converted.
return a Printable string from a tagged object.
@param obj the tagged object holding the object we want
@param explicitly true if the object is meant to be explicitly
tagged false otherwise.
@exception ArgumentException if the tagged object cannot
be converted.
basic constructor - byte encoded string.
basic constructor - this does not validate the string
Constructor with optional validation.
@param string the base string to wrap.
@param validate whether or not to check the string.
@throws ArgumentException if validate is true and the string
contains characters that should not be in a PrintableString.
return true if the passed in String can be represented without
loss as a PrintableString, false otherwise.
@return true if in printable set, false otherwise.
create an empty sequence
create a sequence containing one object
create a sequence containing a vector of objects.
A Der encoded set object
create an empty set
@param obj - a single object that makes up the set.
@param v - a vector of objects making up the set.
Der T61String (also the teletex string) - 8-bit characters
return a T61 string from the passed in object.
@exception ArgumentException if the object cannot be converted.
return an T61 string from a tagged object.
@param obj the tagged object holding the object we want
@param explicitly true if the object is meant to be explicitly
tagged false otherwise.
@exception ArgumentException if the tagged object cannot
be converted.
basic constructor - with bytes.
basic constructor - with string.
DER TaggedObject - in ASN.1 notation this is any object preceded by
a [n] where n is some number - these are assumed to follow the construction
rules (as with sequences).
@param tagNo the tag number for this object.
@param obj the tagged object.
@param explicitly true if an explicitly tagged object.
@param tagNo the tag number for this object.
@param obj the tagged object.
create an implicitly tagged object that contains a zero
length sequence.
Der UniversalString object.
return a Universal string from the passed in object.
@exception ArgumentException if the object cannot be converted.
return a Universal string from a tagged object.
@param obj the tagged object holding the object we want
@param explicitly true if the object is meant to be explicitly
tagged false otherwise.
@exception ArgumentException if the tagged object cannot
be converted.
basic constructor - byte encoded string.
UTC time object.
return an UTC Time from the passed in object.
@exception ArgumentException if the object cannot be converted.
return an UTC Time from a tagged object.
@param obj the tagged object holding the object we want
@param explicitly true if the object is meant to be explicitly
tagged false otherwise.
@exception ArgumentException if the tagged object cannot
be converted.
The correct format for this is YYMMDDHHMMSSZ (it used to be that seconds were
never encoded. When you're creating one of these objects from scratch, that's
what you want to use, otherwise we'll try to deal with whatever Gets read from
the input stream... (this is why the input format is different from the GetTime()
method output).
@param time the time string.
base constructor from a DateTime object
return the time as a date based on whatever a 2 digit year will return. For
standardised processing use ToAdjustedDateTime().
@return the resulting date
@exception ParseException if the date string cannot be parsed.
return the time as an adjusted date
in the range of 1950 - 2049.
@return a date in the range of 1950 to 2049.
@exception ParseException if the date string cannot be parsed.
return the time - always in the form of
YYMMDDhhmmssGMT(+hh:mm|-hh:mm).
Normally in a certificate we would expect "Z" rather than "GMT",
however adding the "GMT" means we can just use:
dateF = new SimpleDateFormat("yyMMddHHmmssz");
To read in the time and Get a date which is compatible with our local
time zone.
Note: In some cases, due to the local date processing, this
may lead to unexpected results. If you want to stick the normal
convention of 1950 to 2049 use the GetAdjustedTime() method.
Return a time string as an adjusted date with a 4 digit year.
This goes in the range of 1950 - 2049.
Der UTF8String object.
return an UTF8 string from the passed in object.
@exception ArgumentException if the object cannot be converted.
return an UTF8 string from a tagged object.
@param obj the tagged object holding the object we want
@param explicitly true if the object is meant to be explicitly
tagged false otherwise.
@exception ArgumentException if the tagged object cannot
be converted.
basic constructor - byte encoded string.
basic constructor
return a Videotex String from the passed in object
@param obj a DERVideotexString or an object that can be converted into one.
@exception IllegalArgumentException if the object cannot be converted.
@return a DERVideotexString instance, or null.
return a Videotex String from a tagged object.
@param obj the tagged object holding the object we want
@param explicit true if the object is meant to be explicitly
tagged false otherwise.
@exception IllegalArgumentException if the tagged object cannot
be converted.
@return a DERVideotexString instance, or null.
basic constructor - with bytes.
@param string the byte encoding of the characters making up the string.
Der VisibleString object.
return a Visible string from the passed in object.
@exception ArgumentException if the object cannot be converted.
return a Visible string from a tagged object.
@param obj the tagged object holding the object we want
@param explicitly true if the object is meant to be explicitly
tagged false otherwise.
@exception ArgumentException if the tagged object cannot
be converted.
basic constructor - byte encoded string.
basic constructor
Marker interface for CHOICE objects - if you implement this in a roll-your-own
object, any attempt to tag the object implicitly will convert the tag to an
explicit one as the encoding rules require.
If you use this interface your class should also implement the getInstance
pattern which takes a tag object and the tagging mode used.
basic interface for Der string objects.
class for breaking up an Oid into it's component tokens, ala
java.util.StringTokenizer. We need this class as some of the
lightweight Java environment don't support classes like
StringTokenizer.
return a = a + b - b preserved.
unsigned comparison on two arrays - note the arrays may
start with leading zeros.
return z = x / y - done in place (z value preserved, x contains the
remainder)
return whether or not a BigInteger is probably prime with a
probability of 1 - (1/2)**certainty.
From Knuth Vol 2, pg 395.
Calculate the numbers u1, u2, and u3 such that:
u1 * a + u2 * b = u3
where u3 is the greatest common divider of a and b.
a and b using the extended Euclid algorithm (refer p. 323
of The Art of Computer Programming vol 2, 2nd ed).
This also seems to have the side effect of calculating
some form of multiplicative inverse.
@param a First number to calculate gcd for
@param b Second number to calculate gcd for
@param u1Out the return object for the u1 value
@return The greatest common divisor of a and b
return w with w = x * x - w is assumed to have enough space.
return x with x = y * z - x is assumed to have enough space.
Calculate mQuote = -m^(-1) mod b with b = 2^32 (32 = word size)
Montgomery multiplication: a = x * y * R^(-1) mod m
Based algorithm 14.36 of Handbook of Applied Cryptography.
m, x, y should have length n
a should have length (n + 1)
b = 2^32, R = b^n
The result is put in x
NOTE: the indices of x, y, m, a different in HAC and in Java
return x = x % y - done in place (y value preserved)
do a left shift - this returns a new array.
do a right shift - this does it in place.
do a right shift by one - this does it in place.
returns x = x - y - we assume x is >= y
General array utilities.
Are two arrays equal.
Left side.
Right side.
True if equal.
A constant time equals comparison - does not terminate early if
test will fail.
first array
second array
true if arrays equal, false otherwise.
Make a copy of a range of bytes from the passed in data array. The range can
extend beyond the end of the input array, in which case the return array will
be padded with zeroes.
@param data the array from which the data is to be copied.
@param from the start index at which the copying should take place.
@param to the final index of the range (exclusive).
@return a new byte array containing the range given.
Return the number of milliseconds since the Unix epoch (1 Jan., 1970 UTC) for a given DateTime value.
A UTC DateTime value not before epoch.
Number of whole milliseconds after epoch.
'dateTime' is before epoch.
Create a DateTime value from the number of milliseconds since the Unix epoch (1 Jan., 1970 UTC).
Number of milliseconds since the epoch.
A UTC DateTime value
Return the current number of milliseconds since the Unix epoch (1 Jan., 1970 UTC).
Class to decode and encode Hex.
encode the input data producing a Hex encoded byte array.
@return a byte array containing the Hex encoded data.
encode the input data producing a Hex encoded byte array.
@return a byte array containing the Hex encoded data.
Hex encode the byte data writing it to the given output stream.
@return the number of bytes produced.
Hex encode the byte data writing it to the given output stream.
@return the number of bytes produced.
decode the Hex encoded input data. It is assumed the input data is valid.
@return a byte array representing the decoded data.
decode the Hex encoded string data - whitespace will be ignored.
@return a byte array representing the decoded data.
decode the Hex encoded string data writing it to the given output stream,
whitespace characters will be ignored.
@return the number of bytes produced.
encode the input data producing a Hex output stream.
@return the number of bytes produced.
decode the Hex encoded byte data writing it to the given output stream,
whitespace characters will be ignored.
@return the number of bytes produced.
decode the Hex encoded string data writing it to the given output stream,
whitespace characters will be ignored.
@return the number of bytes produced.
Encode and decode byte arrays (typically from binary to 7-bit ASCII
encodings).
Pipe all bytes from inStr to outStr, throwing StreamFlowException if greater
than limit bytes in inStr.
A
A
A
The number of bytes actually transferred, if not greater than limit
General string utilities.
Occurs when an invalid action is imported.
Initializes a new instance of the class.
Initializes a new instance of the class.
The message that describes the error.
Initializes a new instance of the class.
The message that describes the error.
The exception that is the cause of the current exception,
or a null reference (Nothing in Visual Basic) if no inner exception is specified.
Initializes a new instance of the class.
The
that holds the serialized object data about the exception being thrown.
The
that contains contextual information about the source or destination.
Provides COM objects with version-independent access to the
method.
The
object that holds the serialized object data about the exception being thrown.
The
structure that contains contextual information about the source or destination.
Represents not supported encryption revision exception.
Initializes a new instance of the class.
Initializes a new instance of the class.
The encryption revision code.
Initializes a new instance of the class.
The encryption revision code.
The message.
Initializes a new instance of the class.
The message.
The cause.
Initializes a new instance of the class.
The info.
The context.
Gets or sets the encryption revision code.
The encryption revision code.
Provides COM objects with version-independent access to the
method
SerializationInfo
The
object that holds the serialized object data about the exception being thrown.
The
structure that contains contextual information about the source or destination.
Occurs when a not supported FlateDecode reserved method is imported.
Initializes a new instance of the class.
Initializes a new instance of the class.
The message that describes the error.
Initializes a new instance of the class.
The message that describes the error.
The exception that is the cause of the current exception,
or a null reference (Nothing in Visual Basic) if no inner exception is specified.
Initializes a new instance of the class.
The
that holds the serialized object data about the exception being thrown.
The
that contains contextual information about the source or destination.
Provides COM objects with version-independent access to the
method.
The
object that holds the serialized object data about the exception being thrown.
The
structure that contains contextual information about the source or destination.
Represents not supported action exception.
Initializes a new instance of the class.
The message that describes the error.
The name of the not supported action.
Gets the name of the action from the pdf file.
Represents not supported charset format exception.
Initializes a new instance of the class.
Initializes a new instance of the class.
The charset format.
Initializes a new instance of the class.
The charset format.
The message.
Initializes a new instance of the class.
The message.
The cause.
Initializes a new instance of the class.
The info.
The context.
Gets or sets the charset format.
The charset format.
Provides COM objects with version-independent access to the
method
The
object that holds the serialized object data about the exception being thrown.
The
structure that contains contextual information about the source or destination.
Represents not supported color space exception.
Initializes a new instance of the class.
Initializes a new instance of the class.
The color space.
Initializes a new instance of the class.
The color space.
The message.
Initializes a new instance of the class.
The message.
The cause.
Initializes a new instance of the class.
The info.
The context.
Gets or sets the color space.
The color space.
Provides COM objects with version-independent access to the
method
The
object that holds the serialized object data about the exception being thrown.
The
structure that contains contextual information about the source or destination.
Represents not supported encryption exception.
Initializes a new instance of the class.
Initializes a new instance of the class.
The encryption code.
Initializes a new instance of the class.
The encryption code.
The message.
Initializes a new instance of the class.
The message.
The cause.
Initializes a new instance of the class.
The info.
The context.
Gets or sets the encryption code.
The encryption code.
Provides COM objects with version-independent access to the
method
The
object that holds the serialized object data about the exception being thrown.
The
structure that contains contextual information about the source or destination.
Represents not supported font exception.
Initializes a new instance of the class.
Initializes a new instance of the class.
Type of the font.
Initializes a new instance of the class.
Type of the font.
The message.
Initializes a new instance of the class.
The message.
The cause.
Initializes a new instance of the class.
The info.
The context.
Gets or sets the type of the font.
The type of the font.
Provides COM objects with version-independent access to the
method
The
object that holds the serialized object data about the exception being thrown.
The
structure that contains contextual information about the source or destination.
Represents not supported font family exception.
Initializes a new instance of the class.
Initializes a new instance of the class.
The message.
Initializes a new instance of the class.
The message.
The cause.
Initializes a new instance of the class.
The info.
The context.
Represents not supported function type exception.
Initializes a new instance of the class.
Initializes a new instance of the class.
The message.
Initializes a new instance of the class.
Type of the function.
Initializes a new instance of the class.
Type of the function.
The message.
Initializes a new instance of the class.
The message.
The cause.
Initializes a new instance of the class.
The info.
The context.
Gets or sets the type of the function.
The type of the function.
Provides COM objects with version-independent access to the
method
The
object that holds the serialized object data about the exception being thrown.
The
structure that contains contextual information about the source or destination.
Represents not supported paint type exception.
Initializes a new instance of the class.
Initializes a new instance of the class.
The message.
Initializes a new instance of the class.
Type of the paint.
Initializes a new instance of the class.
Type of the paint.
The message.
Initializes a new instance of the class.
The message.
The cause.
Initializes a new instance of the class.
The info.
The context.
Gets or sets the type of the paint.
The type of the paint.
Provides COM objects with version-independent access to the
method
The
object that holds the serialized object data about the exception being thrown.
The
structure that contains contextual information about the source or destination.
Represents not supported predefined CMap exception.
Initializes a new instance of the class.
Initializes a new instance of the class.
Name of the cmap.
Initializes a new instance of the class.
Name of the cmap.
The message.
Initializes a new instance of the class.
The message.
The cause.
Initializes a new instance of the class.
The info.
The context.
Gets or sets the name of the C map.
The name of the C map.
Provides COM objects with version-independent access to the
method
The
object that holds the serialized object data about the exception being thrown.
The
structure that contains contextual information about the source or destination.
Represents not supported shading type exception.
Initializes a new instance of the class.
Initializes a new instance of the class.
The message.
Initializes a new instance of the class.
Type of the shading.
Initializes a new instance of the class.
Type of the shading.
The message.
Initializes a new instance of the class.
The message.
The cause.
Initializes a new instance of the class.
The info.
The context.
Gets or sets the type of the shading.
The type of the shading.
Provides COM objects with version-independent access to the
method
The
object that holds the serialized object data about the exception being thrown.
The
structure that contains contextual information about the source or destination.
Represents not supported stream type exception.
Initializes a new instance of the class.
Initializes a new instance of the class.
The message.
Initializes a new instance of the class.
The supports read.
The supports seek.
Initializes a new instance of the class.
The supports read.
The supports seek.
The message.
Initializes a new instance of the class.
The message.
The cause.
Initializes a new instance of the class.
The info.
The context.
Gets or sets the supports seek.
The supports seek.
Gets or sets the supports read.
The supports read.
Provides COM objects with version-independent access to the
method
The
object that holds the serialized object data about the exception being thrown.
The
structure that contains contextual information about the source or destination.
Represents not supported XObject exception.
Initializes a new instance of the class.
Initializes a new instance of the class.
The message.
Initializes a new instance of the class.
The message.
The cause.
Initializes a new instance of the class.
The info.
The context.
Represents not supported filter exception.
Initializes a new instance of the class.
Initializes a new instance of the class.
Name of the filter.
Initializes a new instance of the class.
Name of the filter.
The message.
Initializes a new instance of the class.
The message.
The cause.
Initializes a new instance of the class.
The info.
The context.
Gets the name of the filter.
The name of the filter.
Provides COM objects with version-independent access to the
method
The
object that holds the serialized object data about the exception being thrown.
The
structure that contains contextual information about the source or destination.
Represents settings that uses to import PDF.
Gets the default format provider settings.
The default.
Gets the read on demand format provider settings.
The read on demand.
Initializes a new instance of the class.
The rendering mode.
Gets or sets the reading mode.
The reading mode.
Gets or sets whether to use the PdfProcessing model when importing the document for RadPdfViewer.
This allows accessing the imported document page content.
True by default.
Represents the possible encryption algorithm types.
RC4 encryption.
AES-256 encryption.
Represents the possible image filter types.
The image XObjects will be encoded but the images withing page contents stream won't be encoded.
This is the fastest approach.
The images won't be encoded.
The images will be encoded with a FlateDecode filter.
Compresses data using the zlib/deflate compression method.
This writer is used for writing all the content on a single line (does not support multiline text writing).
Represents image quality for the exported images.
Represents high image quality.
Represents medium image quality.
Represents low image quality.
Represents PDF compliance levels.
Specify no compliance level.
Specify PDF/A-1b compliance level.
Specify PDF/A-2b compliance level.
Specify PDF/A-2u compliance level.
Specify PDF/A-3b compliance level.
Specify PDF/A-3u compliance level.
Represents PDF export settings.
Initializes a new instance of the class.
Specifies if the PDF document should be encrypted.
True if the document should be encrypted.
Gets or sets the user password.
The user password.
Gets or sets the owner password.
The owner password.
Gets or sets the default image quality when exporting images to PDF. The default value is High.
The value of this property will be overridden when specifying the ImageQuality in ImageSource constructor or when creating ImageSource from EncodedImageData.
The higher the quality, the bigger the document size.
The image quality.
Gets or sets the PDF compliance level.
The compliance level.
Gets or sets the user access permissions. These permissions specify which access permissions should be granted when the document is opened with user access.
In order to be applied the IsEncrypted property should be set to true.
The user access permissions.
Specifies whether the font files should be embedded in the PDF document.
True if the font files should be exported.
Gets or sets the encryption algorithm type.
Gets or sets the image compression type.
If the document is encrypted with a V value less than 2
and does not have any of the access permissions set to 0
that are designated "Security handlers of revision 3 or greater".
If the document is encrypted with a V value of 2 or 3, or has any "Security handlers of revision 3 or greater" access permissions set to 0.
If the document is encrypted with a V value of 4.
Shall not be used. This value was used by a deprecated proprietary Adobe extension.
If the document is encrypted with a V value of 5.
Return true if the given is a Unicode character.
Returns the number of characters required to represent a specified Unicode character.
Return true if the given has right to left directionality as defined by
RFC 3454, Appendix D.1.
Return true if the given has left to right directionality as defined by
RFC 3454, Appendix D.2.
Represents changing permission types.
Specifies that no changing is allowed.
Specifies that inserting, deleting, and rotating pages changes is allowed.
Specifies that filling in form fields and signing existing signature fields changes is allowed.
Specifies that commenting, filling in form fields, and signing existing signature fields changes is allowed.
Specifies that any changes except extracting pages is allowed.
Represents copying permission types.
Specifies that no copying is allowed.
Specifies that copying is allowed.
Specifies that text access for screen reader devices for copying is allowed.
Represents printing permission types.
Specifies that no printing is allowed.
Specifies that low resolution (150 dpi) printing is allowed.
Specifies that printing on the highest resolution is allowed.
Return the SASLPrep-canonicalized version of the given for use as a query string.
This implements the SASLPrep algorithm defined in RFC 4013.
The string to canonicalize.
The canonicalized string.
Return the SASLPrep-canonicalized version of the given for use as a stored string.
This implements the {@code SASLPrep} algorithm defined in RFC 4013.
The string to canonicalize.
The canonicalized string.
Return true if the given is a prohibited character
as defined by RFC 4013, Section 2.3.
Return true if the given is a tagging character
as defined by RFC 3454, Appendix C.9.
Return true if the given is change display properties
or deprecated characters as defined by
RFC 3454, Appendix C.8.
Return true if the given is inappropriate for
canonical representation characters as defined by
RFC 3454, Appendix C.7.
Return true if the given is inappropriate for plain
text characters as defined by
RFC 3454, Appendix C.6.
Return true if the given is a surrogate
code point as defined by
RFC 3454, Appendix C.5.
Return true if the given is a non-character
code point as defined by
RFC 3454, Appendix C.4.
Return true if the given is a private use character
as defined by RFC 3454, Appendix C.3.
Return true if the given is a non-ASCII control character
s defined by RFC 3454, Appendix C.2.2.
Return true if the given is an ASCII control character
s defined by RFC 3454, appendix C.2.1.
Return true if the given is a non-ASCII space character
as defined by RFC 3454, Appendix C.1.2.
Return true if the given is a "commonly mapped to nothing" character as defined by
RFC 3454, Appendix B.1.
Represents UserAccessPermissions class.
Gets or sets the printing permission type.
Gets or sets the changing permission type.
Gets or sets the copying permission type.
No encryption.
RC4 encryption.
AES-128 encryption.
AES-256 encryption.
Converts a PDF dictionary to a concrete object instance based on some type property and some parameter property in the dictionary.
The type of the type property.
The type of the parameter property.
Converts a PDF dictionary to a concrete object instance based on some type property in the dictionary.
The type of the type property.
Represents annotation types.
Represents Link annotation type.
Represents Widget annotation type.
Represents Text annotation type.
Represents FreeText annotation type.
Represents Line annotation type.
Represents Square annotation type.
Represents Circle annotation type.
Represents Polygon annotation type.
Represents Polyline annotation type.
Represents Highlight annotation type.
Represents Underline annotation type.
Represents Squiggly annotation type.
Represents Strikeout annotation type.
Represents Stamp annotation type.
Represents Caret annotation type.
Represents Ink annotation type.
Represents Popup annotation type.
Represents FileAttachment annotation type.
Represents Sound annotation type.
Represents Movie annotation type.
Represents Screen annotation type.
Represents PrinterMark annotation type.
Represents TrapNet annotation type.
Represents Watermark annotation type.
Represents ThreeD annotation type.
Represents Redact annotation type.
Sets a calculated byte at the specified position in the data byte array for the parameter number.
This is reverse of the GetInt method.
The data to be filled.
The position in the data array.
The length in bytes reserved for a specific field value from W.
The number aka field value.
Represents Button field type.
Represents Text field type.
Represents Choice field type.
Represents Signature field type.
Calculates step appropriate for calculating neighbouring colors in a linear gradient.
The linear gradient.
The step.
Calculates step appropriate for calculating neighbouring colors in a radial gradient.
The radial gradient.
The step.
Returns a 16-bit unsigned integer converted from two bytes at a specified position
in a byte array. The integer is converted using the Big Endian ordering.
Provides API for handling the execution of delegates.
NOTE: Use the delegates API with caution. Creating non-cached delegate instances in hot codepath will lead to high memory traffic.
The implementers of this method should try executing the delegate safely,
by trying to handle any exceptions of type .
NOTE: Use the delegates API with caution. Creating non-cached delegate instances in hot codepath will lead to high memory traffic.
The type of exceptions to be handled.
The delegate to be executed.
The implementers of this method should try executing the delegate safely,
by trying to handle any exceptions of type .
NOTE: Use the delegates API with caution. Creating non-cached delegate instances in hot codepath will lead to high memory traffic.
The type of exceptions to be handled.
The delegate to be executed.
The delegate to be executed when an exception is handled.
The implementers of this method should try executing the delegate safely,
by trying to handle any exceptions of type .
NOTE: Use the delegates API with caution. Creating non-cached delegate instances in hot codepath will lead to high memory traffic.
The type of exceptions to be handled.
The return type of the delegate to be executed.
The delegate to be executed.
The delegate to be executed when an exception is handled.
The result of the executed delegate.
Class responsible for page content caching operations.
Preserves all currently applied changes of the page content in memory.
The page instance.
Loads the page content.
The page instance.
A disposable object responsible for
unloading the page content.
Clears the cached content.
Represents password needed event args.
Initializes a new instance of the class.
Gets or sets the password.
The password.
Represents PDF import settings.
Initializes a new instance of the class.
Occurs when the user password is needed.
Occurs when the owner password is needed.
Occurs when unhandled exception is thrown during document import.
Gets the default format provider settings for all at once reading mode: { ReadingMode = AllAtOnce, CopyStream = false }
Gets the default format provider settings for on demand reading mode: { ReadingMode = OnDemand, CopyStream = true }
Gets or sets the mode for loading the document pages content on import.
If AllAtOnce applied, the document pages content will be loaded on import.
If OnDemand applied, the document pages content will be loaded on demand.
Currently, the OnDemand setting should be applied for use with viewers only.
Gets or sets whether to copy the document stream on import.
When false and is OnDemand,
the original stream must be kept open while the document is in use.
When true, the original stream can be disposed after import, regardless of the reading mode.
This property is only applicable for RadPdfViewer. When true, it fallbacks internally to use the RadPdfViewer old model on document import.
Implements the ASCIIHexDecode filter.
Encodes the specified data.
Decodes the specified data.
Represents all color spaces.
Represents undefined color space.
Represents grayscale color space.
Represents RGB color space.
Represents CMYK color space.
Represents indexed color space.
Represents ICC based color space.
Represents pattern color space.
Represents separation color space.
Represents DeviceN color space.
Represents Lab color space.
Represents CalRgb space.
Represents CalGray space.
Represents the decode parameters collection.
Represents PDF filter.
Encodes the specified data.
The encoded object.
The input data.
The encoded data.
Decodes the specified data.
The decoded object.
The input data.
The decode parameters.
Gets the name of the PDF filter.
The name.
Contains valid names for PDF filters.
Name for ASCIIHexDecode filter.
Name for ASCII85Decode filter.
Name for LZWDecode filter.
Name for FlateDecode filter.
Name for RunLengthDecode filter.
Name for CCITTFaxDecode filter.
Name for JBIG2Decode filter.
Name for DCTDecode filter.
Name for JPXDecode filter.
Represents a PDF object.
This constructor is used for exporting stream objects.
This constructor is used for exporting image stream objects.
This constructor is used for decoding objects.
This constructor is used for decoding stream objects on RadPdfProcessing import.
This constructor is used for decoding stream objects on RadPdfViewer import.
Gets the color space.
The color space.
Gets the bits per component.
The bits per component.
Gets the width.
The width.
Gets the height.
The height.
Returns from this.dictionary when using PdfProcessing model;
and ColorSpaceOld when using PdfViewer model.
Returns from this.dictionary when using PdfProcessing;
and from ColorSpaceOld when using PdfViewer.
Represents the PDF filters manager.
Registers the specified PDF filter.
The filter.
Represents DCT filter.
Gets the name of the PDF filter.
The name.
Encodes the specified data.
The encoded object.
The input data.
The encoded data.
Decodes the specified data.
The decoded object.
The input data.
Decodes the data with Telerik's internal JpegDecoder class.
This method was used in previous versions and you can achieve backwards compatibility by using it in the Decode method.
The input data.
The decoded data.
Represents flate filter.
Gets the name of the PDF filter.
The name.
Decodes the specified data.
The decoded object.
The data.
Decode parameters
Encodes the specified data.
The encoded object.
The data
The encoded data.
Performs application-defined tasks associated with freeing, releasing,
or resetting unmanaged resources.
Represent source PDF file.
Initializes a new instance of the class.
The pdf file stream.
Initializes a new instance of the class.
The pdf file stream.
Boolean value indicating whether or not to close the stream when instance is disposed. The default value is false.
Initializes a new instance of the class.
The PDF file instance.
The instance specifying settings for PDF file import.
Boolean value indicating whether or not to close the stream when instance is disposed. The default value is false.
Gets the pages.
The pages.
Performs application-defined tasks associated with freeing, releasing,
or resetting unmanaged resources.
Gets PdfFormFieldSource instance by field name.
The field name.
Gets the count of the fields in the collection.
Represents PDF file stream that writes file content directly to a given stream.
Initializes a new instance of the class.
The stream.
Initializes a new instance of the class.
The stream.
Boolean value indicating whether or not to close the stream after instance is disposed.
The settings
Writes the page.
The page source.
Writes the page.
The page.
Begins the page.
Size of the page.
The page stream.
Begins the page.
Size of the page.
The rotation.
The page stream.
Begins the page.
Defines the boundaries of the physical medium
on which the page is intended to be displayed or printed.
Defines the boundaries of the visible region of the page.
When the page is displayed or printed, its contents are to be clipped (cropped) to this rectangle.
The rotation.
The page stream.
Performs application-defined tasks associated with freeing, releasing,
or resetting unmanaged resources.
Represents PDF file page source.
Gets the rotation.
The rotation.
Gets the size of the physical medium
on which the page is intended to be displayed or printed.
Gets the rectangle defining the boundaries of the physical medium
on which the page is intended to be displayed or printed.
Gets the rectangle defining the boundaries of the visible region of the page.
When the page is displayed or printed, its contents are to be clipped (cropped) to this rectangle.
Represent a PDF page stream that writes page content directly to a given stream on Dispose method call.
Gets the size of the physical medium
on which the page is intended to be displayed or printed.
Gets the rectangle defining the boundaries of the physical medium
on which the page is intended to be displayed or printed.
Gets the rectangle defining the boundaries of the visible region of the page.
When the page is displayed or printed, its contents are to be clipped (cropped) to this rectangle.
Gets the page rotation.
Gets or sets the current content position.
Writes the content of a .
The PDF page source.
Writes the content of a .
The page instace.
Performs application-defined tasks associated with freeing, releasing,
or resetting unmanaged resources.
Saves current content position and returns IDisposable action that restores the position when disposed.
IDisposable action that restores the position when disposed.
Represents settings for the produced PDF file stream.
Initializes a new instance of the class.
Gets the document information.
Gets or sets the default image quality when exporting images to PDF. The default value is High.
The value of this property will be overriden when specifying the ImageQuality in ImageSource constructor or when creating ImageSource from EncodedImageData.
The higher the quality, the bigger the document size.
The image quality.
Gets or sets boolean value indicating whether to write annotations.
Value indication whether to write annotations.
Represents format provider settings converter.
Returns whether the type converter can convert an object from the specified
type to the type of this converter.
An object that provides a format context.
The type you want to convert from.
true if this converter can perform the conversion; otherwise, false.
Returns whether the type converter can convert an object to the specified
type.
An object that provides a format context.
The type you want to convert to.
true if this converter can perform the conversion; otherwise, false.
Converts from the specified value to the intended conversion type of
the converter.
An object that provides a format context.
The to
use as the current culture.
The value to convert to the type of this converter.
not implemented in base .
The converted value.
Provides functionality for importing PDF documents.
Represents PDF format provider.
Initializes a new instance of the class.
The source stream.
Initializes a new instance of the class. This overload should be used in order to import a document in RadPdfViewer.
The stream.
The settings.
Creates a that represents the PDF file.
The fixed document.
Initializes a new instance of the class.
Gets the supported extensions.
The supported extensions.
Gets or sets the import settings.
The import settings.
Gets or sets the export settings.
The export settings.
Gets a value indicating whether can import.
The value indicating whether can import.
Gets a value indicating whether can export.
The value indicating whether can export.
Imports the specified input.
The input.
The imported document.
Exports the specified document.
The output.
Represents format provider settings converter.
Returns whether the type converter can convert an object from the specified
type to the type of this converter.
An object that provides a format context.
The type you want to convert from.
true if this converter can perform the conversion; otherwise, false.
Returns whether the type converter can convert an object to the specified
type.
An object that provides a format context.
The type you want to convert to.
true if this converter can perform the conversion; otherwise, false.
Converts from the specified value to the intended conversion type of
the converter.
An object that provides a format context.
The to
use as the current culture.
The value to convert to the type of this converter.
The converted value.
Returns from .
Not implemented for all types! Throws not implemented exception for the non-implemented conversion.
Use for test purposes only!
Represents the filters manager.
Registers the specified PDF filter.
The filter.
Represents the reading mode on document import.
Reads all the pages content on document import.
The pages content is not read on document import.
When needed, the page content can be loaded lately.
Provides functionality to export RadFixedDocument to text.
Exports the specified document as text.
The document to export.
The settings.
The text, that is extracted from the RadFixedDocument.
Exports the specified document as text.
The document to export.
The text, that is extracted from the RadFixedDocument.
Represents settigs that uses to export RadFixedDocument to text.
Gets the default settings.
The default settings.
Initializes a new instance of the class.
Initializes a new instance of the class.
The lines separator.
The pages separator.
Gets or sets the lines separator.
The lines separator.
Gets or sets the pages separator.
The pages separator.
Describes the settings which are used to determine how the border will appear in the document.
Initializes a new instance of the class.
Initializes a new instance of the class.
The width.
The style.
The dash array.
Gets or sets the width.
The width.
Gets or sets the style.
The style.
Gets or sets the dash array.
The dash array.
Describes the possible types for the style of the border.
Specifies that the border should be from one solid line.
Specifies that the border should be from one dashed line.
A simulated embossed rectangle that appearance to be raised above the surface of the page.
A simulated engraved rectangle that appears to be recessed below the surface of the page.
Specifies that no border should be applied on this element.
Table cell borders will not inherit their value from the containing table.
Represents the characteristics of button Widget annotation dynamic appearance.
Initializes a new instance of class.
Initializes a new instance of class by copying its properties from other instance.
Other instance.
Gets or sets the button normal caption displayed when the mouse is not interacting with the widget.
Represents widget used by the signature annotation.
Gets the widget content type.
Gets the source defining the visual content of the widget.
This content is with bigger priority compared to Widget appearance characteristics and text properties and it is visualized by default when opening the exported document in some PDF viewer.
Recalculates the Widget content based on Widget text properties and dynamic appearance characteristics.
Represents the characteristics of Widget annotation dynamic appearance.
Initializes a new instance of class.
Initializes a new instance of class by copying its properties from other instance.
Other instance.
Gets or sets the rotation of the Widget appearance content within the annotation rectangle.
Gets or sets the border color. If null the border will be fully transparent.
If not null, then only the R, G and B values are accounted and the alpha value is ignored.
Gets or sets the annotation rectangle background color. If null the background will be fully transparent.
If not null, then only the R, G and B values are accounted and the alpha value is ignored.
Represents the effect to be applied to widget appearance when the annotation is highlighted.
No highlighting should be applied.
The content of the annotation rectangle should be inverted.
The border of the annotation rectangle should be inverted.
The annotation source for MouseDown state should be used.
Represents the relative positioning between button icon and caption.
No icon will be displayed and only the caption will be drawn.
No caption will be displayed and only the icon will be drawn.
The caption will be positioned below the icon.
The caption will be positioned above the icon.
The caption will be position right of the icon.
The caption will be positioned left of the icon.
The caption will be positioned over the icon.
Represents options specifying how to fit the button icon inside the annotation rectangle.
Initializes a new instance of class.
Gets or sets the conditions specifying when the icon should be scaled.
Gets or sets the type of the scaling.
Gets or sets the percent of the blank space from the left side compared to the whole horizontal blank space occured after a proportional scaling operation.
The value must be in range between 0 and 1. The default value is 0.5 meaning that the left and right blank spaces are equal and the icon should be centered horizontally after the scaling.
Gets or sets the percent of the blank space from the bottom side compared to the whole vertical blank space occured after a proportional scaling operation.
The value must be in range between 0 and 1. The default value is 0.5 meaning that the bottom and top blank spaces are equal and the icon should be centered vertically after the scaling.
Gets or sets boolean value indicating whether to ignore annotation border thickness when making the icon fit calculations.
Represents the icon scaling types.
The icon should be scaled to fit the annotation rectangle ignoring the original icon sides ratio.
The icon should be scaled to fit inside the annotation rectangle preserving the original icon sides ratio.
Represents the characteristics of a PushButton Widget annotation dynamic appearance.
Initializes a new instance of class.
Initializes a new instance of class by copying its properties from other instance.
Other instance.
Gets or sets the button caption displayed when the mouse is over the widget.
Gets or sets the button caption displayed when the mouse button is pressed on the widget.
Gets or sets the button normal icon displayed when the mouse is not interacting with the widget.
Gets or sets the button icon displayed when the mouse is over the widget.
Gets or sets the button icon displayed when the mouse button is pressed on the widget.
Gets the options specifying how fit the icon inside the annotation rectangle.
Gets or sets the relative positioning of icon and caption in the button appearance.
Represents a push button widget.
Gets the widget content type.
Gets the source defining the visual content of the widget.
This content is with bigger priority compared to Widget appearance characteristics and text properties and it is visualized by default when opening the exported document in some PDF viewer.
Recalculates the Widget content based on Widget text properties and dynamic appearance characteristics.
Represents the conditions by which the button icon will be scaled in Annotation rectangle.
Always scale the icon.
Scale the icon if it is bigger than Annotation Rectangle.
Scale the icon if it is smaller than Annotation Rectangle.
Never scale the icon.
Represents the radio button widget.
Gets the option that is represented by the widget.
Gets whether the RadioButtonWidget is actually selected,
regardless of the ShouldUpdateRadiosInUnison value.
Represents widget that has ON and OFF states.
Gets the widget content type.
Represents the content source displayed when the widget is in its ON state.
This content is with bigger priority compared to Widget appearance characteristics and text properties and it is visualized by default when opening the exported document in some PDF viewer.
Represents the content source displayed when the widget is in its OFF state.
This content is with bigger priority compared to Widget appearance characteristics and text properties and it is visualized by default when opening the exported document in some PDF viewer.
Gets the appearance state (AS entry) of the widget.
Recalculates the Widget content based on Widget text properties and dynamic appearance characteristics.
Represents a set of constants corresponding to the button normal captions for with font ZapfDingbats.
The check button template caption.
The circle button template caption.
The cross button template caption.
The diamond button template caption.
The square button template caption.
The star button template caption.
Represents widget that has variable content generated dynamically while interacting with the widget in a PDF viewer.
Gets the widget content type.
The content used to initially visualize the Widget appearance in a PDF viewer.
This content is with bigger priority compared to Widget appearance characteristics and text properties and it is visualized by default when opening the exported document in some PDF viewer.
Recalculates the Widget content based on Widget text properties and dynamic appearance characteristics.
Represents a form field widget.
Gets or sets the highlighting mode.
Represents the text properties used by the PDF viewer in order to build the widget appearance dynamically.
Gets or sets the parent field.
Gets the widget content type.
Gets the type of the annotation.
The type of the annotation.
Recalculates the Widget content based on Widget text properties and dynamic appearance characteristics.
Represents widget annotation with .
Gets or sets the appearance characteristics used by a PDF viewer to construct the widget appearance dynamically.
Represents the instances used for displaying the widget content.
Gets or sets the normal content source displayed when the mouse is not interacting with the widget.
Gets or sets the content source displayed when the mouse button is pressed on the widget.
Gets or sets the content source displayed when the mouse is over the widget.
Represents the widget content types.
The variable content type.
The content type for widgets that have two states.
The content type for signature widget.
The content type for push button widget.
Represents different annotation types.
Stands for the link annotation, which represents either a hypertext link to a destination elsewhere in the document or an action to be performed.
Stands for the widget annotation, which is used by interactive forms to represent the appearance of fields and to manage user interactions.
Stands for the text annotation, a “sticky note” attached to a point in the PDF document.
Stands for the free text annotation, which displays text directly on the page.
Stands for the line annotation, which displays a single straight line on the page.
Stands for the square annotation, which displays a rectangle on the page.
Stands for the circle annotation, which displays an ellipse on the page.
Stands for the polygon annotation, which displays a closed polygon on the page.
Stands for the polyline annotation which is similar to the polygon annotation,
except that the first and last vertex of the polygon are not implicitly connected.
Stands for the highlight annotation which appears as a highlight in the text of the document.
Stands for the underline annotation which appears as an underline in the text of the document.
Stands for the squiggly annotation which appears as a jagged underline in the text of the document.
Stands for the strikeout annotation which appears as a strikeout in the text of the document.
Stands for the stamp annotation which displays text or graphics intended to look as if they were stamped on the page with a rubber stamp.
Stands for the caret annotation which is a visual symbol that indicates the presence of text edits.
Stands for the ink annotation which represents a freehand “scribble” composed of one or more disjoint paths.
Stands for the popup annotation which displays text in a pop-up window for entry and editing.
Stands for the file attachment annotation which contains a reference to a file.
Stands for the sound annotation which contains sound recorded from the computer’s microphone or imported from a file.
Stands for the movie annotation which contains animated graphics and sound to be presented on the computer screen and through the speakers.
Stands for the screen annotation which specifies a region of a page upon which media clips may be played.
Stands for the printer mark annotation which represents a mark, added to a page to assist in identifying components of a multiple-plate job and maintaining consistent output during production.
Stands for the trapnet annotation which defines the trapping characteristics for a page of a PDF document.
Stands for the watermark annotation which is used to represent graphics that are expected to be printed at a fixed size and position on a page, regardless of the dimensions of the printed page.
Stands for the 3D annotation which is the means by which 3D artwork is represented in a PDF document.
Stands for the redact annotation which identifies content that is intended to be removed from the document.
Represent AnnotationEventArgs
Gets or sets the page.
The page.
Gets or sets the annotation.
The annotation.
Gets or sets if the event is handled.
If the event is handled.
Represents base class for annotation object.
Gets or sets the position of the annotation.
The rect.
Gets the type of the annotation.
The type of the annotation.
Gets or sets the annotation borders.
The border.
Gets or sets boolean value indicating whether the annotation instance should be visualized when printing the document.
Represents link annotation.
Initializes a new instance of the class.
The destination.
Initializes a new instance of the class.
The action.
Initializes a new instance of the class.
The named destination.
Gets or sets the destination for the link action.
The destination.
Gets or sets the action for the link annotation.
The action.
Gets or sets the named destination for the link annotation.
The named destination.
Gets the type of the annotation.
The type of the annotation.
Represents Lab color.
Initializes a new instance of the class with CIE Standard Illuminant D65: https://en.wikipedia.org/wiki/Illuminant_D65.
The L* component.
The a* component.
The b* component.
Initializes a new instance of the class.
The L* component.
The a* component.
The b* component.
The white point component.
Initializes a new instance of the class.
The L* component.
The a* component.
The b* component.
The white point component.
The range component.
Initializes a new instance of the class.
The L* component.
The a* component.
The b* component.
The white point component.
The black point component.
The range component.
Gets or sets the L* component.
The L* component.
Gets or sets the a* component.
The a* component.
Gets or sets the b* component.
The b* component.
Gets or sets the white point component.
The white point component.
Gets or sets the range component.
The range component.
Equals the specified other.
The other.
Called from to get color from lookup array.
Called from to get color from lookup array.
Represents the color space names.
The CalRGB color space.
The CalGray color space.
The Lab color space.
The ICCBased color space.
The DeviceRGB color space.
The DeviceCMYK color space.
The DeviceGray color space.
The Separation color space.
The DeviceN color space.
The Indexed color space.
The Pattern color space.
Called from to get color from lookup array.
Called from to get color from lookup array.
Called from to get color from lookup array.
Represents gradient stop.
Initializes a new instance of the class.
The color.
The offset. This value can be between 0 and 1.
Gets the color.
The color.
Gets the offset. The value can be between 0 and 1.
The offset.
Represents gradient stop collection.
Initializes a new instance of the class.
Gets the number of elements contained in the .
The number of elements contained in the .
Gets a value indicating whether the
is read-only.
true if the
is read-only; otherwise, false.
Gets or sets the at the specified index.
Indexes the of.
The item.
Inserts the specified index.
The index.
The item.
Removes the item
at the specified index.
The zero-based index of the item to remove.
is not a valid index in the .
The
is read-only.
Adds the specified item.
The item.
Removes all items from the .
The
is read-only.
Determines whether [contains] [the specified item].
The item.
Copies to.
The array.
Index of the array.
Removes the specified item.
The item.
Returns an enumerator that iterates through the collection.
A that can
be used to iterate through the collection.
Returns an enumerator that iterates through a collection.
An object that can be
used to iterate through the collection.
Called from to get color from lookup array.
Called from to get color from lookup array.
Called from to get color from lookup array.
Represents paint type.
Colored tiling.
Tiling without color.
Represents radial gradient.
Initializes a new instance of the class.
The start point.
The end point.
The start radius.
The end radius.
Gets or sets the start radius.
The start radius.
Gets or sets the end radius.
The end radius.
Equalses the specified other.
The other.
Represents base class for gradient color.
Initializes a new instance of the class.
Initializes a new instance of the class.
The start point.
The end point.
The position.
Gets or sets the start point.
The start point.
Gets or sets the end point.
The end point.
Specifies if the gradient should extends before the start point.
The extend before.
Specifies if the gradient should extends after the end point.
True to extend.
Gets or sets the background color.
The background color.
Gets the gradient stops.
The gradient stops.
Gets or sets the position.
The position.
Equalses the specified other.
The other.
Represents linear gradient.
Initializes a new instance of the class.
The start point.
The end point.
Equalses the specified other.
The other.
Called from to get color from lookup array.
Represents base class for Pattern color
Creates new instance of class.
Gets or sets the position.
The position.
Called from to get color from lookup array.
Represents simple color
Represents tiling base.
Gets or sets the type of the tiling.
The type of the tiling.
Gets or sets the vertical spacing.
The vertical spacing.
Gets or sets the bounding box.
The bounding box.
Gets or sets the horizontal spacing.
The horizontal spacing.
Gets the size.
The size.
Gets the content for the element.
The content.
Gets the parent.
The parent.
Gets if the element supports annotations.
True if the element supports annotations.
Gets the annotations collection.
The annotations collection.
Represents tiling type.
Allows small distortion.
Does not allow any distortion.
Allows additional distortion which permits faster tiling.
Represents tiling.
Initializes a new instance of the class.
Initializes a new instance of the class.
The bounding box.
Initializes a new instance of the class.
The position.
Initializes a new instance of the class.
The bounding box.
The position.
Gets the size.
The size.
Gets the content for the element.
The content.
Gets or sets the vertical spacing.
The vertical spacing.
Gets or sets the horizontal spacing.
The horizontal spacing.
Gets or sets the bounding box.
The bounding box.
Gets or sets the position.
The position.
Gets or sets the type of the tiling.
The type of the tiling.
Equalses the specified other.
The other.
Represents uncolored tiling.
Initializes a new instance of the class.
The tiling.
The color.
Gets the tiling.
The tiling.
Gets the color.
The color.
Gets the content.
The content.
Gets the size.
The size.
Gets or sets the bounding box.
The bounding box.
Gets or sets the position.
The position.
Gets or sets the horizontal spacing.
The horizontal spacing.
Gets or sets the vertical spacing.
The vertical spacing.
Gets or sets the type of the tiling.
The type of the tiling.
Equalses the specified other.
The other.
Represents color.
Equals the specified other.
The other.
Called from to get color from lookup array.
Called from to get color from lookup array.
Represents RGB color.
Initializes a new instance of the class.
Initializes a new instance of the class.
The red component.
The green component.
The blue component.
Initializes a new instance of the class.
The alpha component.
The red component.
The green component.
The blue component.
Gets or sets the alpha component.
The alpha component.
Gets or sets the red component.
The red component.
Gets or sets the green component.
The green component.
Gets or sets the blue component.
The blue component.
Serves as a hash function for a particular type.
A hash code for the current .
Determines whether the specified is equal
to the current .
The to compare with the current
.
true if the specified is equal to the
current ; otherwise, false.
Equalses the specified other.
The other.
Returns the text representation of the color.
Returns the text representation of the color.
Represents predefined Rgb colors.
Represents the Black color.
The black color.
Represents the Black color.
The black color.
Represents the Transparent color.
The transparent color.
Abstraction representing a fixed page.
Gets the rectangle defining the boundaries of the physical medium
on which the page is intended to be displayed or printed.
Gets the rectangle defining the boundaries of the visible region of the page.
When the page is displayed or printed, its contents are to be clipped (cropped) to this rectangle.
Gets the rotation.
An enumeration specifying how the document should be displayed when opened.
None page mode is specified.
Document bookmarks visible.
Initialize property with default value getter.
Default value getter allowing to get the default value on demand only.
Represents a positionalbe content element.
Initializes a new instance of the class.
Gets or sets the other of the element.
The position.
Represents base class for all content element.
Gets or sets the clipping.
The clipping.
Represent base class for all fixed document elements.
Gets the parent.
The parent.
Sets the parent.
The new parent.
Gets the fixed document element type.
The fixed document element type.
Represents all fixed document element types.
RadFixedDocument element type.
RadFixedPage element type.
Container element type.
Path element type.
Image element type.
TextSegment element type.
Form element type.
Destination element type.
Annotation element type.
BookmarkItem element type.
NamedDestination element type.
Marker element type.
Represents base interface for container element.
Gets the content for the element.
The content.
Represents the base interface for the root of the content elements tree.
Gets the size.
The size.
Gets if the element supports annotations.
True if the element supports annotations.
Gets the annotations collection.
The annotations collection.
Represents base interface for fixed document.
Represents base interface for fixed document element.
Gets the parent.
The parent.
Gets or sets the character spacing.
The character spacing.
Gets or sets the word spacing.
The word spacing.
Gets or sets the horizontal scaling.
The horizontal scaling.
Gets or sets the text rise.
The text rise.
Gets or sets the size of the font.
The size of the font.
Gets or sets the rendering mode.
The rendering mode.
Gets or sets the font.
The font.
Gets or sets the fill color.
The fill color.
Gets or sets the stroke color.
The stroke color.
Gets or sets the width of the stroke line.
The width of the stroke line.
Gets or sets the stroke line cap.
The stroke line cap.
Gets or sets the stroke line join.
The stroke line join.
Gets or sets the stroke dash array.
The stroke dash array.
Gets or sets the stroke dash offset.
The stroke dash offset.
Gets or sets the miter limit.
The miter limit.
Specifies that the object shall be left aligned to the horizontal alignment base.
Specifies that the object shall be centered with respect to the horizontal alignment base.
Specifies that the object shall be right aligned to the horizontal alignment base.
Specifies that the object shall be inside of the horizontal alignment base.
Specifies that the object shall be outside of the horizontal alignment base.
Specifies that the object shall be at the top of the vertical alignment base.
Specifies that the object shall be centered with respect to the vertical alignment base.
Specifies that the object shall be at the bottom of the vertical alignment base.
Specifies that the object shall be inside of the vertical alignment base.
Specifies that the object shall be outside of the vertical alignment base.
Specifies that text shall wrap around both sides of the object.
Specifies that text shall only wrap around the left side of the object.
Specifies that text shall only wrap around the right side of the object.
Specifies that text shall only wrap around the largest side of the object.
Specifies that the vertical positioning shall be relative to the line containing the anchor character.
Specifies that the vertical positioning shall be relative to the paragraph which contains the drawing anchor.
Specifies that the vertical positioning shall be relative to the edge of the page.
Specifies that the vertical positioning shall be relative to the page margins.
Specifies that the vertical positioning shall be relative to the top margin of the current page.
Specifies that the vertical positioning shall be relative to the bottom margin of the current page.
Specifies that the vertical positioning shall be relative to the outside margin of the current page.
Specifies that the vertical positioning shall be relative to the inside margin of the current page.
No wrapping should be used for the related element.
In effect, this setting shall place the object in front of or behind the text.
This element specifies that text shall wrap around a virtual rectangle bounding this shape.
This element specifies that text shall wrap around the top and bottom of this object, but not its left or right edges.
Specifies that the horizontal positioning shall be relative to the position of the anchor within its run content.
Relative to the extents of the column which contains its anchor.
Specifies that the horizontal positioning shall be relative to the edge of the page.
Specifies that the horizontal positioning shall be relative to the page margins.
Specifies that the horizontal positioning shall be relative to the left margin of the page.
Specifies that the horizontal positioning shall be relative to the right margin of the page.
Specifies that the horizontal positioning shall be relative to the inside margin of the current page (the left margin on odd pages, right on even pages).
Specifies that the horizontal positioning shall be relative to the outside margin of the current page (the right margin on odd pages, left on even pages).
Gets or sets the source of the image.
The source of the image.
Defines tab stop leader types.
No tab stop leader type.
Dot tab stop leader type.
Hyphen tab stop leader type.
Underscore tab stop leader type.
MiddleDot tab stop leader type.
Defines tab stop types.
Left aligned tab.
Center aligned tab.
Right aligned tab.
Decimal tab stop.
Specifies that the current tab is a bar tab.
Clears an inherited tab stop.
Initializes a new instance of the class.
Gets or sets the text.
The text.
Gets or sets the font family.
The font family.
Gets or sets the foreground color of the text.
The the foreground color.
Tries to set the current font.
The font family.
True if succeeded.
Represents a base class for the watermark settings classes.
Gets or sets the width of the watermark element.
The width.
Gets or sets the height of the watermark element.
The height.
Gets or sets the angle of the watermark element towards the horizontal direction.
The angle.
Describes how the baseline for a text-based element is positioned on the vertical axis, relative to the established baseline for text.
A baseline that is aligned at the actual baseline of the containing box.
A baseline that is aligned at the subscript position of the containing box.
A baseline that is aligned at the superscript position of the containing box.
Defines a set of properties which will be applied when an inline is created.
Initializes a new instance of the class.
Gets or sets the size of the font.
The size of the font.
Gets or sets the font.
The font.
Gets or sets the color of the foreground.
The color of the foreground.
Gets or sets the color of the highlight.
The color of the highlight.
Gets or sets the baseline alignment.
The baseline alignment.
Gets or sets the underline pattern.
The underline pattern.
Gets or sets the color of the underline.
The color of the underline.
Tries to set the current font.
The font family.
True if succeeded.
Tries to set the current font.
The font family.
The font style.
The font weight.
True if succeeded.
Copies the properties from.
From properties.
Represents a block element.
Gets if there is any pending content after the last measure.
Boolean value indicating whether there is any pending content after the last measure.
Gets the desired size.
The desired size.
Measures the block element with specified available size.
The available size.
The result size.
Draws the block element with the specified editor.
The editor.
The bounding rectangle.
Splits this instance.
The remaining block element.
Specifies the algorithm which shall be used to lay out the contents of this table.
Fixed width table layout algorithm.
AutoFit table layout algorithm.
Defines a set of properties which will be applied when a page is created.
Initializes a new instance of the class.
Gets or sets the size of the page.
The size of the page.
Gets or sets the page margins.
The page margins.
Gets or sets the page rotation.
The page rotation.
Copies the properties from.
From properties.
Provides options for different text horizontal alignments.
The left text horizontal alignment.
The right text horizontal alignment.
The center text horizontal alignment.
Defines a set of properties which will be applied when a paragraph is created.
Initializes a new instance of the class.
Gets or sets the horizontal alignment.
The horizontal alignment.
Gets or sets the spacing before.
The spacing before.
Gets or sets the spacing after.
The spacing after.
Gets or sets the line spacing.
The line spacing.
Gets or sets the value indicating how the spacing between lines is calculated.
The type line spacing rule.
Gets or sets the first line indent.
The first line indent.
Gets or sets the left indent.
The left indent.
Gets or sets the right indent.
The right indent.
Gets or sets the color of the background.
The color of the background.
Gets or sets the list id.
The list id.
Gets or sets the list level.
The list level.
Copies the properties from.
From properties.
Specifies the types of patterns which may be used to create an underline.
Represents empty decoration.
Single line underline.
Provides options for different text vertical alignments.
The top text vertical alignment.
The center text vertical alignment.
The bottom text vertical alignment.
Returns a that represents the current
.
A that represents the current .
Represents layout element.
Gets the element width.
The width.
Gets the element height.
The height.
Provides options for different text horizontal alignments.
The left text horizontal alignment.
The right text horizontal alignment.
The center text horizontal alignment.
Defines a collection of blocks.
Adds a new table to the collection.
Adds a new block to the collection.
Adds a new block with list bullet.
The list.
The list level.
The block.
Defines a base collection class.
Gets the collection items count.
The count.
Gets the element at the specified index.
The element.
Adds the specified item to the collection.
The item.
Returns an enumerator that iterates through the collection.
A that can
be used to iterate through the collection.
Returns an enumerator that iterates through a collection.
An object that can be
used to iterate through the collection.
Represents the collection of lists in RadFixedDocument.
Adds the list.
The list.
Adds the list by some list template.
Type of the list template.
The list
Represents the collection of list levels.
Adds a list level.
The list level.
Defines a collection of table cells.
Adds a new table cell to the collection.
Defines a collection of table rows.
Adds a new table row to the collection.
Specifies type of height.
Automatically determined height.
Minimum height.
Exact height.
Represents a border element.
Initializes a new instance of the class.
Initializes a new instance of the class.
The border style.
Initializes a new instance of the class.
The thickness.
The color.
Initializes a new instance of the class.
The thickness.
The border style.
The color.
Gets the border style.
The border style.
Gets the border thickness.
The thickness.
Gets the border color.
The color.
Represents the style of the border.
Represent border that will not be rendered.
Represent border with single line.
Represents base class for fixed content editing.
Gets the graphic state that is responsible for the graphics properties in the fixed content.
The current graphic state.
Gets the text state that is responsible for the text properties in the fixed content.
The text state.
Saves the graphic properties.
Restores the graphic properties.
Saves the text properties.
Restores the text properties.
Saves text and graphic properties.
Restores text and graphic properties.
Represents block of flowing content.
Initializes a new instance of the class.
Initializes a new instance of the class.
The other block.
Gets the desired size.
The desired size.
Gets the actual size of the block after it is drawn.
The actual size.
Gets if there is any pending content after the last measure.
Boolean value indicating whether there is any pending content after the last measure.
Gets or sets the bullet element.
The bullet element.
Gets or sets the indent after the bullet element.
The indent after the bullet element.
Gets or sets the spacing before.
The spacing before.
Gets or sets the spacing after.
The spacing after.
Gets or sets the line spacing.
The line spacing.
Gets or sets the value indicating how the spacing between lines is calculated.
The type line spacing rule.
Gets or sets the first line indent.
The first line indent.
Gets or sets the left indent.
The left indent.
Gets or sets the right indent.
The right indent.
Gets or sets the background color.
The background color.
Gets or sets the horizontal alignment.
The horizontal alignment.
Gets or sets the vertical alignment.
The vertical alignment.
Indicates if the block contains any elements.
True if the block does not contain any elements.
Gets the pending elements.
The pending elements.
Inserts the text.
The text.
Inserts the text using the given font family.
The font family.
The text.
Inserts the text using the given font family, font style and font weight.
The font family.
The font style.
The font weight.
The text.
Inserts a line break.
Inserts a form.
The form source.
Inserts a form.
The form source.
The width.
The height.
Inserts a form.
The form source.
The size.
Inserts an image.
The stream that contains image.
Inserts an image.
The stream that contains image.
The width.
The height.
Inserts an image.
The stream that contains image.
The size.
Inserts an image.
The image source.
Inserts an image.
The image source.
The size.
Inserts an image.
The image source.
The width.
The height.
Inserts a line.
The point1.
The point2.
Inserts a rectangle.
The rectangle.
Inserts an ellipse.
The center.
The radius X.
The radius Y.
Inserts a circle.
The center.
The radius.
Inserts a path.
The geometry.
Inserts hyperlink start.
The URI.
Inserts hyperlink start.
The destination.
Inserts hyperlink end.
Inserts the specified element.
The element.
Inserts the specified layout element.
The element.
Inserts the specified layout elements.
The elements.
Measures the block in the infinite size.
The block size.
Measures the block element with specified available size.
The available size.
The result size.
Draws the block element with the specified editor.
The editor.
The bounding rectangle.
Splits this instance.
The remaining block.
Splits this instance.
The remaining block element.
Sets the bullet from the corresponding list and list level.
The list.
The list level.
Clears the block children.
Returns a that represents the current
.
A that represents the current .
Represents a list bullet.
Gets the bullet numbering element.
The list levels indexer.
The bullet numbering element.
Represents class which indexes list levels in a List.
Gets the current index of the specified list level.
The list level.
The current index in the list level.
Represent list element.
Initializes a new instance of the class.
Initializes a new instance of the class.
Type of the list template.
Gets the id.
The id.
Gets the list levels.
The list levels.
Represent a list level.
Initializes a new instance of the class.
Initializes a new instance of the class.
The numbering style format.
Gets or sets the start index.
The start index.
Gets or sets the restart after level.
The restart after level.
Gets the bullet numbering character properties.
The bullet numbering character properties.
Gets the paragraph properties.
The paragraph properties.
Gets or sets the indent after the bullet.
The indent after the bullet.
Gets or sets the bullet numbering format.
The bullet numbering format.
Represents the paragraph properties of a list level.
Gets or sets the first line indent.
The first line indent.
Gets or sets the left indent.
The left indent.
Copies the text properties from other instance.
The other properties.
Describes the list templates.
Default bulleted list.
Default Numbered list.
Numbered parentheses list.
Numbered hierarchical list.
Represents the text bullet numbering format.
Initializes a new instance of the class.
The method for getting text bullet representation from number.
Gets the bullet numbering element.
The list levels indexer.
The bullet numbering element.
Represents base Properties class.
Saves the text properties.
Restores the text properties.
Copies the text properties from other instance.
The other properties.
Represents editor that will allow you to create RadFixedDocument
Initializes a new instance of the class.
The document.
Gets the document.
The document.
Gets the lists.
The lists.
Gets the section properties.
The section properties.
Gets the paragraph properties.
The paragraph properties.
Gets the character properties.
The character properties.
Inserts new paragraph.
Inserts the text.
The text.
Inserts the text using the given font family.
The font family.
The text.
Inserts the text using the given font family, font style and font weight.
The font family.
The font style.
The font weight.
The text.
Inserts the text and moves to the next line.
The text.
Inserts a line break.
Inserts the image inline.
The image source.
The size.
Inserts the image inline.
The image source.
Inserts the form inline.
The form source.
Inserts the form inline.
The form source.
The form size.
Inserts new section.
Inserts new page.
Inserts the table.
The table.
Inserts the block element.
The block.
Finishes the pages and closes the document.
Specifies whether the measuring algorithm should measure border spacing between borders center lines or between borders outlines.
Specifies the case when the border spacing is measured from the borders center lines.
Specifies the case when the border spacing is measured from the borders outlines.
Represents a cell in the table.
Gets or sets the vertical content alignment, should be used when more that one block is added to the cell.
Gets or sets the row span.
The row span.
Gets or sets the column span.
The column span.
Gets or sets the preferred width.
The preferred width.
Gets the blocks for the cell.
The blocks.
Gets or sets the padding.
The padding.
Gets the borders.
The borders.
Gets or sets the background.
The background.
Gets the size.
The size.
Gets the desired size.
The value of the desired size.
Measures this instance in infinity.
The result size.
Measures the cell in the specified size.
The available.
The result size.
Returns a that represents the current
.
A that represents the current .
Represents the borders of a table cell.
Initializes a new instance of the class.
Initializes a new instance of the class.
All.
Initializes a new instance of the class.
The left.
The top.
The right.
The bottom.
Initializes a new instance of the class.
The left.
The top.
The right.
The bottom.
The diagonal up.
The diagonal down.
Gets the left.
The left.
Gets the top.
The top.
Gets the right.
The right.
Gets the bottom.
The bottom.
Gets or sets the diagonal up.
The diagonal up.
Gets or sets the diagonal down.
The diagonal down.
Represents the properties of a cell.
Initializes a new instance of the class.
Gets the borders.
The borders.
Gets or sets the padding.
The padding.
Gets or sets the background.
The background.
Represents a row in a table.
Gets the cells for the row.
The cells.
Returns a that represents the current
.
A that represents the current .
Represent a table.
Initializes a new instance of the class.
Initializes a new instance of the class.
The index of the first row.
Initializes a new instance of the class.
The other.
The index of the first row.
Gets or sets the margin.
The margin.
Gets or sets the layout type of the table.
The layout type.
Gets or sets the alignment of the entire table.
Gets the borders.
The borders.
Gets or sets the background of the table.
The background of the table.
Gets the default cell properties.
The default cell properties.
Gets the desired size.
The desired size.
Gets or sets the border spacing.
The border spacing.
Gets or sets borders collapse state.
Value indicating the border collapse state.
Gets the rows.
The rows.
Gets if there is any pending content after the last measure.
Boolean value indicating whether there is any pending content after the last measure.
Measures this instance in infinity.
The measured size.
Measures the block element with specified available size.
The available size.
The result size.
Draws the block element with the specified editor.
The editor.
The bounding rect.
Splits this instance.
The remaining block element.
Splits this instance.
The remaining block element.
Arranges the block element with the specified editor.
The editor.
The bounding rectangle.
Represent the borders for a table.
Initializes a new instance of the class.
Initializes a new instance of the class.
All.
Initializes a new instance of the class.
The left.
The top.
The right.
The bottom.
Gets the left.
The left.
Gets the top.
The top.
Gets the right.
The right.
Gets the bottom.
The bottom.
Represents graphic state.
Initializes a new instance of the class.
Gets or sets whether the drawn geometry is filled.
Value indicating whether the geometry is filled.
Gets or sets whether the drawn geometry is stroked.
Value indicating whether the geometry is stroked.
Gets or sets the fill color.
The color of the fill.
Gets or sets the stroke color.
The color of the stroke.
Gets or sets the stroke thickness.
The stroke thickness.
Gets or sets the miter limit.
The miter limit.
Gets or sets the stroke dash offset.
The stroke dash offset.
Gets or sets the stroke dash array.
The stroke dash array.
Gets or sets the stroke line join.
The stroke line join.
Gets or sets the stroke line cap.
The stroke line cap.
Copies the graphic properties from fromProperties instance.
The graphic properties.
Represents content editor that will allow you to easily create fixed content.
Initializes a new instance of the class.
The root.
Initializes a new instance of the class.
The root.
The initial position.
Gets the root element for the fixed content.
The root element.
Gets or sets the current position.
The position.
Gets the current clipping object.
The clipping.
Pushes the clipping.
The clip.
Pushes the clipping.
The clip.
Pops the clipping.
Draws the text using current text state at the current position.
The text.
Draws the text.
The text.
The size.
Draws the image.
The stream.
Draws the image.
The stream.
The width.
The height.
Draws the image.
The stream.
The size.
Draws the image.
The source.
Draws the image.
The source.
The size.
Draws the image.
The source.
The width.
The height.
Draws the form.
The source.
Draws a form.
The form source.
The width.
The height.
Draws a form.
The form source.
The size.
Creates new representing a and draws the widget with a specified size.
This method will add widget only in cases when the Root supports annotations.
The widget type.
The form field the should be represented by the widget.
The size.
Creates new representing a and draws the widget with a specified size.
This method will add widget only in cases when the Root supports annotations.
The form field the should be represented by the widget.
The option that should be represented by the widget.
The size.
Draws a line.
The point1.
The point2.
Draws a rectangle.
The rectangle.
Draws a ellipse.
The center.
The radius X.
The radius Y.
Draws a circle.
The center.
The radius.
Draws a path with given geometry.
The geometry.
Draws the table.
The table.
Draws the table with some fit table width.
The table.
The width to fit the table in.
Draws the table.
The table.
The size to fit the table in. Only the rows that fit in the given hight are drawn. The rest of the table can be taken with the table.Split() method.
Draws the block.
The block.
Draws the block in given size.
The block.
The size.
Draws the specified element.
The element.
Saves the position.
Restores the position.
Represents the text state properties.
Initializes a new instance of the class.
Gets or sets the text decorations.
The text decorations.
Gets or sets the color of the underline.
The color of the underline.
Gets or sets the color of the highlight.
The color of the highlight.
Gets or sets the character spacing.
The character spacing.
Gets or sets the word spacing.
The word spacing.
Gets or sets the horizontal scaling.
The horizontal scaling.
Gets or sets the size of the font.
The size of the font.
Gets or sets the rendering mode.
The rendering mode.
Gets or sets the baseline alignment.
The baseline alignment.
Gets or sets the current font.
The font.
Tries to set the current font.
The font family.
True if succeeded.
Tries to set the current font.
The font family.
The font style.
The font weight.
True if succeeded.
Copies the text properties from other instance.
The text properties.
Represents the fonts repository. It can be used to create new font object.
Represents the fonts repository. It can be used to create new font object.
Tries to create a new font object based on the given font properties.
The font family.
The font style.
The font weight.
The font.
True if the font is created successfully.
Tries to create a new font object based on the given font properties.
The font family.
The font.
True if the font is created successfully.
Gets the symbol font object.
Gets the zapfdingbats font object.
Gets the times roman font object.
Gets the times bold font object.
Gets the times bold italic font object.
Gets the times italic font object.
Gets the helvetica font object.
The helvetica.
Gets the helvetica bold font object.
The helvetica.
Gets the helvetica oblique font object.
The helvetica.
Gets the helvetica bold oblique font object.
The helvetica.
Gets the courier font object.
Gets the courier bold font object.
Gets the courier oblique font object.
Gets the courier bold oblique font object.
Registers font.
The font family.
The font style.
The font weight.
The font data.
Clears the registered fonts.
Represents the base class for the font object.
Gets the name of the font as it is in the document.
The name.
Gets the name of the original font family that is used with this font.
The original name.
The or a fallback used when rendering the glyph outlines.
Represents base class for action object.
Represents go to action.
Initializes a new instance of the class.
Initializes a new instance of the class.
The destination for the action.
Initializes a new instance of the class.
The named destination for the action.
Gets or sets the destination for the action.
The destination.
Gets or sets the named destination for the action.
The named destination.
Represents reset form action.
Represents submit form action.
Represents Uri action.
Initializes a new instance of the class.
Initializes a new instance of the class.
The URI.
Gets or sets the URI for the action.
The URI.
Gets or sets the value that indicates if the mouse coordinates should be included in the Uri.
If the mouse coordinates should be tracked.
Represents image format.
Represents Jpeg image format.
Represents IPosition.
Gets the matrix.
The matrix.
Appends the specified scale vector.
The scale X.
The scale Y.
Applies a scale by the specified amount about the specified point.
The scale X.
The scale Y.
The center X.
The center Y.
Applies a rotation of the specified angle about the origin.
The angle.
Rotates this matrix about the specified point.
The angle.
The center X.
The center Y.
Appends a translation of the specified offsets.
The offset X.
The offset Y.
Clears this instance.
Clones this instance.
Gets or sets the current position.
The position.
Saves the position.
Restores the position.
Represents simple position.
Initializes a new instance of the class.
Gets the default.
The default.
Gets or sets the matrix.
The matrix.
Appends the specified scale vector.
The scale X.
The scale Y.
Applies a scale by the specified amount about the specified point.
The scale X.
The scale Y.
The center X.
The center Y.
Applies a rotation of the specified angle about the origin.
The angle.
Rotates this matrix about the specified point.
The angle.
The center X.
The center Y.
Appends a translation of the specified offsets.
The offset X.
The offset Y.
Clears this instance.
Clones this instance.
Represents position.
Initializes a new instance of the class.
Initializes a new instance of the class.
The other.
Initializes a new instance of the class.
The matrix.
Gets the default.
The default.
Gets or sets the matrix.
The matrix.
Appends the specified scale vector.
The scale X.
The scale Y.
Applies a scale by the specified amount about the specified point.
The scale X.
The scale Y.
The center X.
The center Y.
Applies a rotation of the specified angle about the origin.
The angle.
Rotates this matrix about the specified point.
The angle.
The center X.
The center Y.
Appends a translation of the specified offsets.
The offset X.
The offset Y.
Clears this instance.
Clones this instance.
Represents rotation enumeration.
Represents rotation to 0 degrees.
Represents rotation to 90 degrees.
Represents rotation to 180 degrees.
Represents rotation to 270 degrees.
Defines a class used for reading a document source in a byte array format.
Reads the specified output buffer.
The output buffer.
The output buffer position.
The stream offset.
The length.
The total number of bytes read into the buffer.
Defines a class used for reading a document source in a format.
Initializes a new instance of the class.
The stream.
Reads a reads a sequence of bytes from the current stream and advances the position within the stream by the number of bytes read.
An array of bytes. When this method returns, the buffer contains the specified
byte array with the values between offset and (streamOffset + length - 1) replaced by
the bytes read from the current source.
The zero-based byte offset in outputBuffer at which to begin storing the data read from the current stream.
The zero-based byte offset in buffer at which to begin read from the current stream.
The maximum number of bytes to be read from the current stream.
The total number of bytes read into the buffer.
Defines a hash algorithm factory.
Creates an instance of a predefined hash algorithm class from an Oid.
The algorithm oid.
Registers a hash algorithm.
The oid.
The hash algorithm.
Determines whether the contains a definition of a hash algorithm for the specificied Oid.
The oid.
Unregisters a hash algorithm.
The oid.
Defines a predefined Oids used in the digital signature.
Gets the main algorithm oid.
The oid.
Defines a class used for handling the validation of digital signature in a PKCS#1 cryptographic message syntax.
Initializes a new instance of the class.
When overridden in a derived class, validates the digital signature.
An instance of the class describing the result from the validation.
Defines a class used for handling the validation of digital signature in a PKCS#7 cryptographic message syntax.
Initializes a new instance of the class.
When overridden in a derived class, validates the digital signature.
An instance of the class describing the result from the validation.
Defines a class used for handling the validation of digital signature in a PKCS#7 cryptographic message syntax with detached signature.
Initializes a new instance of the class.
When overridden in a derived class, validates the digital signature.
An instance of the class describing the result from the validation.
Defines a class used for signing and verifying a digital signature.
Initializes a new instance of the class.
The certificate used for signing the signature.
Initializes a new instance of the class.
Gets or sets the signature data properties.
The signature data properties.
Gets a value indicating whether the signature supports validation. Only imported signatures supports validation.
true if the signature is imported; otherwise, false.
Tries to validate the signature. Return true on success; otherwise false.
When this method returns, contains the signature validation result.
Return true on success; otherwise false.
Tries to validate the signature. Return true on success; otherwise false.
The validation properties.
When this method returns, contains the signature validation result.
Return true on success; otherwise false.
Validates this digital signature instance.
An instance of the class.
Validates this digital signature instance with specified validation properties.
The validation properties.
Defines a base class with the most basic need of functionality used for digital signature validaiton.
Initializes a new instance of the class.
Gets the signature data properties.
The signature data properties.
Gets the signature validation properties.
The signature validation properties.
When overridden in a derived class, validates the digital signature.
An instance of the class describing the result from the validation.
Validates a digital signature.
An instance of the class describing the result from the validation.
Computes a hash.
The hash algorithm oid.
Computes a hash.
The hash algorithm.
Gets the byte array over which the hash should be computed.
Gets a collection from a .
Validates the hash.
The original hash.
The hash algorithm oid used for computing a comparing hash.
Validates the hash.
The original hash.
The computed hash.
Validates the certificates and builds the corresponding data into the validation result.
The validation result builder.
The certificate collection.
Builds the hash algorithm into the the validation result argument.
The validation result builder.
The digest algorithm.
Defines a set of data properties representing a digital signature.
Initializes a new instance of the class.
Gets the name of the signature form field associated with this properties.
The name of the signature form field.
Gets the name of the preferred signature handler to use when validating this signature.
The filter.
Gets a name that describes the encoding of the signature value and key information in the signature dictionary.
The sub filter.
Gets the signature value.
The contents.
Gets a collection of X.509 certificate chain used when signing and verifying signatures.
The certificates.
Gets an array of pairs of integers (starting byte offset, length in bytes) describing the exact byte range for the digest calculation.
The byte range.
Gets an array of three integers specifying changes to the document that have been made between the previous signature and this signature.
The changes.
Gets the name of the person or authority signing the document.
The name.
Gets the CPU host name or physical location of the signing.
The location.
Gets the reason for the signing.
The reason.
Gets contact information enabling a recipient to contact the signer to verify the signature.
The contact info.
Gets the version of the signature handler used to create the signature.
The signature handler version.
Gets the version of the signature dictionary format.
The signature dictionary version.
Gets or sets the time of signing.
The time of signing.
Defines a class with predefined constants for sub filter strings.
Gets the name of the x509 rsa sha1 sub filter.
Sub filter.
Gets the name of the pkcs7 sub filter.
Sub filter.
Gets the name of the pkcs7 detached sub filter.
Sub filter.
Defines a digital signature validation handlers manager.
Registers the signature validation handler.
The sub filter.
The instantiate func.
Unregisters the signature validation handler.
The sub filter.
Determines whether the contains a definition of a signature handler for the specified sub filter.
The sub filter.
true if is found in the ; otherwise, false.
Instantiates a signature validation handler.
The sub filter.
Defines a set of properties used to validate the certificates of the digital signature.
Initializes a new instance of the class.
Gets or sets the chain used to validate the certificate that signed the digital signature.
The chain.
Gets or sets the chain status flags which describes the used signature certificate as invalid.
The chain status flags.
Defines a set of properties describing the result from the digital signatire validation.
Initializes a new instance of the class.
Gets or sets the name of the signature form field associated with this validation result.
The name of the signature form field.
Gets or sets a value indicating whether the document was modified after it was signed.
true if the document was modified; otherwise, false.
Gets or sets a value indicating whether the used certificate is valid. For additional details when the certificate is invalid use the CertificatesChainElements property.
true if the used certificate is valid; otherwise, false.
Gets or sets the certificates used to sign the document.
The certificates used to sign the document.
Gets or sets a collection of chain elements describing the errors from the certificate validation.
A collection of chain elements.
Gets or sets the signer information. The name of the person or authority signing the document.
The signer information.
Gets or sets the hash algorithm Oid used for calculating the message digest.
The hash algorithm Oid.
Defines a class used to construct an instance of the class.
Initializes a new instance of the class.
Builds the name of the signature form field.
Name of the field.
Builds the is document modified.
if set to true [is document modified].
Builds the is certificate valid.
if set to true [is certificate valid].
Builds the certificates.
The certificates.
Builds the certificates chain elements.
The certificates chain elements.
Builds the signer information.
The signer information.
Builds the hash algorithm.
The hash algorithm.
Gets the signature validation result.
An instance of the class.
Defines a class used for determining what part of a should be read.
Initializes a new instance of the class.
The offset.
The length.
Gets or sets the offset.
The offset.
Gets or sets the length.
The length.
Defines a class used for composing a byte range from a specified multiple instances of a .
Gets the calculated length from all source parts.
The length.
Composes the byte range.
Defines an interface used for reading a document source.
Reads the specified output buffer.
The output buffer.
The output buffer position.
The stream offset.
The length.
The total number of bytes read into the buffer.
Represents data for unhandled exception event related to .
Initializes a new instance of the class.
The document exception.
Gets the raised exception.
The document exception.
Gets or sets whether the exception event has been handled.
true if the exception was handled; otherwise, false.
Extensions for creating color objects.
Converts the Color to ColorBase that is usend in RadPdfProcessing.
The color.
Extensions for creating image source from BitmapSource.
Creates ImageSource form the BitmapSource
The bitmap source.
The ImageSource
Creates ImageSource form the BitmapSource
The bitmap source.
The image quality.
The ImageSource
Represents an interactive form instance specific for each instance.
Represents the form fields
Gets or sets boolean value indicating whether the Widget appearances should be recalculated before visualizing them in a PDF viewer.
If true then the PDF viewers should dynamically reconstruct all widgets content based on widget text properties and appearance characteristics.
Gets or sets a set of flags specifying various document-level characteristics related to signature fields.
Removes all fields and leaves only their values. After this is done the fields cannot be edited.
Flattens a single form field.
The Field to be flattened.
Represents a checkbox field.
Initializes a new instance of class.
The field name.
Gets the field type.
Gets or sets a boolean value indicating whether the field is checked or not.
Gets or sets a boolean value indicating whether the check box should be checked when the form is reset to its default values.
Gets or sets the field export values.
Represents a choice field.
Initializes a new instance of class.
The field name.
Gets the collection of options to choose.
Gets or sets boolean value indicating whether to submit the newly selected value on selection change.
Represents an option in a choice field.
Initializes a new instance of class.
Gets or sets the option value.
Gets or set the value that will be displayed in the UI.
If this property is null then the Value property will be displayed in the UI instead.
Represents a collection of instances.
Represents a combobox field.
Initializes a new instance of class.
The field name.
Gets the field type.
Gets or sets boolean value indicating whether combo box should have an additional text box for choice input.
Gets or sets boolean value indicating whether the inputted text should be spell checked.
Gets or set the field value.
This value may differ from all choice values when it is inputed from the editable text box.
Gets or set the default value used when the form is reset to its default values.
Represents a text field which restricts its text input to equally spaced character positions.
Initializes a new instance of class.
The field name.
Gets the field type.
Gets or sets the max length of the input characters.
Represents a field option.
Gets or sets the option value.
Represents a collection of field options.
Gets or sets the element at the specified index.
The index.
Gets the number of elements contained in the collection.
The number of elements contained in the collection.
Adds option.
The option.
Removes option at specified index.
The option index.
Removes all elements from the collection.
Iterates the options in the collection.
The options.
Iterates the options in the collection.
The options.
Initializes a new instance of the class.
The old field name.
The new field name.
Gets the old name of the field.
The old name.
Gets the new name of the field.
The new name.
Represents the widgets collection of a .
Adds option in the collection.
The option.
Represents a Radio button option.
Initializes a new instance of class.
The option value.
Gets or sets the value.
Represents a collection of options.
Represents the possible signature flags.
The default value.
If set, the document contains at least one signature field.
If set, the document contains signatures that may be invalidated if the file is saved (written)
in a way that alters its previous contents, as opposed to an incremental update.
Represents the text properties used by PDF viewers when generating the widgets dynamic appearance.
Initializes a new instance of the class.
Initializes a new instance of the class.
The other properties.
Gets or sets the horizontal alignment of the text.
Gets or sets the character spacing.
The character spacing.
Gets or sets the word spacing.
The word spacing.
Gets or sets the horizontal scaling.
The horizontal scaling.
Gets or sets the font.
The font.
Gets or sets the size of the font.
The size of the font.
Gets or sets the text rise.
The text rise.
Gets or sets the rendering mode.
The rendering mode.
Gets or sets the fill color.
The fill color.
Gets or sets the stroke color.
The stroke color.
Gets or sets the width of the stroke line.
The width of the stroke line.
Gets or sets the stroke line cap.
The stroke line cap.
Gets or sets the stroke line join.
The stroke line join.
Gets or sets the stroke dash array.
The stroke dash array.
Gets or sets the stroke dash offset.
The stroke dash offset.
Gets or sets the miter limit.
The miter limit.
Represents a form field.
Initializes a new instance of .
The field name.
Gets the field type.
Gets or sets the name.
The name.
Name cannot contain .(period).
Name cannot be empty.
Represents the text properties used by the PDF viewer in order to build the fields appearance dynamically.
Gets or sets an alternate field name to be used in place of the actual field name wherever the field must be identified in the user interface.
For instance this may be used for error or status messages referring to the field.
This text is also useful when extracting the document’s contents in support of accessibility to users with disabilities or for other purposes.
Gets or sets the mapping name to be used when exporting interactive form field data from the document.
Gets or sets boolean value indicating whether the field is readonly.
Gets or sets boolean value indicating whether the field must have value at the time it is exported by submitting the form.
Gets or sets boolean value indicating whether the field should be skipped when submitting the form.
Gets the widgets.
Represents FormField providing a collection of type specific widgets.
The widget type.
Gets the widgets.
Represents a collection of document fields.
Gets FormField instance by field name.
The field name.
Creates new and adds it to the collection.
The field name.
The result field.
Creates new and adds it to the collection.
The field name.
The result field.
Creates new and adds it to the collection.
The field name.
The result field.
Creates new and adds it to the collection.
The field name.
The result field.
Creates new and adds it to the collection.
The field name.
The result field.
Creates new and adds it to the collection.
The field name.
The result field.
Creates new and adds it to the collection.
The field name.
The result field.
Creates new and adds it to the collection.
The field name.
The result field.
Adds field to the collection.
The field to be added.
Removes field from the collection.
The field to be removed.
Renames field with a specified name.
The old name of the field.
The new name.
Name cannot be empty.
or
Could not find a field with the specified name. - oldName
or
The specified name is already used by another field. - newName
or
Name cannot contain .(period). - newName
Determines whether this instance contains the object.
Name of the field.
true if a field with the specified name exists; otherwise, false.
Gets the count of the fields in the collection.
Gets the enumerator for the elements in the collection.
The enumerator.
Gets the enumerator for the elements in the collection.
Represents the type of a .
Represents the PushButton button type, which is used by simple button that may be clicked with the mouse in a PDF viewer.
Represents the CheckBox button type, which is used by buttons that may be checked or unchecked.
Represents the RadioButton button type, which is usually used by a group of buttons only one of which may be selected at a time.
Represents the Combs type which restricts the text input to equally spaced character positions.
Representes the TextBox type which provides a box for the text input.
Represents the ComboBox choice type.
Represents the ListBox choice type.
Represents the Signature form field type.
Represents a listbox field.
Initializes a new instance of class.
The field name.
Gets the field type.
Gets or sets boolean value indicating whether to allow multiple items selection.
Gets or sets an array of selected values.
Gets or set the default selected values used when the form is reset to its default values.
Gets or sets the index of the first item to be visible when displaying the ListBox.
Represents a button that may be pushed.
Initializes a new instance of class.
The field name.
Gets the field type.
Represents a field which usually provides group with several radio button options.
Initializes a new instance of class.
The field name.
Gets the field type.
Gets the collection of options to choose from.
Gets the collection of widgets which are representing the radio button options.
Gets or sets the field value.
Gets or sets the default field value used when the form is reset to its default values.
Gets or sets boolean value indicating whether to allow deselecting all radio buttons.
Gets or sets boolean value indicating whether to turn on and off in unison radio buttons that have the same value.
Represents a signature field.
Initializes a new instance of class.
The field name.
Gets the signature.
The signature.
Gets the field type.
Represents a textbox field.
Initializes a new instance of class.
The field name.
Gets the field type.
Gets or sets boolean value indicating whether multiline text input is allowed.
Gets or sets boolean value indicating whether the text input is a password.
Gets or sets boolean value indicating whether the field represents pathname of a file whose contents are to be submitted as the value of the field.
Gets or sets boolean value indicating whether the inputted text should be spell checked.
Gets or sets boolean value indicating whether to allow scrolling for bigger text content.
If the scrolling is not allowed then the maximum text input is restricted to the Widget annotation rectangle.
Gets or sets the max length of the input characters. If null then the text input is not restricted from these value.
Represents a text field.
Initializes a new instance of class.
The field name.
Gets or sets the field value.
Gets or sets the field default value used when the form is reset to its default values.
Represents a collection of widgets.
Creates and adds a Widget in the collection.
The created widget.
Represents a collection of widgets from specific type.
The widget type.
Gets the count of the widgets in the collection.
Removes widget from the collection
The widget to remove.
Iterates the options in the collection.
The options.
Iterates the options in the collection.
The options.
Represents line cap types.
Flat line cap.
Round line cap.
Square line cap.
Represents line join types.
Miter line join.
Round line join.
Bevel line join.
Represents path.
Initializes a new instance of the class.
Gets or sets the geometry.
The geometry.
Gets or sets the fill color.
The fill color.
Gets or sets the stroke color.
The stroke color.
Gets or sets if the path figure is filled.
If the path figure is filled.
Gets or sets the is stroked.
The is stroked.
Gets or sets the width of the stroke line.
The width of the stroke line.
Gets or sets the stroke line cap.
The stroke line cap.
Gets or sets the stroke line join.
The stroke line join.
Gets or sets the stroke dash array.
The stroke dash array.
Gets or sets the stroke dash offset.
The stroke dash offset.
Gets or sets the miter limit.
The miter limit.
Represents rectangle geometry.
Initializes a new instance of the class.
Initializes a new instance of the class.
The rect.
Gets or sets the rect.
The rect.
Gets the geometry bounds.
Represents the pages collection.
Gets the pages count.
The pages count.
Returns an enumerator that iterates through the collection.
A that can
be used to iterate through the collection.
Returns an enumerator that iterates through a collection.
An object that can be
used to iterate through the collection.
Hosts a fixed-format document.
Initializes a new instance of the class.
Occurs when exception is thrown.
Gets the collection of the document pages.
The pages collection.
Gets all destinations in the document.
The destinations.
Gets all annotations in the document.
The annotations.
Represents a fixed page.
Gets a value indicating if the page has content.
A value indicating if the page has content.
Gets the document that contains the page.
The document.
Provides additional data for the event.
Initializes a new instance of the class.
The current name of the field.
The new name of the field.
The names that are currently used in the .
Gets the current field name.
The name.
Gets or sets the new field name.
The new name.
Gets the names that are already used for fields in the same .
The used names.
Represents a PDF bookmark (outline) item.
Initializes a new instance of the class.
Initializes a new instance of the class.
The text to be displayed for this bookmark item.
The destination to be displayed when this bookmark item is activated.
Thrown when the title or destination is null.
Initializes a new instance of the class.
The text to be displayed for this bookmark item.
The action to be performed when this bookmark item is activated.
Thrown when the title or action is null.
Initializes a new instance of the class.
The text to be displayed for this bookmark item.
The named destination to be displayed when this bookmark item is activated.
Thrown when the title or namedDestination is null.
Initializes a new instance of the class.
The text to be displayed for this bookmark item.
Thrown when the title is null.
Gets or sets whether the bookmark item is open or closed by default. For example, when
an item is open by default, its children are initially visible when document is loaded.
Gets the destination to be displayed when this bookmark item is activated.
Gets the named destination to be displayed when this bookmark item is activated.
Gets the action to be performed when this bookmark item is activated.
Gets or sets the style characteristics for displaying the bookmark item's text.
Gets or sets the color of the bookmark item's text in RGB color space.
Thrown when the value is null.
Gets or sets the text to be displayed for this bookmark item.
Thrown when the value is null.
Gets the immediate child elements for this bookmark item.
Bookmark item text style characteristics.
If set, none styling is applied for the item.
If set, displays the item in italic.
If set, displays the item in bold.
Represents a named destination. Named destinations are destinations in the document which can be referred to indirectly by means of a name.
Gets or sets the destination name.
Gets or sets the Destination of the named destination.
Gets or sets the GoToAction of the named destination.
Represents bounding rectangle fit.
Gets or sets the type of the destination.
The type of the destination.
Represents bounding rectangle horizontal fit.
Gets or sets the type of the destination.
The type of the destination.
Gets or sets the top.
The top.
Represents bounding rectangle vertical fit.
Gets or sets the type of the destination.
The type of the destination.
Gets or sets the left.
The left.
Represents page horizontal fit.
Gets or sets the type of the destination.
The type of the destination.
Gets or sets the top.
The top.
Represents page fit.
Represents location.
Gets or sets the type of the destination.
The type of the destination.
Gets or sets the left.
The left.
Gets or sets the top.
The top.
Gets or sets the zoom.
The zoom.
Represents rectangle fit.
Gets or sets the type of the destination.
The type of the destination.
Gets or sets the left.
The left.
Gets or sets the bottom.
The bottom.
Gets or sets the top.
The top.
Gets or sets the right.
The right.
Represents vertical page fit.
Gets or sets the type of the destination.
The type of the destination.
Gets or sets the left.
The left.
Represents destination.
Gets or sets the page.
The page.
Gets or sets the type of the destination.
The type of the destination.
Represents enum with all destination types.
Represents location destination type.
Represents fit to page destination type.
Represents fit horizontal to page destination type.
Represents fit vertical to page destination type.
Represents fit to rectangle destination type.
Represents fit to bounding rectangle destination type.
Represents fit horizontal to bounding rectangle destination type.
Represents fit vertical to bounding rectangle destination type.
Represents destination container interface.
Collection of all top-level instances for the current level of the bookmarks hierarchy.
Initializes a new instance of the class.
The parent instance for this bookmarks collection.
This parent is applied on each instance added
to the collection.
Gets the parent for the current instance.
Iterates the bookmarks hierarchy in Depth First Search manner.
The bookmarks are iterated in preorder traversal - root, left child, right child.
Iterates the bookmarks hierarchy in Breadth First Search manner.
Verifies the validity of the before it is inserted in the collection.
An item is assumed to be valid when has not already been added in this or other instance,
i.e. it's parent is null.
The item to add.
Thrown when the item is null.
Thrown when the item has already been added in this or other instance.
Represents annotations collection.
Initializes a new instance of the class.
The parent.
Adds the link.
The destination.
Adds the link.
The action.
Adds the link.
The named destination.
Represents content elements collection.
Initializes a new instance of the class.
The parent.
Creates new Path and add it to the collection.
The Path.
Creates new TextFragment and add it to the collection.
The TextFragment.
Creates new TextFragment and add it to the collection.
The text in the TextFragment.
Adds the image.
Adds the image.
The source.
Adds the form.
Adds the form.
The source.
Represents collection of named destinations.
Initializes a new instance of the class.
The parent.
Gets the named destination associated with the specified name.
The name of the named destination to get.
The named destination associated with the specified name.
If the specified name is not found.
Gets a collection containing the names in the collection.
Gets the number of named destinations contained in the collection.
Adds a named destination with the specified name and value to the collection and returns it.
The name of the named destination.
The Destination for the named destination.
The created named destination.
name is null.
An element with the same name already exists in the collection.
Adds a named destination with the specified name and value to the collection and returns it.
The name of the named destination.
The GoToAction for the named destination.
The created named destination.
name is null.
An element with the same name already exists in the collection.
Removes all named destination from the collection.
Determines whether the collection contains the specified name.
The name to locate in the collection.
true if the collection contains an element with the specified name; otherwise, false
name is null
Returns an enumerator that iterates through the collection.
A numerator for the collection
Removes the named destination with the specified name from the collection.
The name of the named destination to remove
true if the named destination is successfully found and removed; otherwise, false. This
method returns false if name is not found in the collection.
name is null.
Gets the named destiation associated with the specified name.
The name of the destination to get.
When this method returns, contains the destination associated with the specified name
if the name is found; otherwise, null. This parameter is passed uninitialized.
true if the collection contains a named destination with
the specified name; otherwise, false.
name is null
Renames a named destination in the collection.
The old name of the destination.
The new name of the destination.
Represents base DocumentElementCollection.
The type of the T.
The type of the T owner.
Initializes a new instance of the DocumentElementCollection /> class.
The parent.
Sets the parent of the document element.
The document element.
The parent which should be set to the document element.
Verifies the validity of the document element before it is inserted in the collection.
The item.
Represents fixed pages collection.
Creates new instance of RadFixedPage and add it to the collection.
The new RadFixedPage instance.
Represents form element which allows to reuse PDF content by using .
Gets or sets the form source.
The form source.
Gets or sets the width.
The width.
Gets or sets the height.
The height.
Represents image element.
Initializes a new instance of the class.
Gets or sets the image source.
The image source.
Gets or sets the width.
The width.
Gets or sets the height.
The height.
Creates from the image element.
The instance.
Represent RadFixedDocument info class
Gets or sets the author of the document.
The author.
Gets or sets the title of the document.
The title.
Gets or sets the description of the document.
The description.
Represents encoded image data.
Gets the data.
The data.
Gets the alpha channel data. This data should be encoded with same bitsPerComponent, width, height and filters as the image data.
The colorspace of the alpha channel is not related to the colorspace of the image data and the alpha data colorspace is always DeviceGray.
Gets the bits per component.
The bits per component.
Gets the width.
The width.
Gets the height.
The height.
Gets the color space.
The color space.
Gets the filters.
The filters.
Initializes a new instance of the class.
The data.
The bits per component.
The width.
The height.
The color space.
The filters.
Initializes a new instance of the class.
The data.
The alpha channel data. This data should be encoded with same bitsPerComponent, width, height and filters as the image data.
The colorspace of the alpha channel is not related to the colorspace of the image data and the alpha data colorspace is always DeviceGray.
The bits per component.
The width.
The height.
The color space.
The filters.
This class handles the logic for both ImageMask and ColorKeyMask depending on the constructor.
Represents a PDF form source. This class owns a and
allows reuse of PDF content by using the same on different class instances.
Creates new instance of FormSource.
Gets the content.
The content.
Gets or sets the size of the .
Indicates whether the IContentRootElement supports annotations.
Gets the annotation collection of the .
Gets the parent of the .
Gets or sets the matrix which maps the form space into user space.
ImageSource represents a single, constant set of pixels at a certain size.
Initializes a new instance of the class.
The stream.
Initializes a new instance of the class.
The stream.
The image quality.
Initializes a new instance of the class.
The image source info.
Initializes a new instance of the class.
The bitmap source.
Initializes a new instance of the class.
The bitmap source.
The image quality.
Gets image height.
Gets image width.
Gets or sets the decode array which specifies a linear mapping of each component value to a number that would be appropriate as a component value in the color space of the image.
The decode array.
Gets the encoded image data.
The encoded image data.
Creates from the image source instance.
The instance.
Gets or sets the character spacing.
The character spacing.
Gets or sets the word spacing.
The word spacing.
Gets or sets the horizontal scaling.
The horizontal scaling.
Gets or sets the text rise.
The text rise.
Gets or sets the size of the font.
The size of the font.
Gets or sets the rendering mode.
The rendering mode.
Gets or sets the font.
The font.
Gets or sets the fill color.
The fill color.
Gets or sets the stroke color.
The stroke color.
Gets or sets the width of the stroke line.
The width of the stroke line.
Gets or sets the stroke line cap.
The stroke line cap.
Gets or sets the stroke line join.
The stroke line join.
Gets or sets the stroke dash array.
The stroke dash array.
Gets or sets the stroke dash offset.
The stroke dash offset.
Gets or sets the miter limit.
The miter limit.
Represents on document exception event args.
Initializes a new instance of the class.
The document exception.
Gets the document exception.
The document exception.
Defines if the exception should be handled.
True by default.
Represents fixed page.
Gets or sets the clip.
The clip.
Represents RadFixedDocument.
Occurs when an unhandled exception is thrown while loading the document properties, e.g. page content and annotations.
This event applies when the document is imported with the class
using the .OnDemand import setting.
Initializes a new instance of the class.
Gets the document info.
The document info.
Gets the pages collection.
The pages collection.
Gets the annotations collection.
The annotations.
Gets the named destinations collection.
The destinations.
Represents the interactive form properties of the current document.
Gets the document bookmarks (outlines) collection.
Gets or sets how the document should be displayed when opened.
Merges this document with the specified source document.
The source document.
Occurs when trying to resolve conflicts between the fields names while merging instances.
Clones the document content.
The cloned RadFixedDocument instance.
Occurs when an exception is thrown while loading the document properties, e.g. page content and annotations.
This event applies when the document is imported with the class
using the .OnDemand import setting.
Gets the selection of the document.
The selection.
Gets the caret position in the document. This property only works with RadPdfViewer.
The caret position.
Gets or sets the Cache Manager responsible for page content caching operations.
Represents fixed page.
Initializes a new instance of the class.
Gets if the element supports annotations.
True if the element supports annotations.
Gets the content elements collection.
The content elements collection.
Gets the annotations collection.
The annotations collection.
Gets or sets the size of the physical medium on which the page is intended to be displayed or printed.
For more control, use and properties.
Gets or sets the rectangle defining the boundaries of the physical medium
on which the page is intended to be displayed or printed.
Gets or sets the rectangle defining the boundaries of the visible region of the page.
When the page is displayed or printed, its contents are to be clipped (cropped) to this rectangle.
Gets or sets the rotate angle.
The rotate angle.
Gets the fixed page's width. This property only works with RadPdfViewer.
The width.
Gets the fixed page's height. This property only works with RadPdfViewer.
The height.
Gets a value indicating if the page has content. This property only works with RadPdfViewer.
A value indicating if the page has content.
Gets the document that contains the page.
The document.
Gets the current page number. This property only works with RadPdfViewer.
The page no.
Represents text segment.
Initializes a new instance of the class.
Initializes a new instance of the class.
The text.
Gets or sets the character spacing.
The character spacing.
Gets or sets the word spacing.
The word spacing.
Gets or sets the horizontal scaling.
The horizontal scaling.
Gets or sets the font.
The font.
Gets or sets the size of the font.
The size of the font.
Gets or sets the text rise.
The text rise.
Gets or sets the rendering mode.
The rendering mode.
Gets or sets the fill color.
The fill color.
Gets or sets the stroke color.
The stroke color.
Gets or sets the width of the stroke line.
The width of the stroke line.
Gets or sets the stroke line cap.
The stroke line cap.
Gets or sets the stroke line join.
The stroke line join.
Gets or sets the stroke dash array.
The stroke dash array.
Gets or sets the stroke dash offset.
The stroke dash offset.
Gets or sets the miter limit.
The miter limit.
Gets or sets the text.
The text.
Returns a string that represents the current object.
A string that represents the current object.
Represents the text rendering modes.
Represents the fill text rendering mode.
Represents the stroke text rendering mode.
Represents the fill then stroke text rendering mode.
Represents the none text rendering mode.
Represents the fill then add to current clipping path text rendering mode.
Represents the stroke then add to current clipping path text rendering mode.
Represents the fill, stroke then add to current clipping path text rendering mode.
Represents the add to clipping path text rendering mode.
This will parse a PDF byte stream and extract operands and such.
@author Ben Litchfield
Represent search result.
Gets a default instance when there is no search result found.
The value represents a default instance when there is no search result found.
Gets a object describing the start and end positions of the match.
The value represents a object describing the start and end positions of the match.
Gets the result as text.
A string value representing the match.
Returns a string that represents the current object.
A string that represents the current object.
Gets the bounding rectangle of the result word.
Returns the bounding rectangle of the result word.
Get the page where the current result is.
Returns the page where the current result is.
Used for searching text in pdf documents.
Creates a new instance of the TextSearch class.
The Pdf document
Finds a specific text within the document.
The searched text.
Allows you to specify the search options.
The SearchResult.
Finds a specific text within the document.
The searched text.
Allows you to specify the search options.
The initial position to start the search from.
The SearchResult.
Finds a specific text within the document.
The searched text.
Allows you to specify the search options.
The range within the search is performed
The SearchResult.
Finds the previous result.
The text to be searched.
The search options to apply for the current search.
The SearchResult.
Finds the previous result from a known position.
The text to be searched.
The search options to apply for the current search.
The position to begin from.
The SearchResult.
Finds the previous position in range. The search is executed in backward - the StartPosition of the range is greater than the EndPosition of the range.
The text to be searched.
The search options to apply for the current search.
The range of the search - StartPosition is greater than EndPosition.
The SearchResult.
Finds all occurrences in the document.
The searched text.
The search options to apply for the current search.
A collection of the found results.
Finds all occurrences in the document from a specific position.
The searched text.
The search options to apply for the current search.
A collection of the found results.
Finds all occurrences in the document within a specific range.
The searched text.
The search options to apply for the current search.
The range to search in.
A collection of the found results.
Represent text search options.
Gets the default text search options.
The default.
Occurs when a property value changes.
Initializes a new instance of the class.
Initializes a new instance of the class.
The case sensitive option.
Initializes a new instance of the class.
The case sensitive.
The use regular expression.
Initializes a new instance of the class.
The case sensitive.
The use regular expression.
The whole words only.
Gets or sets a value indicating whether a regular expression should be used for searching.
true if regular expression should be used for searching; otherwise, false.
Gets or sets a value indicating whether the search should be case sensitive.
true if the search should be case sensitive; otherwise, false.
Gets or sets a value indicating whether only whole words should be matched.
true if only whole words should be matched; otherwise, false.
TODO Make base method private when Old model is deleted.
Represents text position.
Initializes a new instance of the class.
The document.
Initializes a new instance of the class.
The position.
Initializes a new instance of the class.
The page.
Initializes a new instance of the class.
The page.
The index.
Occurs when TextPosition is changing.
Occurs when TextPosition is changed.
Gets the index of the position.
The index.
Gets the page that contains the position.
The page.
Compares two text positions.
Left text position.
Right text position.
Returns if the two positions are equal.
Compares two text positions.
Left text position.
Right text position.
Returns if the two positions are not equal.
Compares two text positions.
Left text position.
Right text position.
Returns if the left position is less than the right position.
Compares two text positions.
Left text position.
Right text position.
Returns if the left position is greater than the right position.
Compares two text positions.
Left text position.
Right text position.
Returns if the left position is less than or equals to the right position.
Compares two text positions.
Left text position.
Right text position.
Returns if the left position is greater than or equals to the right position.
Determines whether the specified is equal
to the current .
The to compare with the current
.
True if the specified is equal to the
current ; otherwise, false.
Serves as a hash function for a particular type.
A hash code for the current .
Moves to position.
The position.
Moves to next position.
Moves to previous position.
Moves to next word.
Moves to previous word.
Moves to current word start.
Moves to current word end.
Moves to line start.
Moves to line end.
Moves line up.
Moves line down.
Moves to start of document.
Moves to end of document.
Returns the bounding rectangle of the current word.
The bounding rectangle of the current word.
Returns a string that represents the current object.
A string that represents the current object.
Called when TextPosition is changing.
Called when TextPosition is changed.
Represents text range.
Gets empty text range.
The range.
Gets the start position.
The start position.
Gets the end position.
The end position.
Check if text range is empty.
Is empty.
Returns a value indicating whether this instance is equal to a specified object.
An object to compare with this instance.
true if obj equals the value of this instance; otherwise, false.
Returns the hash code for this instance.
A hash code for the current object.
Helper class dedicated to handle the logic for rendering the page content with a .
Initializes a new instance of the class.
The page instance to be rendered.
Renders the page content elements.
The actual UI renderer implementation.
Renders the page content elements located in the current viewport.
The actual UI renderer implementation.
The current viewport.
Renders tiling content elements.
The actual UI renderer implementation.
The tiling instance.
Renders the normal annotation appearance. This appearance is used when the annotation
is not interacting with the user. The appearance is also used for printing the annotation.
The actual UI renderer implementation.
The annotation instance.
Renders the down annotation appearance. This appearance is used when the pointing device
of the viewer is pressed or held down within the annotation’s active area. When not present,
the annotation normal appearance.
The actual UI renderer implementation.
The annotation instance.
The rendered geometry.
The geometry properties.
The outlines.
The transformation that should be applied to the original outlines collection.
The geometry properties that should be applied to the glyphs geometry.
Adds new transformation to the current rendering state.
The matrix describing the transformation.
Disposable object which removes the given transformation once its Dispose method is called.
Adds new clipping to the current rendering state.
The clipping geometry.
Disposable object which removes the given clipping once its Dispose method is called.
Renders text from font properties when the font source is not embedded and cannot be provided from the system font files.
The context.
Renders glyph outlines geometry.
The context.
Renders geometry.
The context.
Renders image.
The context.
The image source.
The width of the rendered image.
The height of the rendered image.
If not null this is the color that should be used when drawing monochrome image source.
A helper class dedicated for layout related calculations of a fixed page.
Gets the rectangle of the visible region of the page, i.e. the intersection
between the MediaBox and the CropBox properties of the page.
The visible page content rectangle.
Gets the width of the visible page content boundaries. This method considers the rotation of the page.
The width of the rotated page content to be displayed.
Gets the height of the visible page content boundaries. This method considers the rotation of the page.
The height of the rotated page content to be displayed.
The text.
The font size.
The instance describing how to style the text.
The geometry properties that should be applied to the text geometry.
Represents text selection.
Occurs when selection is changing.
Occurs when selection is changed.
Gets the start position of the selection.
The start position.
Gets the end position of the selection.
The end position.
Checks if the selection is empty.
The is empty.
Gets the selection geometry for given page.
The page.
Sets the selection start.
The start position.
Sets the selection end.
The end position.
Sets the selection.
The start position.
The end position.
Selects the whole document.
Clears the selection.
Gets the selected text.
Gets the selected text asynchronously. The callback is called on the Dispatcher.
The callback.
Gets the selected text async.
Returns a string that represents the current object.
A string that represents the current object.
Represents a provider of predefined CMap resources for Adobe’s public character collections.
A list with predefined resources can be found on the following repository - https://github.com/adobe-type-tools/cmap-resources.
Retrieves the character code to CID mapping of a predefined CMap.
The name of the predefined CMap.
The CMap resource data.
Retrieves the character code to Unicode mapping of a predefined CMap.
The name of the predefined CMap.
The CMap resource data.
Represents a manager used to provide extensibility mechanisms.
Gets or sets a instance used to provide predefined CMap resources.
Initializes a new instance of the class.
Font file.
Array of cids or character codes, depending of the font encoding.
white run lengths
black run lengths
private static void setPixel(int col, int row, FastBitSet data, int value) {
if (value == 1)
data.set(row, col);
else
data.clear(row, col);
}/*
Regenerated line info.
Possible values for .CLEANFAXDATA tag.
No errors detected.
Receiver regenerated lines.
Uncorrected errors exist.
Color curve accuracy.
Possible values for .COLORRESPONSEUNIT tag.
Tenths of a unit.
Hundredths of a unit.
Thousandths of a unit.
Ten-thousandths of a unit.
Hundred-thousandths.
Compression scheme.
Possible values for .COMPRESSION tag.
Dump mode.
CCITT modified Huffman RLE.
CCITT Group 3 fax encoding.
CCITT T.4 (TIFF 6 name for CCITT Group 3 fax encoding).
CCITT Group 4 fax encoding.
CCITT T.6 (TIFF 6 name for CCITT Group 4 fax encoding).
Lempel-Ziv & Welch.
Original JPEG / Old-style JPEG (6.0).
JPEG DCT compression. Introduced post TIFF rev 6.0.
NeXT 2-bit RLE.
CCITT RLE.
Macintosh RLE.
ThunderScan RLE.
IT8 CT w/padding. Reserved for ANSI IT8 TIFF/IT.
IT8 Linework RLE. Reserved for ANSI IT8 TIFF/IT.
IT8 Monochrome picture. Reserved for ANSI IT8 TIFF/IT.
IT8 Binary line art. Reserved for ANSI IT8 TIFF/IT.
Pixar companded 10bit LZW. Reserved for Pixar.
Pixar companded 11bit ZIP. Reserved for Pixar.
Deflate compression.
Deflate compression, as recognized by Adobe.
Kodak DCS encoding.
Reserved for Oceana Matrix (dev@oceana.com).
ISO JBIG.
SGI Log Luminance RLE.
SGI Log 24-bit packed.
Leadtools JPEG2000.
Information about extra samples.
Possible values for .EXTRASAMPLES tag.
Unspecified data.
Associated alpha data.
Unassociated alpha data.
Group 3/4 format control.
Possible values for .FAXMODE tag.
Default, include RTC.
No RTC at end of data.
No EOL code at end of row.
Byte align row.
Word align row.
TIFF Class F.
Subfile data descriptor.
Possible values for .SUBFILETYPE tag.
Reduced resolution version.
One page of many.
Transparency mask.
Data order within a byte.
Possible values for .FILLORDER tag.
Most significant -> least.
Least significant -> most.
Gray scale curve accuracy.
Possible values for .GRAYRESPONSEUNIT tag.
Tenths of a unit.
Hundredths of a unit.
Thousandths of a unit.
Ten-thousandths of a unit.
Hundred-thousandths.
Options for CCITT Group 3/4 fax encoding.
Possible values for .GROUP3OPTIONS / TiffTag.T4OPTIONS and
TiffTag.GROUP4OPTIONS / TiffTag.T6OPTIONS tags.
Unknown (uninitialized).
2-dimensional coding.
Data not compressed.
Fill to byte boundary.
Inks in separated image.
Possible values for .INKSET tag.
Cyan-magenta-yellow-black color.
Multi-ink or hi-fi color.
Auto RGB<=>YCbCr convert.
Possible values for .JPEGCOLORMODE tag.
No conversion (default).
Do auto conversion.
JPEG processing algorithm.
Possible values for .JPEGPROC tag.
Baseline sequential.
Huffman coded lossless.
Jpeg Tables Mode.
Possible values for .JPEGTABLESMODE tag.
None.
Include quantization tables.
Include Huffman tables.
Kind of data in subfile.
Possible values for .OSUBFILETYPE tag.
Full resolution image data.
Reduced size image data.
One page of many.
Image orientation.
Possible values for .ORIENTATION tag.
Row 0 top, Column 0 lhs.
Row 0 top, Column 0 rhs.
Row 0 bottom, Column 0 rhs.
Row 0 bottom, Column 0 lhs.
Row 0 lhs, Column 0 top.
Row 0 rhs, Column 0 top.
Row 0 rhs, Column 0 bottom.
Row 0 lhs, Column 0 bottom.
Photometric interpretation.
Possible values for .PHOTOMETRIC tag.
Min value is white.
Min value is black.
RGB color model.
Color map indexed.
[obsoleted by TIFF rev. 6.0] Holdout mask.
Color separations.
CCIR 601.
1976 CIE L*a*b*.
ICC L*a*b*. Introduced post TIFF rev 6.0 by Adobe TIFF Technote 4.
ITU L*a*b*.
CIE Log2(L).
CIE Log2(L) (u',v').
Storage organization.
Possible values for .PLANARCONFIG tag.
Unknown (uninitialized).
Single image plane.
Separate planes of data.
Prediction scheme w/ LZW.
Possible values for .PREDICTOR tag.
No prediction scheme used.
Horizontal differencing.
Floating point predictor.
Units of resolutions.
Possible values for .RESOLUTIONUNIT tag.
No meaningful units.
English.
Metric.
Data sample format.
Possible values for .SAMPLEFORMAT tag.
Unsigned integer data
Signed integer data
IEEE floating point data
Untyped data
Complex signed int
Complex ieee floating
Thresholding used on data.
Possible values for .THRESHHOLDING tag.
B&W art scan.
Dithered scan.
Usually Floyd-Steinberg.
Flags that can be passed to
method to control printing of data structures that are potentially very large.
More than one flag can be used. Bit-or these flags to enable printing
multiple items.
no extra info
strips/tiles info
color/gray response curves
colormap
JPEG Q matrices
JPEG AC tables
JPEG DC tables
TIFF tag definitions.
Joris Van Damme maintains
TIFF Tag Reference, good source of tag information. It's an overview of known TIFF
Tags with properties, short description, and other useful information.
Tag placeholder
Subfile data descriptor.
For the list of possible values, see .
[obsoleted by TIFF rev. 5.0]
Kind of data in subfile. For the list of possible values, see .
Image width in pixels.
Image height in pixels.
Bits per channel (sample).
Data compression technique.
For the list of possible values, see .
Photometric interpretation.
For the list of possible values, see .
[obsoleted by TIFF rev. 5.0]
Thresholding used on data. For the list of possible values, see .
[obsoleted by TIFF rev. 5.0]
Dithering matrix width.
[obsoleted by TIFF rev. 5.0]
Dithering matrix height.
Data order within a byte.
For the list of possible values, see .
Name of document which holds for image.
Information about image.
Scanner manufacturer name.
Scanner model name/number.
Offsets to data strips.
[obsoleted by TIFF rev. 5.0]
Image orientation. For the list of possible values, see .
Samples per pixel.
Rows per strip of data.
Bytes counts for strips.
[obsoleted by TIFF rev. 5.0]
Minimum sample value.
[obsoleted by TIFF rev. 5.0]
Maximum sample value.
Pixels/resolution in x.
Pixels/resolution in y.
Storage organization.
For the list of possible values, see .
Page name image is from.
X page offset of image lhs.
Y page offset of image lhs.
[obsoleted by TIFF rev. 5.0]
Byte offset to free block.
[obsoleted by TIFF rev. 5.0]
Sizes of free blocks.
[obsoleted by TIFF rev. 6.0]
Gray scale curve accuracy.
For the list of possible values, see .
[obsoleted by TIFF rev. 6.0]
Gray scale response curve.
Options for CCITT Group 3 fax encoding. 32 flag bits.
For the list of possible values, see .
TIFF 6.0 proper name alias for GROUP3OPTIONS.
Options for CCITT Group 4 fax encoding. 32 flag bits.
For the list of possible values, see .
TIFF 6.0 proper name alias for GROUP4OPTIONS.
Units of resolutions.
For the list of possible values, see .
Page numbers of multi-page.
[obsoleted by TIFF rev. 6.0]
Color curve accuracy.
For the list of possible values, see .
Colorimetry info.
Name & release.
Creation date and time.
Creator of image.
Machine where created.
Prediction scheme w/ LZW.
For the list of possible values, see .
Image white point.
Primary chromaticities.
RGB map for pallette image.
Highlight + shadow info.
Tile width in pixels.
Tile height in pixels.
Offsets to data tiles.
Byte counts for tiles.
Lines with wrong pixel count.
Regenerated line info.
For the list of possible values, see .
Max consecutive bad lines.
Subimage descriptors.
Inks in separated image.
For the list of possible values, see .
ASCII names of inks.
Number of inks.
0% and 100% dot codes.
Separation target.
Information about extra samples.
For the list of possible values, see .
Data sample format.
For the list of possible values, see .
Variable MinSampleValue.
Variable MaxSampleValue.
ClipPath. Introduced post TIFF rev 6.0 by Adobe TIFF technote 2.
XClipPathUnits. Introduced post TIFF rev 6.0 by Adobe TIFF technote 2.
YClipPathUnits. Introduced post TIFF rev 6.0 by Adobe TIFF technote 2.
Indexed. Introduced post TIFF rev 6.0 by Adobe TIFF Technote 3.
JPEG table stream. Introduced post TIFF rev 6.0.
OPI Proxy. Introduced post TIFF rev 6.0 by Adobe TIFF technote.
[obsoleted by Technical Note #2 which specifies a revised JPEG-in-TIFF scheme]
JPEG processing algorithm.
For the list of possible values, see .
[obsoleted by Technical Note #2 which specifies a revised JPEG-in-TIFF scheme]
Pointer to SOI marker.
[obsoleted by Technical Note #2 which specifies a revised JPEG-in-TIFF scheme]
JFIF stream length
[obsoleted by Technical Note #2 which specifies a revised JPEG-in-TIFF scheme]
Restart interval length.
[obsoleted by Technical Note #2 which specifies a revised JPEG-in-TIFF scheme]
Lossless proc predictor.
[obsoleted by Technical Note #2 which specifies a revised JPEG-in-TIFF scheme]
Lossless point transform.
[obsoleted by Technical Note #2 which specifies a revised JPEG-in-TIFF scheme]
Q matrice offsets.
[obsoleted by Technical Note #2 which specifies a revised JPEG-in-TIFF scheme]
DCT table offsets.
[obsoleted by Technical Note #2 which specifies a revised JPEG-in-TIFF scheme]
AC coefficient offsets.
RGB -> YCbCr transform.
YCbCr subsampling factors.
Subsample positioning.
For the list of possible values, see .
Colorimetry info.
XML packet. Introduced post TIFF rev 6.0 by Adobe XMP Specification, January 2004.
OPI ImageID. Introduced post TIFF rev 6.0 by Adobe TIFF technote.
Image reference points. Private tag registered to Island Graphics.
Region-xform tack point. Private tag registered to Island Graphics.
Warp quadrilateral. Private tag registered to Island Graphics.
Affine transformation matrix. Private tag registered to Island Graphics.
[obsoleted by TIFF rev. 6.0]
Use EXTRASAMPLE tag. Private tag registered to SGI.
[obsoleted by TIFF rev. 6.0]
Use SAMPLEFORMAT tag. Private tag registered to SGI.
Z depth of image. Private tag registered to SGI.
Z depth/data tile. Private tag registered to SGI.
Full image size in X. This tag is set when an image has been cropped out of a larger
image. It reflect width of the original uncropped image. The XPOSITION tag can be used
to determine the position of the smaller image in the larger one.
Private tag registered to Pixar.
Full image size in Y. This tag is set when an image has been cropped out of a larger
image. It reflect height of the original uncropped image. The YPOSITION can be used
to determine the position of the smaller image in the larger one.
Private tag registered to Pixar.
Texture map format. Used to identify special image modes and data used by Pixar's
texture formats. Private tag registered to Pixar.
S&T wrap modes. Used to identify special image modes and data used by Pixar's
texture formats. Private tag registered to Pixar.
Cotan(fov) for env. maps. Used to identify special image modes and data used by
Pixar's texture formats. Private tag registered to Pixar.
Used to identify special image modes and data used by Pixar's texture formats.
Private tag registered to Pixar.
Used to identify special image modes and data used by Pixar's texture formats.
Private tag registered to Pixar.
Device serial number. Private tag registered to Eastman Kodak.
Copyright string. This tag is listed in the TIFF rev. 6.0 w/ unknown ownership.
IPTC TAG from RichTIFF specifications.
Site name. Reserved for ANSI IT8 TIFF/IT.
Color seq. [RGB, CMYK, etc]. Reserved for ANSI IT8 TIFF/IT.
DDES Header. Reserved for ANSI IT8 TIFF/IT.
Raster scanline padding. Reserved for ANSI IT8 TIFF/IT.
The number of bits in short run. Reserved for ANSI IT8 TIFF/IT.
The number of bits in long run. Reserved for ANSI IT8 TIFF/IT.
LW colortable. Reserved for ANSI IT8 TIFF/IT.
BP/BL image color switch. Reserved for ANSI IT8 TIFF/IT.
BP/BL bg color switch. Reserved for ANSI IT8 TIFF/IT.
BP/BL image color value. Reserved for ANSI IT8 TIFF/IT.
BP/BL bg color value. Reserved for ANSI IT8 TIFF/IT.
MP pixel intensity value. Reserved for ANSI IT8 TIFF/IT.
HC transparency switch. Reserved for ANSI IT8 TIFF/IT.
Color characterization table. Reserved for ANSI IT8 TIFF/IT.
HC usage indicator. Reserved for ANSI IT8 TIFF/IT.
Trapping indicator (untrapped = 0, trapped = 1). Reserved for ANSI IT8 TIFF/IT.
CMYK color equivalents.
Sequence Frame Count. Private tag registered to Texas Instruments.
Private tag registered to Adobe for PhotoShop.
Pointer to EXIF private directory. This tag is documented in EXIF specification.
ICC profile data. ?? Private tag registered to Adobe. ??
JBIG options. Private tag registered to Pixel Magic.
Pointer to GPS private directory. This tag is documented in EXIF specification.
Encoded Class 2 ses. params. Private tag registered to SGI.
Received SubAddr string. Private tag registered to SGI.
Receive time (secs). Private tag registered to SGI.
Encoded fax ses. params, Table 2/T.30. Private tag registered to SGI.
Sample value to Nits. Private tag registered to SGI.
Private tag registered to FedEx.
Pointer to Interoperability private directory.
This tag is documented in EXIF specification.
DNG version number. Introduced by Adobe DNG specification.
DNG compatibility version. Introduced by Adobe DNG specification.
Name for the camera model. Introduced by Adobe DNG specification.
Localized camera model name. Introduced by Adobe DNG specification.
CFAPattern->LinearRaw space mapping. Introduced by Adobe DNG specification.
Spatial layout of the CFA. Introduced by Adobe DNG specification.
Lookup table description. Introduced by Adobe DNG specification.
Repeat pattern size for the BlackLevel tag. Introduced by Adobe DNG specification.
Zero light encoding level. Introduced by Adobe DNG specification.
Zero light encoding level differences (columns). Introduced by Adobe DNG specification.
Zero light encoding level differences (rows). Introduced by Adobe DNG specification.
Fully saturated encoding level. Introduced by Adobe DNG specification.
Default scale factors. Introduced by Adobe DNG specification.
Origin of the final image area. Introduced by Adobe DNG specification.
Size of the final image area. Introduced by Adobe DNG specification.
XYZ->reference color space transformation matrix 1.
Introduced by Adobe DNG specification.
XYZ->reference color space transformation matrix 2.
Introduced by Adobe DNG specification.
Calibration matrix 1. Introduced by Adobe DNG specification.
Calibration matrix 2. Introduced by Adobe DNG specification.
Dimensionality reduction matrix 1. Introduced by Adobe DNG specification.
Dimensionality reduction matrix 2. Introduced by Adobe DNG specification.
Gain applied the stored raw values. Introduced by Adobe DNG specification.
Selected white balance in linear reference space.
Introduced by Adobe DNG specification.
Selected white balance in x-y chromaticity coordinates.
Introduced by Adobe DNG specification.
How much to move the zero point. Introduced by Adobe DNG specification.
Relative noise level. Introduced by Adobe DNG specification.
Relative amount of sharpening. Introduced by Adobe DNG specification.
How closely the values of the green pixels in the blue/green rows
track the values of the green pixels in the red/green rows.
Introduced by Adobe DNG specification.
Non-linear encoding range. Introduced by Adobe DNG specification.
Camera's serial number. Introduced by Adobe DNG specification.
Information about the lens.
Chroma blur radius. Introduced by Adobe DNG specification.
Relative strength of the camera's anti-alias filter.
Introduced by Adobe DNG specification.
Used by Adobe Camera Raw. Introduced by Adobe DNG specification.
Manufacturer's private data. Introduced by Adobe DNG specification.
Whether the EXIF MakerNote tag is safe to preserve along with the rest of the EXIF data.
Introduced by Adobe DNG specification.
Illuminant 1. Introduced by Adobe DNG specification.
Illuminant 2. Introduced by Adobe DNG specification.
Best quality multiplier. Introduced by Adobe DNG specification.
Unique identifier for the raw image data. Introduced by Adobe DNG specification.
File name of the original raw file. Introduced by Adobe DNG specification.
Contents of the original raw file. Introduced by Adobe DNG specification.
Active (non-masked) pixels of the sensor. Introduced by Adobe DNG specification.
List of coordinates of fully masked pixels. Introduced by Adobe DNG specification.
Used to map cameras's color space into ICC profile space.
Introduced by Adobe DNG specification.
Used to map cameras's color space into ICC profile space.
Introduced by Adobe DNG specification.
Introduced by Adobe DNG specification.
Introduced by Adobe DNG specification.
Undefined tag used by Eastman Kodak, hue shift correction data.
[pseudo tag. not written to file]
Group 3/4 format control.
For the list of possible values, see .
[pseudo tag. not written to file]
Compression quality level. Quality level is on the IJG 0-100 scale. Default value is 75.
[pseudo tag. not written to file]
Auto RGB<=>YCbCr convert.
For the list of possible values, see .
[pseudo tag. not written to file]
For the list of possible values, see .
Default is | .
[pseudo tag. not written to file]
G3/G4 fill function.
[pseudo tag. not written to file]
PixarLogCodec I/O data sz.
[pseudo tag. not written to file]
Imager mode & filter.
Allocated to Oceana Matrix (dev@oceana.com).
[pseudo tag. not written to file]
Interpolation mode.
Allocated to Oceana Matrix (dev@oceana.com).
[pseudo tag. not written to file]
Color balance values.
Allocated to Oceana Matrix (dev@oceana.com).
[pseudo tag. not written to file]
Color correction values.
Allocated to Oceana Matrix (dev@oceana.com).
[pseudo tag. not written to file]
Gamma value.
Allocated to Oceana Matrix (dev@oceana.com).
[pseudo tag. not written to file]
Toe & shoulder points.
Allocated to Oceana Matrix (dev@oceana.com).
[pseudo tag. not written to file]
Calibration file description.
[pseudo tag. not written to file]
Compression quality level.
Quality level is on the ZLIB 1-9 scale. Default value is -1.
[pseudo tag. not written to file]
PixarLog uses same scale.
[pseudo tag. not written to file]
Area of image to acquire.
Allocated to Oceana Matrix (dev@oceana.com).
[pseudo tag. not written to file]
SGILog user data format.
[pseudo tag. not written to file]
SGILog data encoding control.
Exposure time.
F number.
Exposure program.
Spectral sensitivity.
ISO speed rating.
Optoelectric conversion factor.
Exif version.
Date and time of original data generation.
Date and time of digital data generation.
Meaning of each component.
Image compression mode.
Shutter speed.
Aperture.
Brightness.
Exposure bias.
Maximum lens aperture.
Subject distance.
Metering mode.
Light source.
Flash.
Lens focal length.
Subject area.
Manufacturer notes.
User comments.
DateTime subseconds.
DateTimeOriginal subseconds.
DateTimeDigitized subseconds.
Supported Flashpix version.
Color space information.
Valid image width.
Valid image height.
Related audio file.
Flash energy.
Spatial frequency response.
Focal plane X resolution.
Focal plane Y resolution.
Focal plane resolution unit.
Subject location.
Exposure index.
Sensing method.
File source.
Scene type.
CFA pattern.
Custom image processing.
Exposure mode.
White balance.
Digital zoom ratio.
Focal length in 35 mm film.
Scene capture type.
Gain control.
Contrast.
Saturation.
Sharpness.
Device settings description.
Subject distance range.
Unique image ID.
Tag data type.
Note: RATIONALs are the ratio of two 32-bit integer values.
Placeholder.
For field descriptor searching.
8-bit unsigned integer.
8-bit bytes with last byte null.
16-bit unsigned integer.
32-bit unsigned integer.
64-bit unsigned fraction.
8-bit signed integer.
8-bit untyped data.
16-bit signed integer.
32-bit signed integer.
64-bit signed fraction.
32-bit IEEE floating point.
64-bit IEEE floating point.
32-bit unsigned integer (offset)
Subsample positioning.
Possible values for .YCBCRPOSITIONING tag.
As in PostScript Level 2
As in CCIR 601-1
Field bits (flags) for tags.
Field bits used to indicate fields that have been set in a directory, and to
reference fields when manipulating a directory.
This value is used to signify tags that are to be processed
but otherwise ignored.
This permits antiquated tags to be quietly read and discarded. Note that
a bit is allocated for ignored tags; this is understood by the
directory reading logic which uses this fact to avoid special-case handling.
This value is used to signify pseudo-tags.
Pseudo-tags don't normally need field bits since they are not
written to an output file (by definition). The library also has
express logic to always query a codec for a pseudo-tag so allocating
a field bit for one is a waste. If codec wants to promote the notion
of a pseudo-tag being set or unset then it can do using
internal state flags without polluting the field bit space defined
for real tags.
This value is used to signify custom tags.
This value is used as a base (starting) value for codec-private tags.
Last usable value for field bit. All tags values should be less than this value.
Holds a value of a Tiff tag.
Simply put, it is a wrapper around System.Object, that helps to deal with
unboxing and conversion of types a bit easier.
Please take a look at:
http://blogs.msdn.com/ericlippert/archive/2009/03/19/representation-and-identity.aspx
Gets the value.
The value.
Retrieves value converted to byte.
The value converted to byte.
Retrieves value converted to short.
The value converted to short.
Retrieves value converted to ushort.
The value converted to ushort.
Retrieves value converted to int.
The value converted to int.
Retrieves value converted to uint.
The value converted to uint.
Retrieves value converted to float.
The value converted to float.
Retrieves value converted to double.
The value converted to double.
Retrieves value converted to string.
A that represents this instance.
If value is a byte array, then it gets converted to string using
Latin1 encoding encoder.
Retrieves value converted to byte array.
Value converted to byte array.
If value is byte array then it retrieved unaltered.
If value is array of short, ushort, int, uint, float or double values then this
array is converted to byte array
If value is a string then it gets converted to byte array using Latin1 encoding
encoder.
If value is of any other type then null is returned.
Retrieves value converted to array of bytes.
Value converted to array of bytes.
If value is array of bytes then it retrieved unaltered.
If value is array of short, ushort, int or uint values then each element of
field value gets converted to byte and added to resulting array.
If value is string then it gets converted to byte[] using Latin1 encoding
encoder.
If value is of any other type then null is returned.
Retrieves value converted to array of short values.
Value converted to array of short values.
If value is array of short values then it retrieved unaltered.
If value is array of bytes then each pair of bytes is converted to short and
added to resulting array. If value contains odd amount of bytes, then null is
returned.
If value is array of ushort, int or uint values then each element of field value gets
converted to short and added to resulting array.
If value is of any other type then null is returned.
Retrieves value converted to array of ushort values.
Value converted to array of ushort values.
If value is array of ushort values then it retrieved unaltered.
If value is array of bytes then each pair of bytes is converted to ushort and
added to resulting array. If value contains odd amount of bytes, then null is
returned.
If value is array of short, int or uint values then each element of field value gets
converted to ushort and added to resulting array.
If value is of any other type then null is returned.
Retrieves value converted to array of int values.
Value converted to array of int values.
If value is array of int values then it retrieved unaltered.
If value is array of bytes then each 4 bytes are converted to int and added to
resulting array. If value contains amount of bytes that can't be divided by 4 without
remainder, then null is returned.
If value is array of short, ushort or uint values then each element of
field value gets converted to int and added to resulting array.
If value is of any other type then null is returned.
Retrieves value converted to array of uint values.
Value converted to array of uint values.
If value is array of uint values then it retrieved unaltered.
If value is array of bytes then each 4 bytes are converted to uint and added to
resulting array. If value contains amount of bytes that can't be divided by 4 without
remainder, then null is returned.
If value is array of short, ushort or int values then each element of
field value gets converted to uint and added to resulting array.
If value is of any other type then null is returned.
Retrieves value converted to array of float values.
Value converted to array of float values.
If value is array of float values then it retrieved unaltered.
If value is array of bytes then each 4 bytes are converted to float and added to
resulting array. If value contains amount of bytes that can't be divided by 4 without
remainder, then null is returned.
If value is array of double values then each element of field value gets
converted to float and added to resulting array.
If value is of any other type then null is returned.
Retrieves value converted to array of double values.
Value converted to array of double values.
If value is array of double values then it retrieved unaltered.
If value is array of bytes then each 8 bytes are converted to double and added to
resulting array. If value contains amount of bytes that can't be divided by 8 without
remainder, then null is returned.
If value is array of float values then each element of field value gets
converted to double and added to resulting array.
If value is of any other type then null is returned.
Gets a value indicating whether this codec can encode data.
true if this codec can encode data; otherwise, false.
Gets a value indicating whether this codec can decode data.
true if this codec can decode data; otherwise, false.
Prepares the decoder part of the codec for a decoding.
The zero-based sample plane index.
true if this codec successfully prepared its decoder part and ready
to decode data; otherwise, false.
PreDecode is called after and before decoding.
Decodes one row of image data.
The buffer to place decoded image data to.
The zero-based byte offset in at
which to begin storing decoded bytes.
The number of decoded bytes that should be placed
to
The zero-based sample plane index.
true if image data was decoded successfully; otherwise, false.
Decodes one strip of image data.
The buffer to place decoded image data to.
The zero-based byte offset in at
which to begin storing decoded bytes.
The number of decoded bytes that should be placed
to
The zero-based sample plane index.
true if image data was decoded successfully; otherwise, false.
Decodes one tile of image data.
The buffer to place decoded image data to.
The zero-based byte offset in at
which to begin storing decoded bytes.
The number of decoded bytes that should be placed
to
The zero-based sample plane index.
true if image data was decoded successfully; otherwise, false.
Setups the encoder part of the codec.
true if this codec successfully setup its encoder part and can encode data;
otherwise, false.
SetupEncode is called once before
.
Prepares the encoder part of the codec for a encoding.
The zero-based sample plane index.
true if this codec successfully prepared its encoder part and ready
to encode data; otherwise, false.
PreEncode is called after and before encoding.
Performs any actions after encoding required by the codec.
true if all post-encode actions succeeded; otherwise, false
PostEncode is called after encoding and can be used to release any external
resources needed during encoding.
Encodes one row of image data.
The buffer with image data to be encoded.
The zero-based byte offset in at
which to begin read image data.
The maximum number of encoded bytes that can be placed
to
The zero-based sample plane index.
true if image data was encoded successfully; otherwise, false.
Encodes one strip of image data.
The buffer with image data to be encoded.
The zero-based byte offset in at
which to begin read image data.
The maximum number of encoded bytes that can be placed
to
The zero-based sample plane index.
true if image data was encoded successfully; otherwise, false.
Encodes one tile of image data.
The buffer with image data to be encoded.
The zero-based byte offset in at
which to begin read image data.
The maximum number of encoded bytes that can be placed
to
The zero-based sample plane index.
true if image data was encoded successfully; otherwise, false.
Flushes any internal data buffers and terminates current operation.
Cleanups the state of the codec.
Cleanup is called when codec is no longer needed (won't be used) and can be
used for example to restore tag methods that were substituted.
Decode the requested amount of G3 1D-encoded data.
Decode the requested amount of G3 2D-encoded data.
Encode a buffer of pixels.
Decode the requested amount of RLE-encoded data.
Decode the requested amount of G4-encoded data.
Encode the requested amount of data.
Gets a value indicating whether this codec can encode data.
true if this codec can encode data; otherwise, false.
Gets a value indicating whether this codec can decode data.
true if this codec can decode data; otherwise, false.
Decodes one row of image data.
The buffer to place decoded image data to.
The zero-based byte offset in at
which to begin storing decoded bytes.
The number of decoded bytes that should be placed
to
The zero-based sample plane index.
true if image data was decoded successfully; otherwise, false.
Decodes one strip of image data.
The buffer to place decoded image data to.
The zero-based byte offset in at
which to begin storing decoded bytes.
The number of decoded bytes that should be placed
to
The zero-based sample plane index.
true if image data was decoded successfully; otherwise, false.
Decodes one tile of image data.
The buffer to place decoded image data to.
The zero-based byte offset in at
which to begin storing decoded bytes.
The number of decoded bytes that should be placed
to
The zero-based sample plane index.
true if image data was decoded successfully; otherwise, false.
Prepares the encoder part of the codec for a encoding.
The zero-based sample plane index.
true if this codec successfully prepared its encoder part and ready
to encode data; otherwise, false.
PreEncode is called after and before encoding.
Encodes one row of image data.
The buffer with image data to be encoded.
The zero-based byte offset in at
which to begin read image data.
The maximum number of encoded bytes that can be placed
to
The zero-based sample plane index.
true if image data was encoded successfully; otherwise, false.
Encodes one strip of image data.
The buffer with image data to be encoded.
The zero-based byte offset in at
which to begin read image data.
The maximum number of encoded bytes that can be placed
to
The zero-based sample plane index.
true if image data was encoded successfully; otherwise, false.
Encodes one tile of image data.
The buffer with image data to be encoded.
The zero-based byte offset in at
which to begin read image data.
The maximum number of encoded bytes that can be placed
to
The zero-based sample plane index.
true if image data was encoded successfully; otherwise, false.
Encode a rectangular chunk of pixels. We break it up into row-sized pieces to insure
that encoded runs do not span rows. Otherwise, there can be problems with the decoder
if data is read, for example, by scanlines when it was encoded by strips.
CIE Lab 1976->RGB support
Size of conversion table
Conversion of Yr to r
Conversion of Yg to g
Conversion of Yb to b
Internal format of a TIFF directory entry.
bit vector of fields that are set
size of offset and bytecount arrays
is the bytecount array sorted ascending?
TIFF Image File Directories are comprised of a table of field
descriptors of the form shown below. The table is sorted in
ascending order by tag. The values associated with each entry are
disjoint and may appear anywhere in the file (so long as they are
placed on a word boundary).
If the value is 4 bytes or less, then it is placed in the offset
field to save space. If the value is less than 4 bytes, it is
left-justified in the offset field.
number of items; length in spec
byte offset to field data
Structure for holding information about a display device.
XYZ -> luminance matrix
Use MSB2LSB (most significant -> least) fill order
Use LSB2MSB (least significant -> most) fill order
natural bit fill order for machine
current directory must be written
data buffers setup
encoder/decoder setup done
written 1+ scanlines to file
byte swap file information
inhibit bit reversal logic
my raw data buffer; free on close
file is tile, not strip- based
need call to postencode routine
currently writing a subifd
library is doing data up-sampling
enable strip chopping support
read header only, do not process the first directory
skip reading of raw uncompressed image data
magic number (defines byte order)
TIFF version number
byte offset to first directory
Convert color value from the YCbCr space to CIE XYZ.
The colorspace conversion algorithm comes from the IJG v5a code;
see below for more information on how it works.
range clamping table
Tag Image File Format (TIFF)
Based on Rev 6.0 from
Client Tag extension support (from Niles Ritter).
Compression schemes statically built into the library.
NB: THIS ARRAY IS ASSUMED TO BE SORTED BY TAG.
If a tag can have both LONG and SHORT types then the LONG must
be placed before the SHORT for writing to work properly.
NOTE: The second field (field_readcount) and third field
(field_writecount) sometimes use the values
TiffFieldInfo.Variable (-1), TiffFieldInfo.Variable2 (-3)
and TiffFieldInfo.Spp (-2). These values should be used but
would throw off the formatting of the code, so please
interpret the -1, -2 and -3 values accordingly.
Checks the directory offset against the list of already seen directory
offsets.
This is a trick to prevent IFD looping. The one can
create TIFF file with looped directory pointers. We will maintain a
list of already seen directories and check every IFD offset against
that list.
Reads IFD structure from the specified offset.
The number of fields in the directory or 0 if failed.
Fetches a contiguous directory item.
Fetches an ASCII item from the file.
Fetch a single floating point value from the offset field and
return it as a native float.
Fetches an array of BYTE or SBYTE values.
Fetch an array of SHORT or SSHORT values.
Fetches an array of LONG or SLONG values.
Fetch an array of RATIONAL or SRATIONAL values.
Fetches an array of FLOAT values.
Fetches an array of DOUBLE values.
Fetches an array of ANY values.
The actual values are returned as doubles which should be
able hold all the types. Note in particular that we assume that the
double return value vector is large enough to read in any
fundamental type. We use that vector as a buffer to read in the base
type vector and then convert it in place to double (from end to
front of course).
Fetches a tag that is not handled by special case code.
Fetches samples/pixel short values for the specified tag and verify
that all values are the same.
Fetches samples/pixel long values for the specified tag and verify
that all values are the same.
Fetches samples/pixel ANY values for the specified tag and verify
that all values are the same.
Fetches a set of offsets or lengths.
While this routine says "strips", in fact it's also used
for tiles.
Fetches and sets the RefBlackWhite tag.
Replace a single strip (tile) of uncompressed data with multiple
strips (tiles), each approximately 8Kbytes.
This is useful for dealing with large images or for
dealing with machines with a limited amount of memory.
Writes the contents of the current directory to the specified file.
This routine doesn't handle overwriting a directory with
auxiliary storage that's been changed.
Writes tags that are not special cased.
Setups a directory entry with either a SHORT or LONG type
according to the value.
Setups a SHORT directory entry
Setup a directory entry for an NxM table of shorts, where M is
known to be 2**bitspersample, and write the associated indirect data.
Write/copy data associated with an ASCII or opaque tag value.
Setup a directory entry of an array of SHORT or SSHORT and write
the associated indirect values.
Setup a directory entry of an array of LONG or SLONG and write the
associated indirect values.
Setup a directory entry of an array of RATIONAL or SRATIONAL and
write the associated indirect values.
Writes an array of "type" values for a specified tag (i.e. this is
a tag which is allowed to have different types, e.g. SMaxSampleType).
Internally the data values are represented as double since a double
can hold any of the TIFF tag types (yes, this should really be an abstract
type tany_t for portability). The data is converted into the specified
type in a temporary buffer and then handed off to the appropriate array
writer.
Writes a contiguous directory item.
Link the current directory into the directory chain for the file.
Support strip chopping (whether or not to convert single-strip
uncompressed images to mutiple strips of ~8Kb to reduce memory usage)
Treat extra sample as alpha (default enabled). The RGBA interface
will treat a fourth sample with no EXTRASAMPLE_ value as being
ASSOCALPHA. Many packages produce RGBA files but don't mark the
alpha properly.
Pick up YCbCr subsampling info from the JPEG data stream to support
files lacking the tag (default enabled).
name of open file
open mode (O_*)
file offset of current directory
internal rep of current directory
current scanline
current strip for read/write
current tile for read/write
# of bytes in a tile
# of bytes in a scanline
raw data buffer
# of bytes in raw data buffer
current spot in raw buffer
bytes unread from raw buffer
callback parameter
post decoding method type
tag get/set/print routines
file offset of following directory
list of offsets to already seen directories to prevent IFD looping
number of entires in offset list
number of already seen directories
file's header block
data type shift counts
data type masks
current directory (index)
current offset for read/write
current offset for writing dir
remaining subifds to write
offset for patching SubIFD link
current column (offset by row too)
sorted table of registered tags
# entries in registered tag table
cached pointer to already found tag
extra client information.
stream used for read|write|etc.
Writes custom directory. See ticket #51.
Output directory offset.
true if succeeded; otherwise, false
post decoding routine
undefined state
undefined state
Set state to appear as if a strip has just been read in.
Read the specified strip and setup for decoding.
The data buffer is expanded, as necessary, to hold the strip's data.
Read the specified tile and setup for decoding.
The data buffer is expanded, as necessary, to hold the tile's data.
Appends the data to the specified strip.
Delegate for LibTiff.Net extender method
An instance of the class.
Extender method is usually used for registering custom tags.
To setup extender method that will be called upon creation of
each instance of object please use
method.
Delegate for a method used to image decoded spans.
The buffer to place decoded image data to.
The zero-based byte offset in at
which to begin storing decoded bytes.
The array of black and white run lengths (white then black).
The zero-based offset in array at
which current row's run begins.
The zero-based offset in array at
which next row's run begins.
The width in pixels of the row.
To override the default method used to image decoded spans please set
tag with an instance of this delegate.
Fill methods can assume the array has room for at least
runs and can overwrite data in the
array as needed (e.g. to append zero runs to bring the count up to a nice multiple).
Gets the library version string.
The library version string.
Gets the version of the library's assembly.
The version of the library's assembly.
Gets the R component from ABGR value returned by
ReadRGBAImage.
The ABGR value.
The R component from ABGR value.
Gets the G component from ABGR value returned by
ReadRGBAImage.
The ABGR value.
The G component from ABGR value.
Gets the B component from ABGR value returned by
ReadRGBAImage.
The ABGR value.
The B component from ABGR value.
Gets the A component from ABGR value returned by
ReadRGBAImage.
The ABGR value.
The A component from ABGR value.
Retrieves the codec registered for the specified compression scheme.
The compression scheme.
The codec registered for the specified compression scheme or null
if there is no codec registered for the given scheme.
LibTiff.Net supports a variety of compression schemes implemented by software codecs.
Each codec adheres to a modular interface that provides for the decoding and encoding
of image data; as well as some other methods for initialization, setup, cleanup, and
the control of default strip and tile sizes. Codecs are identified by the associated
value of the .COMPRESSION tag.
Other compression schemes may be registered. Registered schemes can also override the
built-in versions provided by the library.
Adds specified codec to a list of registered codec.
The codec to register.
This method can be used to augment or override the set of codecs available to an
application. If the is for a scheme that already has a
registered codec then it is overridden and any images with data encoded with this
compression scheme will be decoded using the supplied codec.
Removes specified codec from a list of registered codecs.
The codec to remove from a list of registered codecs.
Checks whether library has working codec for the specific compression scheme.
The scheme to check.
true if the codec is configured and working; otherwise, false.
Retrieves an array of configured codecs, both built-in and registered by user.
An array of configured codecs.
Allocates new byte array of specified size and copies data from the existing to
the new array.
The existing array.
The number of elements in new array.
The new byte array of specified size with data from the existing array.
Allocates new array of specified size and copies data from the existing to
the new array.
Allocates new integer array of specified size and copies data from the existing to
the new array.
The existing array.
The number of elements in new array.
The new integer array of specified size with data from the existing array.
Size of the array is in elements, not bytes.
Compares specified number of elements in two arrays.
The first array to compare.
The second array to compare.
The number of elements to compare.
The difference between compared elements or 0 if all elements are equal.
Initializes new instance of class and opens a TIFF file for
reading or writing.
The name of the file to open.
The open mode. Specifies if the file is to be opened for
reading ("r"), writing ("w"), or appending ("a") and, optionally, whether to override
certain default aspects of library operation (see remarks).
The new instance of class if specified file is
successfully opened; otherwise, null.
opens a TIFF file whose name is . When
a file is opened for appending, existing data will not be touched; instead new data
will be written as additional subfiles. If an existing file is opened for writing,
all previous data is overwritten.
If a file is opened for reading, the first TIFF directory in the file is automatically
read (see for reading directories other than the first). If
a file is opened for writing or appending, a default directory is automatically
created for writing subsequent data. This directory has all the default values
specified in TIFF Revision 6.0: BitsPerSample = 1, ThreshHolding = Threshold.BILEVEL
(bilevel art scan), FillOrder = MSB2LSB (most significant bit of each data byte is
filled first), Orientation = TOPLEFT (the 0th row represents the visual top of the
image, and the 0th column represents the visual left hand side), SamplesPerPixel = 1,
RowsPerStrip = infinity, ResolutionUnit = INCH, and Compression = NONE. To alter
these values, or to define values for additional fields, must
be used.
The parameter can include the following flags in addition to
the "r", "w", and "a" flags. Note however that option flags must follow the
read-write-append specification.
FlagDescription
- l
When creating a new file force information be written with Little-Endian
byte order (but see below).
- b
When creating a new file force information be written with Big-Endian
byte order (but see below).
- L
Force image data that is read or written to be treated with bits filled
from Least Significant Bit (LSB) to Most Significant Bit (MSB). Note that this is the
opposite to the way the library has worked from its inception.
- B
Force image data that is read or written to be treated with bits filled
from Most Significant Bit (MSB) to Least Significant Bit (LSB); this is the
default.
- H
Force image data that is read or written to be treated with bits filled
in the same order as the native CPU.
- C
Enable the use of "strip chopping" when reading images that are comprised
of a single strip or tile of uncompressed data. Strip chopping is a mechanism by which
the library will automatically convert the single-strip image to multiple strips, each
of which has about 8 Kilobytes of data. This facility can be useful in reducing the
amount of memory used to read an image because the library normally reads each strip
in its entirety. Strip chopping does however alter the apparent contents of the image
because when an image is divided into multiple strips it looks as though the
underlying file contains multiple separate strips. The default behaviour is to enable
strip chopping.
- c
Disable the use of strip chopping when reading images.
- h
Read TIFF header only, do not load the first image directory. That could
be useful in case of the broken first directory. We can open the file and proceed to
the other directories.
By default the library will create new files with the native byte-order of the CPU on
which the application is run. This ensures optimal performance and is portable to any
application that conforms to the TIFF specification. To force the library to use a
specific byte-order when creating a new file the "b" and "l" option flags may be
included in the parameter; for example, "wb" or "wl".
The use of the "l" and "b" flags is strongly discouraged. These flags are
provided solely because numerous vendors do not correctly support TIFF; they only
support one of the two byte orders. It is strongly recommended that you not use this
feature except to deal with busted apps that write invalid TIFF.
The "L", "B", and "H" flags are intended for applications that can optimize
operations on data by using a particular bit order. By default the library returns
data in MSB2LSB bit order. Returning data in the bit order of the native CPU makes the
most sense but also requires applications to check the value of the
tag; something they probably do not do right now.
The "c" option permits applications that only want to look at the tags, for
example, to get the unadulterated TIFF tag information.
Initializes new instance of class and opens a stream with TIFF data
for reading or writing.
The name for the new instance of class.
The open mode. Specifies if the file is to be opened for
reading ("r"), writing ("w"), or appending ("a") and, optionally, whether to override
certain default aspects of library operation (see remarks for
method for the list of the mode flags).
Some client data. This data is passed as parameter to every
method of the object specified by the
parameter.
An instance of the class to use for
reading, writing and seeking of TIFF data.
The new instance of class if stream is successfully
opened; otherwise, null.
This method can be used to read TIFF data from sources other than file. When custom
stream class derived from is used it is possible to read (or
write) TIFF data that reside in memory, database, etc.
Please note, that is an arbitrary string used as
ID for the created . It's not required to be a file name or anything
meaningful at all.
Please read remarks for method for the list of option flags that
can be specified in parameter.
Closes a previously opened TIFF file.
This method closes a file or stream that was previously opened with
or .
Any buffered data are flushed to the file/stream,
including the contents of the current directory (if modified); and all resources
are reclaimed.
Frees and releases all resources allocated by this .
Gets the number of elements in the custom tag list.
The number of elements in the custom tag list.
Retrieves the custom tag with specified index.
The zero-based index of a custom tag to retrieve.
The custom tag with specified index.
Merges given field information to existing one.
The array of objects.
The number of items to use from the array.
Retrieves field information for the specified tag.
The tag to retrieve field information for.
The tiff data type to use us additional filter.
The field information for specified tag with specified type or null if
the field information wasn't found.
Retrieves field information for the tag with specified name.
The name of the tag to retrieve field information for.
The tiff data type to use us additional filter.
The field information for specified tag with specified type or null if
the field information wasn't found.
Retrieves field information for the specified tag.
The tag to retrieve field information for.
The field information for specified tag or null if
the field information wasn't found.
Retrieves field information for the tag with specified name.
The name of the tag to retrieve field information for.
The field information for specified tag or null if
the field information wasn't found.
Gets the currently used tag methods.
The currently used tag methods.
Sets the new tag methods to use.
Tag methods.
The previously used tag methods.
Gets the extra information with specified name associated with this .
Name of the extra information to retrieve.
The extra information with specified name associated with
this or null if extra information with specified
name was not found.
Associates extra information with this .
The information to associate with this .
The name (label) of the information.
If there is already an extra information with the name specified by
it will be replaced by the information specified by
.
Flushes pending writes to an open TIFF file.
true if succeeded; otherwise, false
causes any pending writes for the specified file
(including writes for the current directory) to be done. In normal operation this call
is never needed − the library automatically does any flushing required.
Flushes any pending image data for the specified file to be written out.
true if succeeded; otherwise, false
flushes any pending image data for the specified file
to be written out; directory-related data are not flushed. In normal operation this
call is never needed − the library automatically does any flushing required.
Gets the value(s) of a tag in an open TIFF file.
The tag.
The value(s) of a tag in an open TIFF file as array of
objects or null if there is no such tag set.
returns the value(s) of a tag or pseudo-tag associated with the
current directory of the opened TIFF file. The tag is identified by
. The type and number of values returned is dependent on the
tag being requested. You may want to consult
"Well-known tags and their
value(s) data types" to become familiar with exact data types and calling
conventions required for each tag supported by the library.
A pseudo-tag is a parameter that is used to control the operation of the library but
whose value is not read or written to the underlying file.
Gets the value(s) of a tag in an open TIFF file or default value(s) of a tag if a tag
is not defined in the current directory and it has a default value(s).
The tag.
The value(s) of a tag in an open TIFF file as array of
objects or null if there is no such tag set and
tag has no default value.
returns the value(s) of a tag or pseudo-tag associated
with the current directory of the opened TIFF file or default value(s) of a tag if a
tag is not defined in the current directory and it has a default value(s). The tag is
identified by . The type and number of values returned is
dependent on the tag being requested. You may want to consult
"Well-known tags and their
value(s) data types" to become familiar with exact data types and calling
conventions required for each tag supported by the library.
A pseudo-tag is a parameter that is used to control the operation of the library but
whose value is not read or written to the underlying file.
Reads the contents of the next TIFF directory in an open TIFF file/stream and makes
it the current directory.
true if directory was successfully read; otherwise, false if an
error was encountered, or if there are no more directories to be read.
Directories are read sequentially.
Applications only need to call to read multiple
subfiles in a single TIFF file/stream - the first directory in a file/stream is
automatically read when or
is called.
The images that have a single uncompressed strip or tile of data are automatically
treated as if they were made up of multiple strips or tiles of approximately 8
kilobytes each. This operation is done only in-memory; it does not alter the contents
of the file/stream. However, the construction of the "chopped strips" is visible to
the application through the number of strips returned by
or the number of tiles returned by .
Reads a custom directory from the arbitrary offset within file/stream.
The directory offset.
The array of objects to merge to
existing field information.
The number of items to use from
the array.
true if a custom directory was read successfully;
otherwise, false
Reads an EXIF directory from the given offset within file/stream.
The directory offset.
true if an EXIF directory was read successfully;
otherwise, false
Calculates the size in bytes of a row of data as it would be returned in a call to
, or as it would be
expected in a call to .
The size in bytes of a row of data.
ScanlineSize calculates size for one sample plane only. Please use
if you want to get size in bytes of a complete
decoded and packed raster scanline.
Calculates the size in bytes of a complete decoded and packed raster scanline.
The size in bytes of a complete decoded and packed raster scanline.
The value returned by RasterScanlineSize may be different from the
value returned by if data is stored as separate
planes ( = .SEPARATE).
Computes the number of rows for a reasonable-sized strip according to the current
settings of the ,
and tags and any compression-specific requirements.
The esimated value (may be zero).
The number of rows for a reasonable-sized strip according to the current
tag settings and compression-specific requirements.
If the parameter is non-zero, then it is taken
as an estimate of the desired strip size and adjusted according to any
compression-specific requirements. The value returned by DefaultStripSize is
typically used to define the tag. If there is no
any unusual requirements DefaultStripSize tries to create strips that have
approximately 8 kilobytes of uncompressed data.
Computes the number of bytes in a row-aligned strip.
The number of bytes in a row-aligned strip
StripSize returns the equivalent size for a strip of data as it would be
returned in a call to or as it would be expected in a
call to .
If the value of the field corresponding to is
larger than the recorded , then the strip size is
truncated to reflect the actual space required to hold the strip.
Computes the number of bytes in a row-aligned strip with specified number of rows.
The number of rows in a strip.
The number of bytes in a row-aligned strip with specified number of rows.
Computes the number of bytes in a raw (i.e. not decoded) strip.
The zero-based index of a strip.
The number of bytes in a raw strip.
Computes which strip contains the specified coordinates (row, plane).
The row.
The sample plane.
The number of the strip that contains the specified coordinates.
A valid strip number is always returned; out-of-range coordinate values are clamped to
the bounds of the image. The parameter is always used in
calculating a strip. The parameter is used only if data are
organized in separate planes
( = .SEPARATE).
Retrives the number of strips in the image.
The number of strips in the image.
Computes the pixel width and height of a reasonable-sized tile suitable for setting
up the and tags.
The proposed tile width upon the call / tile width to use
after the call.
The proposed tile height upon the call / tile height to use
after the call.
If the and values passed
in are non-zero, then they are adjusted to reflect any compression-specific
requirements. The returned width and height are constrained to be a multiple of
16 pixels to conform with the TIFF specification.
Compute the number of bytes in a row-aligned tile.
The number of bytes in a row-aligned tile.
TileSize returns the equivalent size for a tile of data as it would be
returned in a call to or as it would be expected in a
call to .
Computes the number of bytes in a row-aligned tile with specified number of rows.
The number of rows in a tile.
The number of bytes in a row-aligned tile with specified number of rows.
Computes the number of bytes in a raw (i.e. not decoded) tile.
The zero-based index of a tile.
The number of bytes in a raw tile.
Compute the number of bytes in each row of a tile.
The number of bytes in each row of a tile.
Computes which tile contains the specified coordinates (x, y, z, plane).
The x-coordinate.
The y-coordinate.
The z-coordinate.
The sample plane.
The number of the tile that contains the specified coordinates.
A valid tile number is always returned; out-of-range coordinate values are
clamped to the bounds of the image. The and
parameters are always used in calculating a tile. The parameter
is used if the image is deeper than 1 slice ( > 1).
The parameter is used only if data are organized in separate
planes ( = .SEPARATE).
Checks whether the specified (x, y, z, plane) coordinates are within the bounds of
the image.
The x-coordinate.
The y-coordinate.
The z-coordinate.
The sample plane.
true if the specified coordinates are within the bounds of the image;
otherwise, false.
The parameter is checked against the value of the
tag. The parameter is checked
against the value of the tag. The
parameter is checked against the value of the tag
(if defined). The parameter is checked against the value of
the tag if the data are organized in separate
planes.
Retrives the number of tiles in the image.
The number of tiles in the image.
Returns the custom client data associated with this .
The custom client data associated with this .
Asscociates a custom data with this .
The data to associate.
The previously associated data.
Gets the mode with which the underlying file or stream was opened.
The mode with which the underlying file or stream was opened.
Sets the new mode for the underlying file or stream.
The new mode for the underlying file or stream.
The previous mode with which the underlying file or stream was opened.
Gets the value indicating whether the image data of this has a
tiled organization.
true if the image data of this has a tiled organization or
false if the image data of this is organized in strips.
Gets the value indicating whether the image data was in a different byte-order than
the host computer.
true if the image data was in a different byte-order than the host
computer or false if the TIFF file/stream and local host byte-orders are the
same.
Note that , ,
and
methods already
normally perform byte swapping to local host order if needed.
Also note that and do not
perform byte swapping to local host order.
Gets the value indicating whether the image data returned through the read interface
methods is being up-sampled.
true if the data is returned up-sampled; otherwise, false.
The value returned by this method can be useful to applications that want to
calculate I/O buffer sizes to reflect this usage (though the usual strip and tile size
routines already do this).
Gets the value indicating whether the image data is being returned in MSB-to-LSB
bit order.
true if the data is being returned in MSB-to-LSB bit order (i.e with bit 0 as
the most significant bit); otherwise, false.
Gets the value indicating whether given image data was written in big-endian order.
true if given image data was written in big-endian order; otherwise, false.
Gets the tiff stream.
The tiff stream.
Gets the current row that is being read or written.
The current row that is being read or written.
The current row is updated each time a read or write is done.
Gets the zero-based index of the current directory.
The zero-based index of the current directory.
The zero-based index returned by this method is suitable for use with
the method.
Gets the number of directories in a file.
The number of directories in a file.
Retrieves the file/stream offset of the current directory.
The file/stream offset of the current directory.
Gets the current strip that is being read or written.
The current strip that is being read or written.
The current strip is updated each time a read or write is done.
Gets the current tile that is being read or written.
The current tile that is being read or written.
The current tile is updated each time a read or write is done.
Sets up the data buffer used to read raw (encoded) data from a file.
The data buffer.
The buffer size.
This method is provided for client-control of the I/O buffers used by the library.
Applications need never use this method; it's provided only for "intelligent clients"
that wish to optimize memory usage and/or eliminate potential copy operations that can
occur when working with images that have data stored without compression.
If the is null, then a buffer of appropriate size is
allocated by the library. Otherwise, the caller must guarantee that the buffer is
large enough to hold any individual strip of raw data.
Sets up the data buffer used to write raw (encoded) data to a file.
The data buffer.
The buffer size.
This method is provided for client-control of the I/O buffers used by the library.
Applications need never use this method; it's provided only for "intelligent clients"
that wish to optimize memory usage and/or eliminate potential copy operations that can
occur when working with images that have data stored without compression.
If the is -1 then the buffer size is selected to hold a
complete tile or strip, or at least 8 kilobytes, whichever is greater. If the
is null, then a buffer of appropriate size is
allocated by the library.
Setups the strips.
true if setup successfully; otherwise, false
Verifies that file/stream is writable and that the directory information is
setup properly.
If set to true then ability to write tiles will be verified;
otherwise, ability to write strips will be verified.
The name of the calling method.
true if file/stream is writeable and the directory information is
setup properly; otherwise, false
Releases storage associated with current directory.
Creates a new directory within file/stream.
The newly created directory will not exist on the file/stream till
, ,
or is called.
Returns an indication of whether the current directory is the last directory
in the file.
true if current directory is the last directory in the file;
otherwise, false.
Sets the directory with specified number as the current directory.
The zero-based number of the directory to set as the
current directory.
true if the specified directory was set as current successfully;
otherwise, false
SetDirectory changes the current directory and reads its contents with
.
Sets the directory at specified file/stream offset as the current directory.
The offset from the beginnig of the file/stream to the directory
to set as the current directory.
true if the directory at specified file offset was set as current
successfully; otherwise, false
SetSubDirectory acts like , except the
directory is specified as a file offset instead of an index; this is required for
accessing subdirectories linked through a SubIFD tag (e.g. thumbnail images).
Unlinks the specified directory from the directory chain.
The zero-based number of the directory to unlink.
true if directory was unlinked successfully; otherwise, false.
UnlinkDirectory does not removes directory bytes from the file/stream.
It only makes them unused.
Sets the value(s) of a tag in a TIFF file/stream open for writing.
The tag.
The tag value(s).
true if tag value(s) were set successfully; otherwise, false.
SetField sets the value of a tag or pseudo-tag in the current directory
associated with the open TIFF file/stream. To set the value of a field the file/stream
must have been previously opened for writing with or
;
pseudo-tags can be set whether the file was opened for
reading or writing. The tag is identified by .
The type and number of values in is dependent on the tag
being set. You may want to consult
"Well-known tags and their
value(s) data types" to become familiar with exact data types and calling
conventions required for each tag supported by the library.
A pseudo-tag is a parameter that is used to control the operation of the library but
whose value is not read or written to the underlying file.
The field will be written to the file when/if the directory structure is updated.
Writes the contents of the current directory to the file and setup to create a new
subfile (page) in the same file.
true if the current directory was written successfully;
otherwise, false
Applications only need to call WriteDirectory when writing multiple
subfiles (pages) to a single TIFF file. WriteDirectory is automatically called
by and to write a modified directory if the
file is open for writing.
Writes the current state of the TIFF directory into the file to make what is currently
in the file/stream readable.
true if the current directory was rewritten successfully;
otherwise, false
Unlike , CheckpointDirectory does not free
up the directory data structures in memory, so they can be updated (as strips/tiles
are written) and written again. Reading such a partial file you will at worst get a
TIFF read error for the first strip/tile encountered that is incomplete, but you will
at least get all the valid data in the file before that. When the file is complete,
just use as usual to finish it off cleanly.
Rewrites the contents of the current directory to the file and setup to create a new
subfile (page) in the same file.
true if the current directory was rewritten successfully;
otherwise, false
The RewriteDirectory operates similarly to ,
but can be called with directories previously read or written that already have an
established location in the file. It will rewrite the directory, but instead of place
it at it's old location (as would) it will place them at
the end of the file, correcting the pointer from the preceeding directory or file
header to point to it's new location. This is particularly important in cases where
the size of the directory and pointed to data has grown, so it won’t fit in the space
available at the old location. Note that this will result in the loss of the
previously used directory space.
Prints formatted description of the contents of the current directory to the
specified stream.
Prints formatted description of the contents of the current directory to the
specified stream possibly using specified print options.
The stream.
Prints formatted description of the contents of the current directory to the
specified stream using specified print (formatting) options.
The stream.
The print (formatting) options.
Reads and decodes a scanline of data from an open TIFF file/stream.
Reads and decodes a scanline of data from an open TIFF file/stream.
The buffer to place read and decoded image data to.
The zero-based index of scanline (row) to read.
true if image data were read and decoded successfully; otherwise, false
ReadScanline reads the data for the specified into the
user supplied data buffer . The data are returned
decompressed and, in the native byte- and bit-ordering, but are otherwise packed
(see further below). The must be large enough to hold an
entire scanline of data. Applications should call the
to find out the size (in bytes) of a scanline buffer. Applications should use
or
and specify correct sample plane if
image data are organized in separate planes
( = .SEPARATE).
The library attempts to hide bit- and byte-ordering differences between the image and
the native machine by converting data to the native machine order. Bit reversal is
done if the value of tag is opposite to the native
machine bit order. 16- and 32-bit samples are automatically byte-swapped if the file
was written with a byte order opposite to the native machine byte order.
Reads and decodes a scanline of data from an open TIFF file/stream.
The buffer to place read and decoded image data to.
The zero-based index of scanline (row) to read.
The zero-based index of the sample plane.
true if image data were read and decoded successfully; otherwise, false
ReadScanline reads the data for the specified and
specified sample plane into the user supplied data buffer
. The data are returned decompressed and, in the native
byte- and bit-ordering, but are otherwise packed (see further below). The
must be large enough to hold an entire scanline of data.
Applications should call the to find out the size (in
bytes) of a scanline buffer. Applications may use
or specify 0 for
parameter if image data is contiguous (i.e not organized in separate planes,
= .CONTIG).
The library attempts to hide bit- and byte-ordering differences between the image and
the native machine by converting data to the native machine order. Bit reversal is
done if the value of tag is opposite to the native
machine bit order. 16- and 32-bit samples are automatically byte-swapped if the file
was written with a byte order opposite to the native machine byte order.
Reads and decodes a scanline of data from an open TIFF file/stream.
The buffer to place read and decoded image data to.
The zero-based byte offset in at which
to begin storing read and decoded bytes.
The zero-based index of scanline (row) to read.
The zero-based index of the sample plane.
true if image data were read and decoded successfully; otherwise, false
ReadScanline reads the data for the specified and
specified sample plane into the user supplied data buffer
. The data are returned decompressed and, in the native
byte- and bit-ordering, but are otherwise packed (see further below). The
must be large enough to hold an entire scanline of data.
Applications should call the to find out the size (in
bytes) of a scanline buffer. Applications may use
or specify 0 for
parameter if image data is contiguous (i.e not organized in separate planes,
= .CONTIG).
The library attempts to hide bit- and byte-ordering differences between the image and
the native machine by converting data to the native machine order. Bit reversal is
done if the value of tag is opposite to the native
machine bit order. 16- and 32-bit samples are automatically byte-swapped if the file
was written with a byte order opposite to the native machine byte order.
Encodes and writes a scanline of data to an open TIFF file/stream.
Encodes and writes a scanline of data to an open TIFF file/stream.
The buffer with image data to be encoded and written.
The zero-based index of scanline (row) to place encoded data at.
true if image data were encoded and written successfully; otherwise, false
WriteScanline encodes and writes to a file at the specified
. Applications should use
or
and specify correct sample plane
parameter if image data in a file/stream is organized in separate planes (i.e
= .SEPARATE).
The data are assumed to be uncompressed and in the native bit- and byte-order of the
host machine. The data written to the file is compressed according to the compression
scheme of the current TIFF directory (see further below). If the current scanline is
past the end of the current subfile, the value of
tag is automatically increased to include the scanline (except for
= .SEPARATE, where the
tag cannot be changed once the first data are
written). If the is increased, the values of
and tags are
similarly enlarged to reflect data written past the previous end of image.
The library writes encoded data using the native machine byte order. Correctly
implemented TIFF readers are expected to do any necessary byte-swapping to correctly
process image data with value of tag greater
than 8. The library attempts to hide bit-ordering differences between the image and
the native machine by converting data from the native machine order.
Once data are written to a file/stream for the current directory, the values of
certain tags may not be altered; see
"Well-known tags and their
value(s) data types" for more information.
It is not possible to write scanlines to a file/stream that uses a tiled organization.
The can be used to determine if the file/stream is organized as
tiles or strips.
Encodes and writes a scanline of data to an open TIFF file/stream.
The buffer with image data to be encoded and written.
The zero-based index of scanline (row) to place encoded data at.
The zero-based index of the sample plane.
true if image data were encoded and written successfully; otherwise, false
WriteScanline encodes and writes to a file at the specified
and specified sample plane .
Applications may use or specify 0 for
parameter if image data in a file/stream is contiguous (i.e
not organized in separate planes,
= .CONTIG).
The data are assumed to be uncompressed and in the native bit- and byte-order of the
host machine. The data written to the file is compressed according to the compression
scheme of the current TIFF directory (see further below). If the current scanline is
past the end of the current subfile, the value of
tag is automatically increased to include the scanline (except for
= .SEPARATE, where the
tag cannot be changed once the first data are
written). If the is increased, the values of
and tags are
similarly enlarged to reflect data written past the previous end of image.
The library writes encoded data using the native machine byte order. Correctly
implemented TIFF readers are expected to do any necessary byte-swapping to correctly
process image data with value of tag greater
than 8. The library attempts to hide bit-ordering differences between the image and
the native machine by converting data from the native machine order.
Once data are written to a file/stream for the current directory, the values of
certain tags may not be altered; see
"Well-known tags and their
value(s) data types" for more information.
It is not possible to write scanlines to a file/stream that uses a tiled organization.
The can be used to determine if the file/stream is organized as
tiles or strips.
Encodes and writes a scanline of data to an open TIFF file/stream.
The buffer with image data to be encoded and written.
The zero-based byte offset in at which
to begin reading bytes.
The zero-based index of scanline (row) to place encoded data at.
The zero-based index of the sample plane.
true if image data were encoded and written successfully; otherwise, false
WriteScanline encodes and writes to a file at the specified
and specified sample plane .
Applications may use or specify 0 for
parameter if image data in a file/stream is contiguous (i.e
not organized in separate planes,
= .CONTIG).
The data are assumed to be uncompressed and in the native bit- and byte-order of the
host machine. The data written to the file is compressed according to the compression
scheme of the current TIFF directory (see further below). If the current scanline is
past the end of the current subfile, the value of
tag is automatically increased to include the scanline (except for
= .CONTIG, where the
tag cannot be changed once the first data are
written). If the is increased, the values of
and tags are
similarly enlarged to reflect data written past the previous end of image.
The library writes encoded data using the native machine byte order. Correctly
implemented TIFF readers are expected to do any necessary byte-swapping to correctly
process image data with value of tag greater
than 8. The library attempts to hide bit-ordering differences between the image and
the native machine by converting data from the native machine order.
Once data are written to a file/stream for the current directory, the values of
certain tags may not be altered; see
"Well-known tags and their
value(s) data types" for more information.
It is not possible to write scanlines to a file/stream that uses a tiled organization.
The can be used to determine if the file/stream is organized as
tiles or strips.
Reads the image and decodes it into RGBA format raster.
Reads the image and decodes it into RGBA format raster.
The raster width.
The raster height.
The raster (the buffer to place decoded image data to).
true if the image was successfully read and converted; otherwise,
false is returned if an error was encountered.
ReadRGBAImage reads a strip- or tile-based image into memory, storing the
result in the user supplied RGBA . The raster is assumed to
be an array of times 32-bit entries,
where must be less than or equal to the width of the image
( may be any non-zero size). If the raster dimensions are
smaller than the image, the image data is cropped to the raster bounds. If the raster
height is greater than that of the image, then the image data are placed in the lower
part of the raster. Note that the raster is assumed to be organized such that the
pixel at location (x, y) is [y * width + x]; with the raster
origin in the lower-left hand corner. Please use
if you
want to specify another raster origin.
Raster pixels are 8-bit packed red, green, blue, alpha samples. The
, , , and
should be used to access individual samples. Images without
Associated Alpha matting information have a constant Alpha of 1.0 (255).
ReadRGBAImage converts non-8-bit images by scaling sample values. Palette,
grayscale, bilevel, CMYK, and YCbCr images are converted to RGB transparently. Raster
pixels are returned uncorrected by any colorimetry information present in the directory.
Samples must be either 1, 2, 4, 8, or 16 bits. Colorimetric samples/pixel must be
either 1, 3, or 4 (i.e. SamplesPerPixel minus ExtraSamples).
Palette image colormaps that appear to be incorrectly written as 8-bit values are
automatically scaled to 16-bits.
ReadRGBAImage is just a wrapper around the more general
facilities.
All error messages are directed to the current error handler.
Reads the image and decodes it into RGBA format raster.
The raster width.
The raster height.
The raster (the buffer to place decoded image data to).
if set to true then an error will terminate the
operation; otherwise method will continue processing data until all the possible data
in the image have been requested.
true if the image was successfully read and converted; otherwise, false
is returned if an error was encountered and stopOnError is false.
ReadRGBAImage reads a strip- or tile-based image into memory, storing the
result in the user supplied RGBA . The raster is assumed to
be an array of times 32-bit entries,
where must be less than or equal to the width of the image
( may be any non-zero size). If the raster dimensions are
smaller than the image, the image data is cropped to the raster bounds. If the raster
height is greater than that of the image, then the image data are placed in the lower
part of the raster. Note that the raster is assumed to be organized such that the
pixel at location (x, y) is [y * width + x]; with the raster
origin in the lower-left hand corner. Please use
if you
want to specify another raster origin.
Raster pixels are 8-bit packed red, green, blue, alpha samples. The
, , , and
should be used to access individual samples. Images without
Associated Alpha matting information have a constant Alpha of 1.0 (255).
ReadRGBAImage converts non-8-bit images by scaling sample values. Palette,
grayscale, bilevel, CMYK, and YCbCr images are converted to RGB transparently. Raster
pixels are returned uncorrected by any colorimetry information present in the directory.
Samples must be either 1, 2, 4, 8, or 16 bits. Colorimetric samples/pixel must be
either 1, 3, or 4 (i.e. SamplesPerPixel minus ExtraSamples).
Palette image colormaps that appear to be incorrectly written as 8-bit values are
automatically scaled to 16-bits.
ReadRGBAImage is just a wrapper around the more general
facilities.
All error messages are directed to the current error handler.
Reads the image and decodes it into RGBA format raster using specified raster origin.
Reads the image and decodes it into RGBA format raster using specified raster origin.
The raster width.
The raster height.
The raster (the buffer to place decoded image data to).
The raster origin position.
true if the image was successfully read and converted; otherwise, false
is returned if an error was encountered.
ReadRGBAImageOriented reads a strip- or tile-based image into memory, storing the
result in the user supplied RGBA . The raster is assumed to
be an array of times 32-bit entries,
where must be less than or equal to the width of the image
( may be any non-zero size). If the raster dimensions are
smaller than the image, the image data is cropped to the raster bounds. If the raster
height is greater than that of the image, then the image data placement depends on
. Note that the raster is assumed to be organized such
that the pixel at location (x, y) is [y * width + x]; with
the raster origin specified by parameter.
When ReadRGBAImageOriented is used with .BOTLEFT for
the the produced result is the same as retuned by
.
Raster pixels are 8-bit packed red, green, blue, alpha samples. The
, , , and
should be used to access individual samples. Images without
Associated Alpha matting information have a constant Alpha of 1.0 (255).
ReadRGBAImageOriented converts non-8-bit images by scaling sample values.
Palette, grayscale, bilevel, CMYK, and YCbCr images are converted to RGB transparently.
Raster pixels are returned uncorrected by any colorimetry information present in
the directory.
Samples must be either 1, 2, 4, 8, or 16 bits. Colorimetric samples/pixel must be
either 1, 3, or 4 (i.e. SamplesPerPixel minus ExtraSamples).
Palette image colormaps that appear to be incorrectly written as 8-bit values are
automatically scaled to 16-bits.
ReadRGBAImageOriented is just a wrapper around the more general
facilities.
All error messages are directed to the current error handler.
Reads the image and decodes it into RGBA format raster using specified raster origin.
The raster width.
The raster height.
The raster (the buffer to place decoded image data to).
The raster origin position.
if set to true then an error will terminate the
operation; otherwise method will continue processing data until all the possible data
in the image have been requested.
true if the image was successfully read and converted; otherwise, false
is returned if an error was encountered and stopOnError is false.
ReadRGBAImageOriented reads a strip- or tile-based image into memory, storing the
result in the user supplied RGBA . The raster is assumed to
be an array of times 32-bit entries,
where must be less than or equal to the width of the image
( may be any non-zero size). If the raster dimensions are
smaller than the image, the image data is cropped to the raster bounds. If the raster
height is greater than that of the image, then the image data placement depends on
. Note that the raster is assumed to be organized such
that the pixel at location (x, y) is [y * width + x]; with
the raster origin specified by parameter.
When ReadRGBAImageOriented is used with .BOTLEFT for
the the produced result is the same as retuned by
.
Raster pixels are 8-bit packed red, green, blue, alpha samples. The
, , , and
should be used to access individual samples. Images without
Associated Alpha matting information have a constant Alpha of 1.0 (255).
ReadRGBAImageOriented converts non-8-bit images by scaling sample values.
Palette, grayscale, bilevel, CMYK, and YCbCr images are converted to RGB transparently.
Raster pixels are returned uncorrected by any colorimetry information present in
the directory.
Samples must be either 1, 2, 4, 8, or 16 bits. Colorimetric samples/pixel must be
either 1, 3, or 4 (i.e. SamplesPerPixel minus ExtraSamples).
Palette image colormaps that appear to be incorrectly written as 8-bit values are
automatically scaled to 16-bits.
ReadRGBAImageOriented is just a wrapper around the more general
facilities.
All error messages are directed to the current error handler.
Reads a whole strip of a strip-based image, decodes it and converts it to RGBA format.
The row.
The RGBA raster.
true if the strip was successfully read and converted; otherwise,
false
ReadRGBAStrip reads a single strip of a strip-based image into memory, storing
the result in the user supplied RGBA . If specified strip is
the last strip, then it will only contain the portion of the strip that is actually
within the image space. The raster is assumed to be an array of width times
rowsperstrip 32-bit entries, where width is the width of the image
() and rowsperstrip is the maximum lines in a strip
().
The value should be the row of the first row in the strip
(strip * rowsperstrip, zero based).
Note that the raster is assumed to be organized such that the pixel at location (x, y)
is [y * width + x]; with the raster origin in the lower-left
hand corner of the strip. That is bottom to top organization. When reading a partial
last strip in the file the last line of the image will begin at the beginning of
the buffer.
Raster pixels are 8-bit packed red, green, blue, alpha samples. The
, , , and
should be used to access individual samples. Images without
Associated Alpha matting information have a constant Alpha of 1.0 (255).
See for more details on how various image types are
converted to RGBA values.
Samples must be either 1, 2, 4, 8, or 16 bits. Colorimetric samples/pixel must be
either 1, 3, or 4 (i.e. SamplesPerPixel minus ExtraSamples).
Palette image colormaps that appear to be incorrectly written as 8-bit values are
automatically scaled to 16-bits.
ReadRGBAStrip's main advantage over the similar
function is that for
large images a single buffer capable of holding the whole image doesn't need to be
allocated, only enough for one strip. The function does a
similar operation for tiled images.
ReadRGBAStrip is just a wrapper around the more general
facilities.
All error messages are directed to the current error handler.
Reads a whole tile of a tile-based image, decodes it and converts it to RGBA format.
The column.
The row.
The RGBA raster.
true if the strip was successfully read and converted; otherwise,
false
ReadRGBATile reads a single tile of a tile-based image into memory,
storing the result in the user supplied RGBA . The raster is
assumed to be an array of width times length 32-bit entries, where width is the width
of the tile () and length is the height of a tile
().
The and values are the offsets from the
top left corner of the image to the top left corner of the tile to be read. They must
be an exact multiple of the tile width and length.
Note that the raster is assumed to be organized such that the pixel at location (x, y)
is [y * width + x]; with the raster origin in the lower-left
hand corner of the tile. That is bottom to top organization. Edge tiles which partly
fall off the image will be filled out with appropriate zeroed areas.
Raster pixels are 8-bit packed red, green, blue, alpha samples. The
, , , and
should be used to access individual samples. Images without
Associated Alpha matting information have a constant Alpha of 1.0 (255).
See for more details on how various image types are
converted to RGBA values.
Samples must be either 1, 2, 4, 8, or 16 bits. Colorimetric samples/pixel must be
either 1, 3, or 4 (i.e. SamplesPerPixel minus ExtraSamples).
Palette image colormaps that appear to be incorrectly written as 8-bit values are
automatically scaled to 16-bits.
ReadRGBATile's main advantage over the similar
function is that for
large images a single buffer capable of holding the whole image doesn't need to be
allocated, only enough for one tile. The function does a
similar operation for stripped images.
ReadRGBATile is just a wrapper around the more general
facilities.
All error messages are directed to the current error handler.
Check the image to see if it can be converted to RGBA format.
The error message (if any) gets placed here.
true if the image can be converted to RGBA format; otherwise,
false is returned and contains the reason why it
is being rejected.
To convert the image to RGBA format please use
,
,
or
Convertible images should follow this rules: samples must be either 1, 2, 4, 8, or
16 bits; colorimetric samples/pixel must be either 1, 3, or 4 (i.e. SamplesPerPixel
minus ExtraSamples).
Gets the name of the file or ID string for this .
The name of the file or ID string for this .
If this was created using method then
value of fileName parameter of method is returned. If this
was created using
then value of name parameter of
method is returned.
Sets the new ID string for this .
The ID string for this .
The previous file name or ID string for this .
Please note, that is an arbitrary string used as
ID for this . It's not required to be a file name or anything
meaningful at all.
Invokes the library-wide error handling methods to (normally) write an error message
to the .
An instance of the class. Can be null.
The method where an error is detected.
A composite format string (see Remarks).
An object array that contains zero or more objects to format.
The is a composite format string that uses the same format as
method. The parameter, if
not null, is printed before the message; it typically is used to identify the
method in which an error is detected.
Applications that desire to capture control in the event of an error should use
to override the default error and warning handler.
Invokes the library-wide error handling methods to (normally) write an error message
to the .
Invokes the library-wide error handling methods to (normally) write an error message
to the .
The method where an error is detected.
A composite format string (see Remarks).
An object array that contains zero or more objects to format.
The is a composite format string that uses the same format as
method. The parameter, if
not null, is printed before the message; it typically is used to identify the
method in which an error is detected.
Applications that desire to capture control in the event of an error should use
to override the default error and warning handler.
Invokes the library-wide error handling methods to (normally) write an error message
to the .
An instance of the class. Can be null.
The client data to be passed to error handler.
The method where an error is detected.
A composite format string (see Remarks).
An object array that contains zero or more objects to format.
The is a composite format string that uses the same format as
method. The parameter, if
not null, is printed before the message; it typically is used to identify the
method in which an error is detected.
The parameter can be anything you want. It will be passed
unchanged to the error handler. Default error handler does not use it. Only custom
error handlers may make use of it.
Applications that desire to capture control in the event of an error should use
to override the default error and warning handler.
Invokes the library-wide error handling methods to (normally) write an error message
to the and passes client data to the error handler.
Invokes the library-wide error handling methods to (normally) write an error message
to the .
The client data to be passed to error handler.
The method where an error is detected.
A composite format string (see Remarks).
An object array that contains zero or more objects to format.
The is a composite format string that uses the same format as
method. The parameter, if
not null, is printed before the message; it typically is used to identify the
method in which an error is detected.
The parameter can be anything you want. It will be passed
unchanged to the error handler. Default error handler does not use it. Only custom
error handlers may make use of it.
Applications that desire to capture control in the event of an error should use
to override the default error and warning handler.
Invokes the library-wide warning handling methods to (normally) write a warning message
to the .
An instance of the class. Can be null.
The method in which a warning is detected.
A composite format string (see Remarks).
An object array that contains zero or more objects to format.
The is a composite format string that uses the same format as
method. The parameter,
if not null, is printed before the message; it typically is used to identify the
method in which a warning is detected.
Applications that desire to capture control in the event of a warning should use
to override the default error and warning handler.
Invokes the library-wide warning handling methods to (normally) write a warning message
to the .
Invokes the library-wide warning handling methods to (normally) write a warning message
to the .
The method in which a warning is detected.
A composite format string (see Remarks).
An object array that contains zero or more objects to format.
The is a composite format string that uses the same format as
method. The parameter,
if not null, is printed before the message; it typically is used to identify the
method in which a warning is detected.
Applications that desire to capture control in the event of a warning should use
to override the default error and warning handler.
Invokes the library-wide warning handling methods to (normally) write a warning message
to the and passes client data to the warning handler.
An instance of the class. Can be null.
The client data to be passed to warning handler.
The method in which a warning is detected.
A composite format string (see Remarks).
An object array that contains zero or more objects to format.
The is a composite format string that uses the same format as
method. The parameter, if
not null, is printed before the message; it typically is used to identify the
method in which a warning is detected.
The parameter can be anything you want. It will be passed
unchanged to the warning handler. Default warning handler does not use it. Only custom
warning handlers may make use of it.
Applications that desire to capture control in the event of a warning should use
to override the default error and warning handler.
Invokes the library-wide warning handling methods to (normally) write a warning message
to the and passes client data to the warning handler.
Invokes the library-wide warning handling methods to (normally) write a warning message
to the and passes client data to the warning handler.
The client data to be passed to warning handler.
The method in which a warning is detected.
A composite format string (see Remarks).
An object array that contains zero or more objects to format.
The is a composite format string that uses the same format as
method. The parameter, if
not null, is printed before the message; it typically is used to identify the
method in which a warning is detected.
The parameter can be anything you want. It will be passed
unchanged to the warning handler. Default warning handler does not use it. Only custom
warning handlers may make use of it.
Applications that desire to capture control in the event of a warning should use
to override the default error and warning handler.
Sets an instance of the class as custom library-wide
error and warning handler.
An instance of the class
to set as custom library-wide error and warning handler.
Previous error handler or null if there was no error handler set.
Sets the tag extender method.
The tag extender method.
Previous tag extender method.
Extender method is called upon creation of each instance of object.
Reads and decodes a tile of data from an open TIFF file/stream.
The buffer to place read and decoded image data to.
The zero-based byte offset in at which
to begin storing read and decoded bytes.
The x-coordinate of the pixel within a tile to be read and decoded.
The y-coordinate of the pixel within a tile to be read and decoded.
The z-coordinate of the pixel within a tile to be read and decoded.
The zero-based index of the sample plane.
The number of bytes in the decoded tile or -1 if an error occurred.
The tile to read and decode is selected by the (x, y, z, plane) coordinates (i.e.
ReadTile returns the data for the tile containing the specified coordinates.
The data placed in are returned decompressed and, typically,
in the native byte- and bit-ordering, but are otherwise packed (see further below).
The buffer must be large enough to hold an entire tile of data. Applications should
call the to find out the size (in bytes) of a tile buffer.
The and parameters are always used by
ReadTile. The parameter is used if the image is deeper
than 1 slice (a value of > 1). In other cases the
value of is ignored. The parameter is
used only if data are organized in separate planes
( = .SEPARATE). In other
cases the value of is ignored.
The library attempts to hide bit- and byte-ordering differences between the image and
the native machine by converting data to the native machine order. Bit reversal is
done if the value of tag is opposite to the native
machine bit order. 16- and 32-bit samples are automatically byte-swapped if the file
was written with a byte order opposite to the native machine byte order.
Reads a tile of data from an open TIFF file/stream, decompresses it and places
specified amount of decompressed bytes into the user supplied buffer.
The zero-based index of the tile to read.
The buffer to place decompressed tile bytes to.
The zero-based byte offset in buffer at which to begin storing
decompressed tile bytes.
The maximum number of decompressed tile bytes to be stored
to buffer.
The actual number of bytes of data that were placed in buffer or -1 if an
error was encountered.
The value of is a "raw tile number". That is, the caller
must take into account whether or not the data are organized in separate planes
( = .SEPARATE).
automatically does this when converting an (x, y, z, plane)
coordinate quadruple to a tile number.
To read a full tile of data the data buffer should typically be at least as
large as the number returned by . If the -1 passed in
parameter, the whole tile will be read. You should be sure
you have enough space allocated for the buffer.
The library attempts to hide bit- and byte-ordering differences between the
image and the native machine by converting data to the native machine order. Bit
reversal is done if the tag is opposite to the native
machine bit order. 16- and 32-bit samples are automatically byte-swapped if the file
was written with a byte order opposite to the native machine byte order.
Reads the undecoded contents of a tile of data from an open TIFF file/stream and places
specified amount of read bytes into the user supplied buffer.
The zero-based index of the tile to read.
The buffer to place read tile bytes to.
The zero-based byte offset in buffer at which to begin storing
read tile bytes.
The maximum number of read tile bytes to be stored to buffer.
The actual number of bytes of data that were placed in buffer or -1 if an
error was encountered.
The value of is a "raw tile number". That is, the caller
must take into account whether or not the data are organized in separate planes
( = .SEPARATE).
automatically does this when converting an (x, y, z, plane)
coordinate quadruple to a tile number.
To read a full tile of data the data buffer should typically be at least as
large as the number returned by . If the -1 passed in
parameter, the whole tile will be read. You should be sure
you have enough space allocated for the buffer.
Encodes and writes a tile of data to an open TIFF file/stream.
Encodes and writes a tile of data to an open TIFF file/stream.
The buffer with image data to be encoded and written.
The x-coordinate of the pixel within a tile to be encoded and written.
The y-coordinate of the pixel within a tile to be encoded and written.
The z-coordinate of the pixel within a tile to be encoded and written.
The zero-based index of the sample plane.
The number of encoded and written bytes or -1 if an error occurred.
The tile to place encoded data is selected by the (x, y, z, plane) coordinates (i.e.
WriteTile writes data to the tile containing the specified coordinates.
WriteTile (potentially) encodes the data and writes
it to open file/stream. The buffer must contain an entire tile of data. Applications
should call the to find out the size (in bytes) of a tile buffer.
The and parameters are always used by
WriteTile. The parameter is used if the image is deeper
than 1 slice (a value of > 1). In other cases the
value of is ignored. The parameter is
used only if data are organized in separate planes
( = .SEPARATE). In other
cases the value of is ignored.
A correct value for the tag must be setup before
writing; WriteTile does not support automatically growing the image on
each write (as does).
Encodes and writes a tile of data to an open TIFF file/stream.
The buffer with image data to be encoded and written.
The zero-based byte offset in at which
to begin reading bytes to be encoded and written.
The x-coordinate of the pixel within a tile to be encoded and written.
The y-coordinate of the pixel within a tile to be encoded and written.
The z-coordinate of the pixel within a tile to be encoded and written.
The zero-based index of the sample plane.
The number of encoded and written bytes or -1 if an error occurred.
The tile to place encoded data is selected by the (x, y, z, plane) coordinates (i.e.
WriteTile writes data to the tile containing the specified coordinates.
WriteTile (potentially) encodes the data and writes
it to open file/stream. The buffer must contain an entire tile of data. Applications
should call the to find out the size (in bytes) of a tile buffer.
The and parameters are always used by
WriteTile. The parameter is used if the image is deeper
than 1 slice (a value of > 1). In other cases the
value of is ignored. The parameter is
used only if data are organized in separate planes
( = .SEPARATE). In other
cases the value of is ignored.
A correct value for the tag must be setup before
writing; WriteTile does not support automatically growing the image on
each write (as does).
Reads a strip of data from an open TIFF file/stream, decompresses it and places
specified amount of decompressed bytes into the user supplied buffer.
The zero-based index of the strip to read.
The buffer to place decompressed strip bytes to.
The zero-based byte offset in buffer at which to begin storing
decompressed strip bytes.
The maximum number of decompressed strip bytes to be stored
to buffer.
The actual number of bytes of data that were placed in buffer or -1 if an
error was encountered.
The value of is a "raw strip number". That is, the caller
must take into account whether or not the data are organized in separate planes
( = .SEPARATE).
automatically does this when converting an (row, plane) to a
strip index.
To read a full strip of data the data buffer should typically be at least
as large as the number returned by . If the -1 passed in
parameter, the whole strip will be read. You should be sure
you have enough space allocated for the buffer.
The library attempts to hide bit- and byte-ordering differences between the
image and the native machine by converting data to the native machine order. Bit
reversal is done if the tag is opposite to the native
machine bit order. 16- and 32-bit samples are automatically byte-swapped if the file
was written with a byte order opposite to the native machine byte order.
Reads the undecoded contents of a strip of data from an open TIFF file/stream and
places specified amount of read bytes into the user supplied buffer.
The zero-based index of the strip to read.
The buffer to place read bytes to.
The zero-based byte offset in buffer at which to begin storing
read bytes.
The maximum number of read bytes to be stored to buffer.
The actual number of bytes of data that were placed in buffer or -1 if an
error was encountered.
The value of is a "raw strip number". That is, the caller
must take into account whether or not the data are organized in separate planes
( = .SEPARATE).
automatically does this when converting an (row, plane) to a
strip index.
To read a full strip of data the data buffer should typically be at least
as large as the number returned by . If the -1 passed in
parameter, the whole strip will be read. You should be sure
you have enough space allocated for the buffer.
Encodes and writes a strip of data to an open TIFF file/stream.
The zero-based index of the strip to write.
The buffer with image data to be encoded and written.
The maximum number of strip bytes to be read from
.
The number of encoded and written bytes or -1 if an error occurred.
Encodes and writes a strip of data to an open TIFF file/stream.
WriteEncodedStrip encodes bytes of raw data from
and append the result to the specified strip; replacing any
previously written data. Note that the value of is a "raw
strip number". That is, the caller must take into account whether or not the data are
organized in separate planes
( = .SEPARATE).
automatically does this when converting an (row, plane) to
a strip index.
If there is no space for the strip, the value of
tag is automatically increased to include the strip (except for
= .SEPARATE, where the
tag cannot be changed once the first data are
written). If the is increased, the values of
and tags are
similarly enlarged to reflect data written past the previous end of image.
The library writes encoded data using the native machine byte order. Correctly
implemented TIFF readers are expected to do any necessary byte-swapping to correctly
process image data with value of tag greater
than 8.
Encodes and writes a strip of data to an open TIFF file/stream.
The zero-based index of the strip to write.
The buffer with image data to be encoded and written.
The zero-based byte offset in at which
to begin reading bytes to be encoded and written.
The maximum number of strip bytes to be read from
.
The number of encoded and written bytes or -1 if an error occurred.
WriteEncodedStrip encodes bytes of raw data from
and append the result to the specified strip; replacing any
previously written data. Note that the value of is a "raw
strip number". That is, the caller must take into account whether or not the data are
organized in separate planes
( = .SEPARATE).
automatically does this when converting an (row, plane) to
a strip index.
If there is no space for the strip, the value of
tag is automatically increased to include the strip (except for
= .SEPARATE, where the
tag cannot be changed once the first data are
written). If the is increased, the values of
and tags are
similarly enlarged to reflect data written past the previous end of image.
The library writes encoded data using the native machine byte order. Correctly
implemented TIFF readers are expected to do any necessary byte-swapping to correctly
process image data with value of tag greater
than 8.
Writes a strip of raw data to an open TIFF file/stream.
Writes a strip of raw data to an open TIFF file/stream.
The zero-based index of the strip to write.
The buffer with raw image data to be written.
The maximum number of strip bytes to be read from
.
The number of written bytes or -1 if an error occurred.
WriteRawStrip appends bytes of raw data from
to the specified strip; replacing any
previously written data. Note that the value of is a "raw
strip number". That is, the caller must take into account whether or not the data are
organized in separate planes
( = .SEPARATE).
automatically does this when converting an (row, plane) to
a strip index.
If there is no space for the strip, the value of
tag is automatically increased to include the strip (except for
= .SEPARATE, where the
tag cannot be changed once the first data are
written). If the is increased, the values of
and tags are
similarly enlarged to reflect data written past the previous end of image.
Writes a strip of raw data to an open TIFF file/stream.
The zero-based index of the strip to write.
The buffer with raw image data to be written.
The zero-based byte offset in at which
to begin reading bytes to be written.
The maximum number of strip bytes to be read from
.
The number of written bytes or -1 if an error occurred.
WriteRawStrip appends bytes of raw data from
to the specified strip; replacing any
previously written data. Note that the value of is a "raw
strip number". That is, the caller must take into account whether or not the data are
organized in separate planes
( = .SEPARATE).
automatically does this when converting an (row, plane) to
a strip index.
If there is no space for the strip, the value of
tag is automatically increased to include the strip (except for
= .SEPARATE, where the
tag cannot be changed once the first data are
written). If the is increased, the values of
and tags are
similarly enlarged to reflect data written past the previous end of image.
Encodes and writes a tile of data to an open TIFF file/stream.
Encodes and writes a tile of data to an open TIFF file/stream.
The zero-based index of the tile to write.
The buffer with image data to be encoded and written.
The maximum number of tile bytes to be read from
.
The number of encoded and written bytes or -1 if an error occurred.
WriteEncodedTile encodes bytes of raw data from
and append the result to the end of the specified tile. Note
that the value of is a "raw tile number". That is, the caller
must take into account whether or not the data are organized in separate planes
( = .SEPARATE).
automatically does this when converting an (x, y, z, plane)
coordinate quadruple to a tile number.
There must be space for the data. The function clamps individual writes to a tile to
the tile size, but does not (and can not) check that multiple writes to the same tile
were performed.
A correct value for the tag must be setup before
writing; WriteEncodedTile does not support automatically growing the image on
each write (as does).
The library writes encoded data using the native machine byte order. Correctly
implemented TIFF readers are expected to do any necessary byte-swapping to correctly
process image data with value of tag greater
than 8.
Encodes and writes a tile of data to an open TIFF file/stream.
The zero-based index of the tile to write.
The buffer with image data to be encoded and written.
The zero-based byte offset in at which
to begin reading bytes to be encoded and written.
The maximum number of tile bytes to be read from
.
The number of encoded and written bytes or -1 if an error occurred.
WriteEncodedTile encodes bytes of raw data from
and append the result to the end of the specified tile. Note
that the value of is a "raw tile number". That is, the caller
must take into account whether or not the data are organized in separate planes
( = .SEPARATE).
automatically does this when converting an (x, y, z, plane)
coordinate quadruple to a tile number.
There must be space for the data. The function clamps individual writes to a tile to
the tile size, but does not (and can not) check that multiple writes to the same tile
were performed.
A correct value for the tag must be setup before
writing; WriteEncodedTile does not support automatically growing the image on
each write (as does).
The library writes encoded data using the native machine byte order. Correctly
implemented TIFF readers are expected to do any necessary byte-swapping to correctly
process image data with value of tag greater
than 8.
Writes a tile of raw data to an open TIFF file/stream.
Writes a tile of raw data to an open TIFF file/stream.
The zero-based index of the tile to write.
The buffer with raw image data to be written.
The maximum number of tile bytes to be read from
.
The number of written bytes or -1 if an error occurred.
WriteRawTile appends bytes of raw data to the end of
the specified tile. Note that the value of is a "raw tile
number". That is, the caller must take into account whether or not the data are
organized in separate planes
( = .SEPARATE).
automatically does this when converting an (x, y, z, plane)
coordinate quadruple to a tile number.
There must be space for the data. The function clamps individual writes to a tile to
the tile size, but does not (and can not) check that multiple writes to the same tile
were performed.
A correct value for the tag must be setup before
writing; WriteRawTile does not support automatically growing the image on
each write (as does).
Writes a tile of raw data to an open TIFF file/stream.
The zero-based index of the tile to write.
The buffer with raw image data to be written.
The zero-based byte offset in at which
to begin reading bytes to be written.
The maximum number of tile bytes to be read from
.
The number of written bytes or -1 if an error occurred.
WriteRawTile appends bytes of raw data to the end of
the specified tile. Note that the value of is a "raw tile
number". That is, the caller must take into account whether or not the data are
organized in separate planes
( = .SEPARATE).
automatically does this when converting an (x, y, z, plane)
coordinate quadruple to a tile number.
There must be space for the data. The function clamps individual writes to a tile to
the tile size, but does not (and can not) check that multiple writes to the same tile
were performed.
A correct value for the tag must be setup before
writing; WriteRawTile does not support automatically growing the image on
each write (as does).
Sets the current write offset.
The write offset.
This should only be used to set the offset to a known previous location
(very carefully), or to 0 so that the next write gets appended to the end of the file.
Gets the number of bytes occupied by the item of given type.
The type.
The number of bytes occupied by the or 0 if unknown
data type is supplied.
Swaps the bytes in a single 16-bit item.
The value to swap bytes in.
Swaps the bytes in a single 32-bit item.
The value to swap bytes in.
Swaps the bytes in a single double-precision floating-point number.
The value to swap bytes in.
Swaps the bytes in specified number of values in the array of 16-bit items.
Swaps the bytes in specified number of values in the array of 16-bit items.
The array to swap bytes in.
The number of items to swap bytes in.
Swaps the bytes in specified number of values in the array of 16-bit items starting at
specified offset.
The array to swap bytes in.
The zero-based offset in at
which to begin swapping bytes.
The number of items to swap bytes in.
Swaps the bytes in specified number of values in the array of triples (24-bit items).
Swaps the bytes in specified number of values in the array of triples (24-bit items).
The array to swap bytes in.
The number of items to swap bytes in.
Swaps the bytes in specified number of values in the array of triples (24-bit items)
starting at specified offset.
The array to swap bytes in.
The zero-based offset in at
which to begin swapping bytes.
The number of items to swap bytes in.
Swaps the bytes in specified number of values in the array of 32-bit items.
Swaps the bytes in specified number of values in the array of 32-bit items.
The array to swap bytes in.
The number of items to swap bytes in.
Swaps the bytes in specified number of values in the array of 32-bit items
starting at specified offset.
The array to swap bytes in.
The zero-based offset in at
which to begin swapping bytes.
The number of items to swap bytes in.
Swaps the bytes in specified number of values in the array of double-precision
floating-point numbers.
Swaps the bytes in specified number of values in the array of double-precision
floating-point numbers.
The array to swap bytes in.
The number of items to swap bytes in.
Swaps the bytes in specified number of values in the array of double-precision
floating-point numbers starting at specified offset.
The array to swap bytes in.
The zero-based offset in at
which to begin swapping bytes.
The number of items to swap bytes in.
Replaces specified number of bytes in with the
equivalent bit-reversed bytes.
Replaces specified number of bytes in with the
equivalent bit-reversed bytes.
The buffer to replace bytes in.
The number of bytes to process.
This operation is performed with a lookup table, which can be retrieved using the
method.
Replaces specified number of bytes in with the
equivalent bit-reversed bytes starting at specified offset.
The buffer to replace bytes in.
The zero-based offset in at
which to begin processing bytes.
The number of bytes to process.
This operation is performed with a lookup table, which can be retrieved using the
method.
Retrieves a bit reversal table.
if set to true then bit reversal table will be
retrieved; otherwise, the table that do not reverse bit values will be retrieved.
The bit reversal table.
If is false then the table that do not
reverse bit values will be retrieved. It is a lookup table that can be used as an
identity function; i.e. NoBitRevTable[n] == n.
Converts a byte buffer into array of 32-bit values.
The byte buffer.
The zero-based offset in at
which to begin converting bytes.
The number of bytes to convert.
The array of 32-bit values.
Converts array of 32-bit values into array of bytes.
The array of 32-bit values.
The zero-based offset in at
which to begin converting bytes.
The number of 32-bit values to convert.
The byte array to store converted values at.
The zero-based offset in at
which to begin storing converted values.
Converts a byte buffer into array of 16-bit values.
The byte buffer.
The zero-based offset in at
which to begin converting bytes.
The number of bytes to convert.
The array of 16-bit values.
Converts array of 16-bit values into array of bytes.
The array of 16-bit values.
The zero-based offset in at
which to begin converting bytes.
The number of 16-bit values to convert.
The byte array to store converted values at.
The zero-based offset in at
which to begin storing converted values.
Base class for all codecs within the library.
A codec is a class that implements decoding, encoding, or decoding and encoding of a
compression algorithm.
The library provides a collection of builtin codecs. More codecs may be registered
through calls to the library and/or the builtin implementations may be overridden.
An instance of .
Compression scheme this codec impelements.
Codec name.
Initializes a new instance of the class.
An instance of class.
The compression scheme for the codec.
The name of the codec.
Gets a value indicating whether this codec can encode data.
true if this codec can encode data; otherwise, false.
Gets a value indicating whether this codec can decode data.
true if this codec can decode data; otherwise, false.
Initializes this instance.
true if initialized successfully
Setups the decoder part of the codec.
true if this codec successfully setup its decoder part and can decode data;
otherwise, false.
SetupDecode is called once before
.
Prepares the decoder part of the codec for a decoding.
The zero-based sample plane index.
true if this codec successfully prepared its decoder part and ready
to decode data; otherwise, false.
PreDecode is called after and before decoding.
Decodes one row of image data.
The buffer to place decoded image data to.
The zero-based byte offset in at
which to begin storing decoded bytes.
The number of decoded bytes that should be placed
to .
The zero-based sample plane index.
true if image data was decoded successfully; otherwise, false.
Decodes one strip of image data.
The buffer to place decoded image data to.
The zero-based byte offset in at
which to begin storing decoded bytes.
The number of decoded bytes that should be placed
to .
The zero-based sample plane index.
true if image data was decoded successfully; otherwise, false.
Decodes one tile of image data.
The buffer to place decoded image data to.
The zero-based byte offset in at
which to begin storing decoded bytes.
The number of decoded bytes that should be placed
to .
The zero-based sample plane index.
true if image data was decoded successfully; otherwise, false.
Setups the encoder part of the codec.
true if this codec successfully setup its encoder part and can encode data;
otherwise, false.
SetupEncode is called once before
.
Prepares the encoder part of the codec for a encoding.
The zero-based sample plane index.
true if this codec successfully prepared its encoder part and ready
to encode data; otherwise, false.
PreEncode is called after and before encoding.
Performs any actions after encoding required by the codec.
true if all post-encode actions succeeded; otherwise, false
PostEncode is called after encoding and can be used to release any external
resources needed during encoding.
Encodes one row of image data.
The buffer with image data to be encoded.
The zero-based byte offset in at
which to begin read image data.
The maximum number of encoded bytes that can be placed
to .
The zero-based sample plane index.
true if image data was encoded successfully; otherwise, false.
Encodes one strip of image data.
The buffer with image data to be encoded.
The zero-based byte offset in at
which to begin read image data.
The maximum number of encoded bytes that can be placed
to .
The zero-based sample plane index.
true if image data was encoded successfully; otherwise, false.
Encodes one tile of image data.
The buffer with image data to be encoded.
The zero-based byte offset in at
which to begin read image data.
The maximum number of encoded bytes that can be placed
to .
The zero-based sample plane index.
true if image data was encoded successfully; otherwise, false.
Flushes any internal data buffers and terminates current operation.
Seeks the specified row in the strip being processed.
The row to seek.
true if specified row was successfully found; otherwise, false
Cleanups the state of the codec.
Cleanup is called when codec is no longer needed (won't be used) and can be
used for example to restore tag methods that were substituted.
Calculates and/or constrains a strip size.
The proposed strip size (may be zero or negative).
A strip size to use.
Calculate and/or constrains a tile size
The proposed tile width upon the call / tile width to use after the call.
The proposed tile height upon the call / tile height to use after the call.
Default error handler implementation.
TiffErrorHandler provides error and warning handling methods that write an
error or a warning messages to the .
Applications that desire to capture control in the event of an error or a warning should
set their custom error and warning handler using method.
Handles an error by writing it text to the .
An instance of the class. Can be null.
The method where an error is detected.
A composite format string (see Remarks).
An object array that contains zero or more objects to format.
The is a composite format string that uses the same format as
method. The parameter, if
not null, is printed before the message; it typically is used to identify the
method in which an error is detected.
Handles an error by writing it text to the .
An instance of the class. Can be null.
A client data.
The method where an error is detected.
A composite format string (see Remarks).
An object array that contains zero or more objects to format.
The is a composite format string that uses the same format as
method. The parameter, if
not null, is printed before the message; it typically is used to identify the
method in which an error is detected.
The parameter can be anything. Its value and meaning is
defined by an application and not the library.
Handles a warning by writing it text to the .
An instance of the class. Can be null.
The method where a warning is detected.
A composite format string (see Remarks).
An object array that contains zero or more objects to format.
The is a composite format string that uses the same format as
method. The parameter, if
not null, is printed before the message; it typically is used to identify the
method in which a warning is detected.
Handles a warning by writing it text to the .
An instance of the class. Can be null.
A client data.
The method where a warning is detected.
A composite format string (see Remarks).
An object array that contains zero or more objects to format.
The is a composite format string that uses the same format as
method. The parameter, if
not null, is printed before the message; it typically is used to identify the
method in which a warning is detected.
The parameter can be anything. Its value and meaning is
defined by an application and not the library.
Represents a TIFF field information.
TiffFieldInfo describes a field. It provides information about field name, type,
number of values etc.
marker for variable length tags
marker for SamplesPerPixel-bound tags
marker for integer variable length tags
Initializes a new instance of the class.
The tag to describe.
The number of values to read when reading field information or
one of , and .
The number of values to write when writing field information
or one of , and .
The type of the field value.
Index of the bit to use in "Set Fields Vector" when this instance
is merged into field info collection. Take a look at class.
If true, then it is permissible to set the tag's value even
after writing has commenced.
If true, then number of value elements should be passed to
method as second parameter (right after tag type AND
before value itself).
The name (description) of the tag this instance describes.
Returns a that represents this instance.
A that represents this instance.
The tag described by this instance.
Number of values to read when reading field information or
one of , and .
Number of values to write when writing field information or
one of , and .
Type of the field values.
Index of the bit to use in "Set Fields Vector" when this instance
is merged into field info collection. Take a look at class.
If true, then it is permissible to set the tag's value even after writing has commenced.
If true, then number of value elements should be passed to
method as second parameter (right after tag type AND before values itself).
The name (or description) of the tag this instance describes.
RGBA-style image support. Provides methods for decoding images into RGBA (or other) format.
TiffRgbaImage provide a high-level interface through which TIFF images may be read
into memory. Images may be strip- or tile-based and have a variety of different
characteristics: bits/sample, samples/pixel, photometric, etc. The target raster format
can be customized to a particular application's needs by installing custom methods that
manipulate image data according to application requirements.
The default usage for this class: check if an image can be processed using
, construct an instance of
TiffRgbaImage using and then read and decode an image into a
target raster using . can be called
multiple times to decode an image using different state parameters. If multiple images
are to be displayed and there is not enough space for each of the decoded rasters,
multiple instances of TiffRgbaImage can be managed and then calls can be made to
as needed to display an image.
To use the core support for reading and processing TIFF images, but write the resulting
raster data in a different format one need only override the "put methods" used to store
raster data. These methods are initially setup by to point to methods
that pack raster data in the default ABGR pixel format. Two different methods are used
according to the physical organization of the image data in the file: one for
= .CONTIG (packed samples),
and another for = .SEPARATE
(separated samples). Note that this mechanism can be used to transform the data before
storing it in the raster. For example one can convert data to colormap indices for display
on a colormap display.
To setup custom "put" method please use property for contiguously
packed samples and/or property for separated samples.
The methods of TiffRgbaImage support the most commonly encountered flavors of TIFF.
It is possible to extend this support by overriding the "get method" invoked by
to read TIFF image data. Details of doing this are a bit involved,
it is best to make a copy of an existing get method and modify it to suit the needs of an
application. To setup custom "get" method please use property.
image handle
stop on read error
data is packed/separate
type of alpha data present
image width
image height
image bits/sample
image samples/pixel
image orientation
requested orientation
image photometric interp
colormap pallete
sample mapping array
black and white map
palette image map
YCbCr conversion state
CIE L*a*b conversion state
Delegate for "put" method (the method that is called to pack pixel data in the raster)
used when converting contiguously packed samples.
An instance of the class.
The raster (the buffer to place decoded image data to).
The zero-based byte offset in at
which to begin storing decoded bytes.
The value that should be added to
after each row processed.
The x-coordinate of the first pixel in block of pixels to be decoded.
The y-coordinate of the first pixel in block of pixels to be decoded.
The block width.
The block height.
The buffer with image data.
The zero-based byte offset in at
which to begin reading image bytes.
The value that should be added to
after each row processed.
The image reading and conversion methods invoke "put" methods to copy/image/whatever
tiles of raw image data. A default set of methods is provided to convert/copy raw
image data to 8-bit packed ABGR format rasters. Applications can supply alternate
methods that unpack the data into a different format or, for example, unpack the data
and draw the unpacked raster on the display.
To setup custom "put" method for contiguously packed samples please use
property.
The is usually 0. It is greater than 0 if width of strip
being converted is greater than image width or part of the tile being converted is
outside the image (may be true for tiles on the right and bottom edge of the image).
In other words, is used to make up for any padding on
the end of each line of the buffer with image data.
The is 0 if width of tile being converted is equal to
image width and image data should not be flipped vertically. In other circumstances
is used to make up for any padding on the end of each
line of the raster and/or for flipping purposes.
Delegate for "put" method (the method that is called to pack pixel data in the raster)
used when converting separated samples.
An instance of the class.
The raster (the buffer to place decoded image data to).
The zero-based byte offset in at
which to begin storing decoded bytes.
The value that should be added to
after each row processed.
The x-coordinate of the first pixel in block of pixels to be decoded.
The y-coordinate of the first pixel in block of pixels to be decoded.
The block width.
The block height.
The buffer with image data.
The zero-based byte offset in at
which to begin reading image bytes that constitute first sample plane.
The zero-based byte offset in at
which to begin reading image bytes that constitute second sample plane.
The zero-based byte offset in at
which to begin reading image bytes that constitute third sample plane.
The zero-based byte offset in at
which to begin reading image bytes that constitute fourth sample plane.
The value that should be added to ,
, and
after each row processed.
The image reading and conversion methods invoke "put" methods to copy/image/whatever
tiles of raw image data. A default set of methods is provided to convert/copy raw
image data to 8-bit packed ABGR format rasters. Applications can supply alternate
methods that unpack the data into a different format or, for example, unpack the data
and draw the unpacked raster on the display.
To setup custom "put" method for separated samples please use
property.
The is usually 0. It is greater than 0 if width of strip
being converted is greater than image width or part of the tile being converted is
outside the image (may be true for tiles on the right and bottom edge of the image).
In other words, is used to make up for any padding on
the end of each line of the buffer with image data.
The is 0 if width of tile being converted is equal to
image width and image data should not be flipped vertically. In other circumstances
is used to make up for any padding on the end of each
line of the raster and/or for flipping purposes.
Delegate for "get" method (the method that is called to produce RGBA raster).
An instance of the class.
The raster (the buffer to place decoded image data to).
The zero-based byte offset in at which
to begin storing decoded bytes.
The raster width.
The raster height.
true if the image was successfully read and decoded; otherwise,
false.
A default set of methods is provided to read and convert/copy raw image data to 8-bit
packed ABGR format rasters. Applications can supply alternate method for this.
To setup custom "get" method please use property.
Creates new instance of the class.
The instance of the class used to retrieve
image data.
if set to true then an error will terminate the conversion; otherwise "get"
methods will continue processing data until all the possible data in the image have
been requested.
The error message (if any) gets placed here.
New instance of the class if the image specified
by can be converted to RGBA format; otherwise, null is
returned and contains the reason why it is being
rejected.
Gets a value indicating whether image data has contiguous (packed) or separated samples.
true if this image data has contiguous (packed) samples; otherwise,
false.
Gets the type of alpha data present.
The type of alpha data present.
Gets the image width.
The image width.
Gets the image height.
The image height.
Gets the image bits per sample count.
The image bits per sample count.
Gets the image samples per pixel count.
The image samples per pixel count.
Gets the image orientation.
The image orientation.
Gets or sets the requested orientation.
The requested orientation.
The method uses this value when placing converted
image data into raster buffer.
Gets the photometric interpretation of the image data.
The photometric interpretation of the image data.
Gets or sets the "get" method (the method that is called to produce RGBA raster).
The "get" method.
Gets or sets the "put" method (the method that is called to pack pixel data in the
raster) used when converting contiguously packed samples.
The "put" method used when converting contiguously packed samples.
Gets or sets the "put" method (the method that is called to pack pixel data in the
raster) used when converting separated samples.
The "put" method used when converting separated samples.
Reads the underlaying TIFF image and decodes it into RGBA format raster.
The raster (the buffer to place decoded image data to).
The zero-based byte offset in at which
to begin storing decoded bytes.
The raster width.
The raster height.
true if the image was successfully read and decoded; otherwise,
false.
GetRaster reads image into memory using current "get" () method,
storing the result in the user supplied RGBA using one of
the "put" ( or ) methods. The raster
is assumed to be an array of times
32-bit entries, where must be less than or equal to the width
of the image ( may be any non-zero size). If the raster
dimensions are smaller than the image, the image data is cropped to the raster bounds.
If the raster height is greater than that of the image, then the image data placement
depends on the value of property. Note that the raster is
assumed to be organized such that the pixel at location (x, y) is
[y * width + x]; with the raster origin specified by the
value of property.
Raster pixels are 8-bit packed red, green, blue, alpha samples. The
, , , and
should be used to access individual samples. Images without
Associated Alpha matting information have a constant Alpha of 1.0 (255).
GetRaster converts non-8-bit images by scaling sample values. Palette,
grayscale, bilevel, CMYK, and YCbCr images are converted to RGB transparently.
Raster pixels are returned uncorrected by any colorimetry information present in
the directory.
Samples must be either 1, 2, 4, 8, or 16 bits. Colorimetric samples/pixel must be
either 1, 3, or 4 (i.e. SamplesPerPixel minus ExtraSamples).
Palette image colormaps that appear to be incorrectly written as 8-bit values are
automatically scaled to 16-bits.
All error messages are directed to the current error handler.
Palette images with <= 8 bits/sample are handled with a table to avoid lots of shifts
and masks. The table is setup so that put*cmaptile (below) can retrieve 8 / bitspersample
pixel values simply by indexing into the table with one number.
Greyscale images with less than 8 bits/sample are handled with a table to avoid lots
of shifts and masks. The table is setup so that put*bwtile (below) can retrieve
8 / bitspersample pixel values simply by indexing into the table with one number.
Get an tile-organized image that has
PlanarConfiguration contiguous if SamplesPerPixel > 1
or
SamplesPerPixel == 1
Get an tile-organized image that has
SamplesPerPixel > 1
PlanarConfiguration separated
We assume that all such images are RGB.
Get a strip-organized image that has
PlanarConfiguration contiguous if SamplesPerPixel > 1
or
SamplesPerPixel == 1
Get a strip-organized image with
SamplesPerPixel > 1
PlanarConfiguration separated
We assume that all such images are RGB.
Select the appropriate conversion routine for packed data.
Select the appropriate conversion routine for unpacked data.
NB: we assume that unpacked single channel data is directed to the "packed routines.
Construct any mapping table used by the associated put method.
Construct a mapping table to convert from the range of the data samples to [0, 255] -
for display. This process also handles inverting B&W images when needed.
YCbCr -> RGB conversion and packing routines.
8-bit palette => colormap/RGB
4-bit palette => colormap/RGB
2-bit palette => colormap/RGB
1-bit palette => colormap/RGB
8-bit greyscale => colormap/RGB
16-bit greyscale => colormap/RGB
1-bit bilevel => colormap/RGB
2-bit greyscale => colormap/RGB
4-bit greyscale => colormap/RGB
8-bit packed samples, no Map => RGB
8-bit packed samples => RGBA w/ associated alpha (known to have Map == null)
8-bit packed samples => RGBA w/ unassociated alpha (known to have Map == null)
16-bit packed samples => RGB
16-bit packed samples => RGBA w/ associated alpha (known to have Map == null)
16-bit packed samples => RGBA w/ unassociated alpha (known to have Map == null)
8-bit packed CMYK samples w/o Map => RGB.
NB: The conversion of CMYK->RGB is *very* crude.
8-bit packed CIE L*a*b 1976 samples => RGB
8-bit packed YCbCr samples w/ 2,2 subsampling => RGB
8-bit packed YCbCr samples w/ 2,1 subsampling => RGB
8-bit packed YCbCr samples w/ 4,4 subsampling => RGB
8-bit packed YCbCr samples w/ 4,2 subsampling => RGB
8-bit packed YCbCr samples w/ 4,1 subsampling => RGB
8-bit packed YCbCr samples w/ no subsampling => RGB
8-bit packed YCbCr samples w/ 1,2 subsampling => RGB
8-bit unpacked samples => RGB
8-bit unpacked samples => RGBA w/ associated alpha
8-bit unpacked samples => RGBA w/ unassociated alpha
16-bit unpacked samples => RGB
16-bit unpacked samples => RGBA w/ associated alpha
16-bit unpacked samples => RGBA w/ unassociated alpha
8-bit packed YCbCr samples w/ no subsampling => RGB
8-bit packed CMYK samples w/Map => RGB
NB: The conversion of CMYK->RGB is *very* crude.
A stream used by the library for TIFF reading and writing.
Reads a sequence of bytes from the stream and advances the position within the stream
by the number of bytes read.
A client data (by default, an underlying stream).
An array of bytes. When this method returns, the
contains the specified byte array with the values between
and ( + - 1)
replaced by the bytes read from the current source.
The zero-based byte offset in at which
to begin storing the data read from the current stream.
The maximum number of bytes to be read from the current stream.
The total number of bytes read into the . This can
be less than the number of bytes requested if that many bytes are not currently
available, or zero (0) if the end of the stream has been reached.
Writes a sequence of bytes to the current stream and advances the current position
within this stream by the number of bytes written.
A client data (by default, an underlying stream).
An array of bytes. This method copies
bytes from to the current stream.
The zero-based byte offset in at which
to begin copying bytes to the current stream.
The number of bytes to be written to the current stream.
Sets the position within the current stream.
A client data (by default, an underlying stream).
A byte offset relative to the parameter.
A value of type indicating the
reference point used to obtain the new position.
The new position within the current stream.
Closes the current stream.
A client data (by default, an underlying stream).
Gets the length in bytes of the stream.
A client data (by default, an underlying stream).
The length of the stream in bytes.
Tiff tag methods.
untyped data
signed integer data
unsigned integer data
IEEE floating point data
Sets the value(s) of a tag in a TIFF file/stream open for writing.
An instance of the class.
The tag.
The tag value(s).
true if tag value(s) were set successfully; otherwise, false.
Gets the value(s) of a tag in an open TIFF file.
An instance of the class.
The tag.
The value(s) of a tag in an open TIFF file/stream as array of
objects or null if there is no such tag set.
Prints formatted description of the contents of the current directory to the
specified stream using specified print (formatting) options.
An instance of the class.
The stream to print to.
The print (formatting) options.
Install extra samples information.