pdf viewer control in asp net c# : How to add a picture to a pdf document application Library utility azure asp.net wpf visual studio PDF32000_200847-part2366

© 
Adobe Systems Incorporated 2008 – All rights reserved
463
PDF 32000-1:2008
In an FDF field dictionary representing a button field, the optional IF  entry holds an icon fit dictionary (PDF 1.3)
specifying how to display the button’s icon within the annotation rectangle of its widget annotation. Table 247
shows the contents of this type of dictionary. 
12.7.7.3.3
FDF Pages
The optional Pages field in an FDF dictionary (see Table 243) shall contain an array of FDF page dictionaries 
(PDF 1.3) describing new pages that shall be added to the target document. Table 248 shows the contents of 
this type of dictionary. 
An FDF template dictionary  shall contain  information  describing  a  named  page that  serves  as  a  template. 
Table 249 shows the contents of this type of dictionary. 
Table 247 –  Entries in an icon fit dictionary  
Key
Type
Value
SW
name
(Optional) The circumstances under which the icon shall be scaled inside the 
annotation rectangle: 
Always scale. 
B
Scale only when the icon is bigger than the annotation rectangle. 
Scale only when the icon is smaller than the annotation rectangle. 
Never scale. 
Default value: A. 
S
name
(Optional) The type of scaling that shall be used: 
Anamorphic scaling:  Scale  the  icon  to fill  the  annotation  rectangle  exactly, 
without regard to its original aspect ratio (ratio of width to height). 
P Proportional scaling : Scale the icon to fit the width or height of the annotation 
rectangle  while  maintaining  the  icon’s  original  aspect  ratio.  If  the  required 
horizontal and vertical scaling factors are different, use the smaller of the two, 
centering the icon within the annotation rectangle in the other dimension. 
Default value: P. 
A
array
(Optional) An array of two numbers that shall be between 0.0 and 1.0 indicating 
the fraction of leftover space to allocate at the left and bottom of the icon. A value 
of  [ 0.0  0.0 ] shall position  the  icon at  the  bottom-left  corner of the  annotation 
rectangle. A value of [ 0.5  0.5 ] shall center it within the rectangle. This entry shall 
be used only if the icon is scaled proportionally. Default value: [ 0.5  0.5 ]. 
FB
boolean
(Optional; PDF 1.5) If true, indicates that the button appearance shall be scaled 
to fit fully within the bounds of the annotation without taking into consideration the 
line width of the border. Default value: false.
Table 248 –  Entries in an FDF page dictionary  
Key
Type
Value
Templates
array
(Required) An array of FDF template  dictionaries (see Table 249) that 
shall describe the named pages that serve as templates on the page. 
Info
dictionary
(Optional) An  FDF  page  information  dictionary that shall contain
additional information about the page. 
How to add a picture to a pdf document - insert images into PDF in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Sample C# code to add image, picture, logo or digital photo into PDF document page using PDF page editor control
add jpg to pdf document; add a picture to a pdf
How to add a picture to a pdf document - VB.NET PDF insert image library: insert images into PDF in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
Guide VB.NET Programmers How to Add Images in PDF Document
add picture to pdf document; adding a jpeg to a pdf
PDF 32000-1:2008
464
© 
Adobe Systems Incorporated 2008 – All rights reserved
NOTE
The names of fields imported from a template can sometimes conflict with those of existing fields in the target 
document.  This  can occur,  for example, if  the  same  template  page  is imported more  than  once or if  two 
different templates have fields with the same names. 
The Rename flag does not define a renaming algorithm (see Annex J). 
The TRef entry in an FDF template dictionary shall hold a named page reference dictionary that shall describe 
the location of external templates or page elements. Table 250 shows the contents of this type of dictionary. 
12.7.7.3.4
FDF Annotation Dictionaries
Each annotation dictionary in an FDF file shall have a Page entry (see Table 251) that shall indicate the page of 
the source document to which the annotation is attached. 
12.7.8
XFA Forms
PDF 1.5 introduces support for interactive forms based on the Adobe XML Forms Architecture (XFA). The XFA
entry in  the  interactive forms  dictionary (see  Table 218) specifies  an XFA resource, which shall be  an  XML 
stream  that  contains  the  form  information.  The  format  of  an  XFA  resource  is  described  in  the XML Data 
Package (XDP) Specification (see the Bibliography).
The XFA entry shall be either a stream containing the entire XFA resource or an array specifying individual 
packets that together make up the XFA resource. The resource includes but is not limited to the following 
information:
The form template   (specified  in  the  template  packet),  which  describes  the  characteristics  of  the  form, 
including its fields, calculations, validations, and formatting. The XML Template Specification describes the 
architecture of a form template (see Bibliography). 
Table 249 –  Entries in an FDF template dictionary  
Key
Type
Value
TRef
dictionary
(Required) A named page reference dictionary (see Table 250) that shall 
specify the location of the template. 
Fields
array
(Optional) An array of references to FDF field dictionaries (see Table 246) 
describing the root fields that shall be imported (those with no ancestors 
in the field hierarchy). 
Rename
boolean
(Optional) A flag that shall specify whether fields imported from the 
template shall be renamed in the event  of  name conflicts with existing 
fields;  see  the  Note  in  this  sub-clause  for  further  discussion.  Default 
value: true . 
Table 250 –  Entries in an FDF named page reference dictionary  
Key
Type
Value
Name
string
(Required) The name of the referenced page. 
F
file specification
(Optional) The file containing the named page. If this entry is absent, it 
shall be assumed that the page resides in the associated PDF file. 
Table 251 –  Additional entry for annotation dictionaries in an FDF file  
Key
Type
Value
Page
integer
(Required for annotations in FDF files) The ordinal page number on 
which this annotation shall appear, where page 0 is the first page. 
C# TIFF: How to Insert & Burn Picture/Image into TIFF Document
Support adding image or picture to an existing new REImage(@"c:\ logo.png"); // add the image powerful & profession imaging controls, PDF document, tiff files
how to add image to pdf file; how to add photo to pdf in preview
VB.NET TIFF: How to Draw Picture & Write Text on TIFF Document in
Dim drawing As RaterEdgeDrawing = New RaterEdgeDrawing() drawing.Picture = "RasterEdge" drawing powerful & profession imaging controls, PDF document, tiff files
how to add image to pdf in preview; add picture to pdf form
© 
Adobe Systems Incorporated 2008 – All rights reserved
465
PDF 32000-1:2008
The data (specified in the datasets packet), which represents the state of the form 
The configuration information (specified in the config packet), which shall be used to properly process the 
form template and associated data. Configuration information shall be formatted as described in the XML 
Configuration Specification (see Bibliography). 
packet is a pair of a string and stream. The string contains the name of the XML element and the stream 
contains the complete text  of this XML element. Each packet represents a complete XML element, with the 
exception of the first and last packet, which specify begin and end tags for the xdp:xdp element (see EXAMPLE 
1 in this sub-clause).
EXAMPLE 1
This example shows the XFA entry consisting of an array of packets. 
1 0 obj
XFA entry in interactive form dictionary
<< /XFA [(xdp:xdp) 10 0 R
XFA resource specified as individual packets
(template) 11 0 R
(datasets) 12 0 R
(config) 13 0 R
(/xdp:xdp) 14 0 R ]
>>
endobj
10 0 obj
stream
<xdp:xdp xmlns:xdp="http://ns.adobe.com/xdp/">
endstream
11 0 obj
stream
<template xmlns="http://www.xfa.org/schema/xfa-template/2.4/">
...remaining contents of template packet...
</template>
endstream
12 0 obj
stream
<xfa:datasets xmlns:xfa="http://www.xfa.org/schema/xfa-data/1.0/">
...contents of datasets packet...
</xfa:datasets>
endstream
13 0 obj
stream
<config xmlns="http://www.xfa.org/schema/xci/1.0/">
...contents of config node of XFA Data Package...
<config>
endstream
14 0 obj
stream
</xdp:xdp>
endstream
EXAMPLE 2
The following example shows the same entry specified as a stream.
1 0 obj
XFA entry in interactive form dictionary
<< /XFA 10 0 R >>
endobj
10 0 obj
stream
<xdp:xdp xmlns:xdp="http://ns.adobe.com/xdp/">
<template xmlns="http://www.xfa.org/schema/xfa-template/2.4/">
...remaining contents of template packet...
</template>
C# Word - Paragraph Processing in C#.NET
Add references: CreateParagraph(); //Create a picture for para IPicture picture = para.CreatePicture(imageSrcPath); //Save the document doc0.Save
add jpeg to pdf; add image pdf
VB.NET Image: Create Code 11 Barcode on Picture & Document Using
file, apart from above mentioned .NET core imaging SDK and .NET barcode creator add-on, you also need to buy .NET PDF document editor add-on, namely, RasterEdge
how to add a jpeg to a pdf file; how to add picture to pdf
PDF 32000-1:2008
466
© 
Adobe Systems Incorporated 2008 – All rights reserved
<xfa:datasets xmlns:xfa="http://www.xfa.org/schema/xfa-data/1.0/">
...contents of datasets packet...
</xfa:datasets>
<config xmlns="http://www.xfa.org/schema/xci/1.0/">
...contents of config node of XFA Data Package...
<config>
</xdp:xdp>
endstream
endobj
When an XFA entry is present in an interactive form dictionary, the XFA resource provides information about 
the form;  in particular,  all form-related events  such as  calculations  and validations. The  other entries  in  the 
interactive  form  dictionary  shall  be  consistent  with  the  information  in  the  XFA  resource.  When  creating  or 
modifying a PDF file with an XFA resource, a conforming writer shall follow these rules:
PDF interactive form field objects shall be present for each field specified in the XFA resource. The XFA 
field values shall be consistent with the corresponding V entries of the PDF field objects.
The XFA Scripting Object Model (SOM)  specifies  a  naming  convention  that  shall  be  used  to  connect 
interactive form field names with field names in the XFA resource. Information about this model is available 
in the XFA Specification, version 2.5 (see the Bibliography). 
No A or AA entries (see Table 164) shall be present in the annotation dictionaries of fields that also have 
actions specified by the XFA resource. 
12.8
Digital Signatures
12.8.1
General
A digital signature (PDF 1.3) may be used to authenticate the identity of a user and the document’s contents. It 
stores information about the signer and the state of the document when it was signed. The signature may be 
purely mathematical, such as a public/private-key encrypted document digest, or it may be a biometric form of 
identification, such as a handwritten signature, fingerprint, or retinal scan. The specific form of authentication 
used shall be implemented by a special software module called a signature handler. Signature handlers shall 
be identified in accordance with the rules defined in Annex E.
Digital signatures in ISO 32000 currently support two activities: adding a digital signature to a document and 
later checking that signature for validity.  Revocation  information is a  signed attribute, which  means that  the 
signing software must capture the revocation information before signing. A similar requirement applies to the 
chain of certificates. The signing software must capture and validate the certificate's chain before signing.
Signature  information  shall  be  contained  in  a signature dictionary,  whose  entries  are  listed  in  Table 252. 
Signature handlers may use or omit those entries that are marked optional in the table but should use them in a 
standard way if they are used at all. In addition, signature handlers may add private entries of their own. To 
avoid name duplication, the keys for all such private entries shall be prefixed with the registered handler name 
followed by a PERIOD (2Eh).
Signatures shall be created by computing a digest of the data (or part of the data) in a document, and storing 
the digest in the document. To verify the signature, the digest shall be re-computed and compared with the one 
stored in the document. Differences in the digest values indicate that modifications have been made since the 
document was signed. 
There are two defined techniques for computing a digital signature of the contents of all or part of a PDF file:
byte range digest  shall  be  computed  over a range  of bytes in the file, that shall be indicated by  the 
ByteRange entry in the signature dictionary. This range should be the entire file, including the signature 
dictionary but excluding the  signature value itself  (the Contents  entry). Other  ranges  may be used  but 
since they do not check for all changes  to the document,  their use  is not  recommended. When a byte 
range digest is present, all values in the signature dictionary shall be direct objects. 
VB.NET PowerPoint: Add Image to PowerPoint Document Slide/Page
clip art or screenshot, the picture will be AddPage", "InsertPage" and "DeletePage" to add, insert or & profession imaging controls, PDF document, tiff files
how to add a photo to a pdf document; add a jpeg to a pdf
VB.NET Image: VB.NET Planet Barcode Generator for Image, Picture &
on Overview. VB.NET Planet Barcode Creator Add-on within Generate Planet Barcode on Picture & Image in VB.NET. In for adding Planet barcode image to PDF, TIFF or
how to add an image to a pdf; add signature image to pdf
© 
Adobe Systems Incorporated 2008 – All rights reserved
467
PDF 32000-1:2008
Additionally,  modification  detection  may  be  specified  by  a signature reference dictionary.  The 
TransformMethod entry shall specify the general method for modification detection, and the 
TransformParams entry shall specify the variable portions of the method.
A PDF document may contain the following standard types of signatures: 
One  or  more  approval  signatures.  These  signatures  appear  in  signature  form  fields  (see  12.7.4.5, 
“Signature Fields”). The signature dictionary corresponding to each signature shall be the value of the form 
field (as specified by its V entry). The signature dictionary shall contain a ByteRange entry representing a 
byte range digest, as described previously. A signature shall be validated by recomputing the digest and 
comparing it with the one stored in the signature. 
NOTE 1
If a signed document is modified and saved by incremental update (see 7.5.6, “Incremental Updates”), the data 
corresponding to the byte range of the original signature is preserved. Therefore, if the signature is valid, it is 
possible to recreate the state of the document as it existed at the time of signing.
At most one certification signature (PDF 1.5). The signature dictionary of a certification signature shall be 
the value of a signature field and shall contain a ByteRange entry.  It may  also be referenced from the 
DocMDP entry in the permissions dictionary (see 12.8.4, “Permissions”). The signature dictionary shall 
contain  a  signature  reference  dictionary  (see  Table 253)  that  has  a DocMDP  transform  method.  See 
12.8.2.2, “DocMDP” for information on how these signatures shall be created and validated.
 signature  dictionary  for  a  certification  or  approval  signature  may  also  have  a  signature  reference 
dictionary with a FieldMDP transform method; see 12.8.2.4, “FieldMDP.”
At most two usage rights signatures (PDF 1.5). Its signature dictionary shall be referenced from the UR3
(PDF 1.6) entry in the permissions dictionary, whose entries are listed in Table 258, (not from a signature 
field).  The  signature  dictionary  shall  contain  a Reference   entry  whose  value  is  a  signature  reference 
dictionary that has a UR transform method. See 12.8.2.3, “UR” for information on how these signatures 
shall be created and validated.
Table 252 –  Entries in a signature dictionary  
Key 
Type 
Value
Type
name
(Optional) The type of PDF object that this dictionary describes; if 
present, shall be Sig for a signature dictionary. 
Filter
name
(Required; inheritable) The name of the preferred signature handler to 
use  when  validating  this  signature.  If  the Prop_Build  entry  is  not 
present, it shall be also the name of the signature handler that was 
used to create the signature. If Prop_Build is present, it may be used 
to determine the name of the handler that created the signature (which 
is typically the same as Filter but is not needed to be). A conforming 
reader may substitute a different handler when verifying the signature, 
as  long  as  it  supports  the  specified SubFilter  format.  Example 
signature handlers are Adobe.PPKLite, Entrust.PPKEFCICI.SignIt
and VeriSign.PPKVS. The name of the filter (i.e. signature handler) 
shall be identified in accordance with the rules defined in Annex E.
SubFilter
name
(Optional) A name that describes the encoding of the signature value 
and key information in the signature dictionary. A conforming reader 
may  use  any  handler  that  supports  this  format  to  validate  the 
signature. 
(PDF 1.6) The following values for public-key cryptographic signatures 
shall  be  used: adbe.x509.rsa_sha1adbe.pkcs7.detached,  and 
adbe.pkcs7.sha1 (see 12.8.3, “Signature Interoperability”). Other 
values  may  be  defined  by  developers,  and  when  used,  shall  be 
prefixed with the registered developer identification. All prefix names 
shall  be  registered  (see  Annex  E).  The  prefix  “adbe”  has  been 
registered  by  Adobe  Systems  and  the  three  subfilter  names  listed 
above and defined in 12.8.3, “Signature Interoperability“ may be used 
by any developer.
VB.NET Image: Image Cropping SDK to Cut Out Image, Picture and
SDK; VB.NET image cropping method to crop picture / photo; VB.NET image cropping control add-on needs a PC com is professional provider of document, content and
add picture to pdf file; add png to pdf acrobat
VB.NET Image: Image Scaling SDK to Scale Picture / Photo
this VB.NET image scaling control add-on, we API, developer can only scale one image / picture / photo at com is professional provider of document, content and
how to add image to pdf reader; add a picture to a pdf file
PDF 32000-1:2008
468
© 
Adobe Systems Incorporated 2008 – All rights reserved
Contents
byte string
(Required) The signature value. When ByteRange is present, the 
value  shall  be  a  hexadecimal  string  (see  7.3.4.3,  “Hexadecimal 
Strings”) representing the value of the byte range digest.
For public-key signatures, Contents should be either a DER-encoded 
PKCS#1 binary data object or a DER-encoded PKCS#7 binary data 
object.
Space for the Contents value must be allocated before the message 
digest is computed. (See 7.3.4, “String Objects“)
Cert
array or
byte string
(Required when SubFilter is adbe.x509.rsa_sha1An array of byte 
strings  that  shall  represent  the  X.509  certificate  chain  used  when 
signing and verifying signatures that use public-key cryptography, or a 
byte string if the chain has only one entry. The signing certificate shall 
appear first in the array; it shall be used to verify the signature value in 
Contents, and the other certificates shall be used to verify the 
authenticity of the signing certificate.
If SubFilter is adbe.pkcs7.detached or adbe.pkcs7.sha1, this entry 
shall not be used, and the certificate chain shall be put in the PKCS#7 
envelope in Contents
ByteRange
array
(Required for all signatures that are part of a signature field and usage 
rights signatures referenced  from the UR3  entry  in  the  permissions 
dictionary) An array of pairs of integers (starting byte offset, length in 
bytes)  that  shall  describe  the  exact  byte  range  for  the  digest 
calculation.  Multiple  discontiguous  byte  ranges  shall  be  used  to 
describe  a  digest  that  does  not  include  the  signature  value  (the
Contents entry) itself. 
Reference
array
(Optional; PDF 1.5) An array of signature reference dictionaries (see 
Table 253). 
Changes
array
(Optional) An array of three integers that shall specify changes to the 
document that have been made between the previous signature and 
this signature: in this order, the number of pages altered, the number 
of fields altered, and the number of fields filled in. 
The  ordering  of  signatures  shall  be  determined  by  the  value  of 
ByteRange. Since each signature results in an incremental save, later 
signatures have a greater length value. 
Name
text string
(Optional) The name of the person or authority signing the document. 
This value should be used only when it is not possible to extract the 
name from the signature.
EXAMPLE 1
From the certificate of the signer. 
M
date
(Optional) The time of signing. Depending on the signature handler, 
this may be a normal unverified computer time or a time generated in a 
verifiable way from a secure time server. 
This  value  should  be  used  only  when
the  time  of  signing  is  not 
available in the signature.
EXAMPLE 2
A time stamp can be embedded in a PKCS#7 binary 
da
ta  object (see  12.8.3.3, “PKCS#7 Signatures as 
used in ISO 32000”).
Location
text string
(Optional) The CPU host name or physical location of the signing. 
Reason
text string
(Optional) The reason for the signing, such as ( I agree … ).
ContactInfo
text string
(Optional) Information provided by the signer to enable a recipient to 
contact the signer to verify the signature.
EXAMPLE 3
A phone number.
Table 252 –  Entries in a signature dictionary  (continued)
Key 
Type 
Value
© 
Adobe Systems Incorporated 2008 – All rights reserved
469
PDF 32000-1:2008
NOTE 2
The entries in the signature dictionary can be conceptualized as being in different dictionaries; they are in one 
dictionary for  historical and  cryptographic reasons. The  categories are signature  properties (R, MName, 
ReasonLocationProp_BuildProp_AuthTime, and Prop_AuthType); key information (Cert and portions 
of Contents when the signature value is a PKCS#7  object);  reference  (Reference and ByteRange); and 
signature value (Contents when the signature value is a PKCS#1 object).
R
integer
(Optional) The version of the signature handler that was used to create 
the  signature. (PDF 1.5)  This  entry  shall  not  be  used,  and  the 
information shall be stored in the Prop_Build dictionary.
V
integer
(Optional; PDF 1.5) The version of the signature dictionary format. It 
corresponds to the usage of the signature dictionary in the context of 
the value of SubFilter. The value is 1 if the Reference dictionary shall 
be considered critical to the validation of the signature.
Default value: 0.
Prop_Build
dictionary
(Optional;  PDF  1.5) A dictionary that may be used by a signature 
handler to record information that captures the state of the computer 
environment used for signing, such as the name of the handler used to 
create  the  signature,  software  build  date,  version,  and  operating 
system. 
he  PDF  Signature  Build  Dictionary  Specification,  provides 
implementation guidelines for the use of this dictionary.
Prop_AuthTime
integer
(Optional; PDF 1.5) The number of seconds since the signer was last 
authenticated,  used  in claims  of  signature repudiation.  It  should  be 
omitted if the value is unknown.
Prop_AuthType
name
(Optional; PDF 1.5) The method that shall be used to authenticate the 
signer, used in claims of signature repudiation. Valid values shall be 
PIN, Password, and Fingerprint. 
Table 253 –  Entries in a signature reference dictionary  
Key
Type
Value
Type
name
(Optional) The type of PDF object that this dictionary 
describes;  if  present,  shall  be SigRef  for  a  signature 
reference dictionary.
TransformMethod
name
(Required) The name of the transform method (see Section 
12.8.2,  “Transform  Methods”)  that  shall  guide  the 
modification analysis that takes place when the signature is 
validated. Valid values shall be:
DocMDP 
Used  to  detect  modifications  to  a  document 
relative to a signature field that is signed by the 
originator  of  a  document;  see  12.8.2.2, 
“DocMDP.”
UR 
Used  to  detect  modifications  to  a  document 
that  would  invalidate  a  signature  in  a  rights-
enabled document; see 12.8.2.3, “UR.”
FieldMDP
Used to  detect modifications  to a list of form 
fields  specified  in TransformParams;  see 
12.8.2.4, “FieldMDP.”
TransformParams
dictionary
(Optional) A dictionary specifying transform parameters 
(variable  data)  for  the  transform  method  specified  by 
TransformMethod. Each method takes its own set of 
parameters. See each of the sub-clauses specified previously 
for details on the individual transform parameter dictionaries
Table 252 –  Entries in a signature dictionary  (continued)
Key 
Type 
Value
PDF 32000-1:2008
470
© 
Adobe Systems Incorporated 2008 – All rights reserved
12.8.2
Transform Methods
12.8.2.1
General
Transform methods, along with transform parameters, shall determine which objects are included and excluded 
in  revision  comparison.  The  following  sub-clauses  discuss  the types  of  transform  methods,  their  transform 
parameters, and when they shall be used. 
12.8.2.2
DocMDP
12.8.2.2.1
General
The DocMDP transform method shall be used to detect modifications relative to a signature field that is signed 
by  the  author  of  a  document  (the  person  applying  the  first  signature).  A  document  can  contain  only  one 
signature field that contains a DocMDP transform method; it shall be the first signed field in the document. It 
enables the author to specify what changes shall be permitted to be made the document and what changes 
invalidate the author’s signature.
NOTE
As discussed earlier, “MDP” stands for modification detection and prevention. Certification signatures that use 
the DocMDP transform method enable detection of disallowed changes specified by the author. In addition, 
disallowed changes can also be prevented when the signature dictionary is referred to by the DocMDP entry in 
the permissions dictionary (see 12.8.4, “Permissions”). 
A certification signature should  have  a legal  attestation dictionary (see  12.8.5,  “Legal Content Attestations”) 
that specifies all content that might result in unexpected rendering of the document contents, along with the 
author’s attestation to such content. This dictionary may be used to establish an author’s intent if the integrity of 
the document is questioned.
The P  entry  in  the DocMDP  transform  parameters  dictionary  (see  Table 254)  shall  indicate  the  author’s 
specification of which changes to the document will invalidate the signature. (These changes to the document 
shall  also  be  prevented  if  the  signature  dictionary  is  referred  from  the DocMDP  entry  in  the  permissions 
dictionary.) A value of 1 for P indicates that the document shall be final; that is, any changes shall invalidate the 
signature.  The  values  2  and  3  shall  permit  modifications  that  are  appropriate  for  form  field  or  comment 
workflows.
12.8.2.2.2
Validating Signatures That Use the DocMDP Transform Method
To validate a signature that uses the DocMDP transform method, a conforming reader first shall verify the byte 
range digest. Next, it shall verify that any modifications that have been made to the document are permitted by 
the transform parameters.
Once the byte range digest is validated, the portion of the document specified by the ByteRange entry in the 
signature dictionary (see Table 252) is known to correspond to the state of the document at the time of signing. 
Data
(various)
(Required when TransformMethod is FieldMDP) An indirect 
reference to the object in the document upon which the object 
modification  analysis  should  be  performed.  For  transform 
methods  other  than FieldMDP,  this  object  is  implicitly 
defined. 
DigestMethod
name
(Optional; PDF 1.5 required) A name identifying the algorithm 
that shall be used when computing the digest. Valid values 
are MD5  and SHA1.  Default  value: MD5.  For  security 
reasons,  MD5  should  not  be  used.  It  is  mentioned  for 
backwards compatibility, since it remains the default value.
Table 253 –  Entries in a signature reference dictionary  (continued)
Key
Type
Value
© 
Adobe Systems Incorporated 2008 – All rights reserved
471
PDF 32000-1:2008
Therefore, conforming readers may compare the signed and current versions of the document to see whether 
there have been modifications to any objects that are not permitted by the transform parameters. 
12.8.2.3
UR
The UR transform method shall be used to detect changes to a document that shall invalidate a usage rights
signature, which is referred to from the UR3 entry in the permissions dictionary (see 12.8.4, “Permissions”). 
Usage rights signatures shall be used to enable additional interactive features that may not available by default 
in a conforming reader. The signature shall be used to validate that the permissions have been granted by a 
bonafide granting authority. The transform parameters dictionary (see Table 255) specifies the additional rights 
that  shall  be  enabled  if  the  signature  is  valid.  If  the  signature  is  invalid  because  the  document  has  been 
modified in a way that is not permitted or the identity of the signer is not granted the extended permissions, 
additional rights shall not be granted.
EXAMPLE
Adobe Systems  grants  permissions  to  enable  additional  features  in  Adobe Reader,  using  public-key 
cryptography. It uses certificate authorities to issue public key certificates to document creators with which 
it has entered into a business relationship. Adobe Reader verifies that the rights-enabling signature uses 
a certificate from an Adobe-authorized certificate authority. Other conforming readers are free to use this 
same mechanism for their own purposes.
UR3 (PDF 1.6): The ByteRange entry in the signature dictionary (see Table 252) shall be present. First, a 
conforming reader shall verify the byte range digest to determine whether the portion of the document specified 
by ByteRange corresponds to the state of the document at the time of signing. Next, a conforming reader shall 
examine the current version of the document to see whether there have been modifications to any objects that 
are not permitted by the transform parameters.
Table 254 –  Entries in the DocMDP transform parameters dictionary  
Key
Type
Value
Type
name
(Optional) The type of PDF object that this dictionary describes; if present, 
shall be TransformParams for a transform parameters dictionary. 
P
number
(Optional) The access permissions granted for this document. Valid values 
shall be:
1
No changes to the  document  shall  be  permitted; any change  to the 
document shall invalidate the signature. 
2
Permitted  changes  shall  be  filling  in  forms,  instantiating  page 
templates, and signing; other changes shall invalidate the signature. 
Permitted changes shall be the same as for 2, as well as annotation 
creation, deletion, and modification; other changes shall invalidate the 
signature.
Default value: 2. 
V
name
(Optional) The DocMDP transform parameters dictionary version. The only 
valid value shall be 1.2. 
NOTE
this value is a name object, not a number. 
Default value: 1.2
PDF 32000-1:2008
472
© 
Adobe Systems Incorporated 2008 – All rights reserved
Table 255 –  Entries in the UR transform parameters dictionary  
Key
Type
Value
Type
name
(Optional) The type of PDF object that this dictionary describes; if present, 
shall be TransformParams for a transform parameters dictionary. 
Document
array
(Optional) An array of names specifying additional document-wide usage 
rights  for  the  document.  The  only  defined  value  shall  be  FullSave,  which 
permits  a  user  to  save  the  document  along  with  modified  form  and/or 
annotation data. (PDF 1.5) Any usage right that permits the document to be 
modified implicitly shall enable the FullSave right. 
If the PDF document contains a UR3 dictionary, only rights specified by the 
Annots entry that permit the document to be modified shall implicitly enable 
the FullSave right. For all other rights, FullSave shall be explicitly enabled in 
order to save the document. (Signature rights shall permit saving as part of the 
signing process but not otherwise). 
If the P entry in the UR transform parameters dictionary is true  (PDF 1.6) and 
greater conforming readers shall permit only those rights that are enabled by 
the entries in the dictionary. However, conforming readers shall permit saving 
the document as long as any rights that permit modifying the document are 
enabled.
Msg
text 
string
(Optional) A text string that may be used to specify any arbitrary information, 
such as the reason for adding usage rights to the document.
V
name
(Optional) The UR transform parameters dictionary version. The value shall be
2.2. If an unknown version is present, no rights shall be enabled. 
NOTE
This value is a name object, not a number. 
Default value: 2.2
Annots
array
(Optional) An array of names specifying additional annotation-related usage 
rights for the document. Valid names (PDF 1.5)  are Create, Delete, Modify, 
Copy, Import, and Export, which shall permit the user to perform the named 
operation on annotations.
The  following  names (PDF 1.6) shall be permitted  only when the  signature 
dictionary is referenced from the UR3 entry of the permissions dictionary (see 
Table 258):
Online
Permits online commenting; that is, the ability to upload or 
download markup annotations from a server.
SummaryView
Permits a user interface to be shown that summarizes the 
comments (markup annotations) in a document.
Documents you may be interested
Documents you may be interested