PDF Tags
The tags listed in the PDF tables below are those which are used by ExifTool
to extract meta information, but they are only a small fraction of the total
number of available PDF tags. See
http://www.adobe.com/devnet/pdf/pdf_reference.html for the official PDF
specification.
ExifTool supports reading and writing PDF documents up to version 1.7
extension level 3, including support for RC4, AES-128 and AES-256
encryption. A Password option is provided to allow processing of
password-protected PDF files.
When writing PDF files, ExifTool uses an incremental update. This has the
advantages of being fast and reversible. The original PDF can be easily
recovered by deleting the PDF-update
pseudo-group (with
-PDF-update:all=
on the command line). But there are two main
disadvantages to this technique:
1) A linearized PDF file is no longer linearized after the update, so it
must be subsequently re-linearized if this is required.
2) All metadata edits are reversible. While this would normally be
considered an advantage, it is a potential security problem because old
information is never actually deleted from the file.
Tag ID | Tag Name |
Writable | Values / Notes |
'Encrypt' |
Encrypt |
- |
--> PDF Encrypt Tags |
'Info' |
Info |
- |
--> PDF Info Tags |
'Root' |
Root |
- |
--> PDF Root Tags |
'_linearized' |
Linearized |
N |
(flag set if document is linearized for fast web display; not a real Tag ID)
'false' = No
'true' = Yes |
|
Tags extracted from the document Encrypt dictionary.
Tag ID | Tag Name |
Writable | Values / Notes |
'Filter' |
Encryption |
N |
|
'P' |
UserAccess |
N |
Bit 2 = Print
Bit 3 = Modify
Bit 4 = Copy
Bit 5 = Annotate | |
Bit 8 = Fill forms
Bit 9 = Extract
Bit 10 = Assemble
Bit 11 = Print high-res | |
|
|
As well as the tags listed below, the PDF specification allows for
user-defined tags to exist in the Info dictionary. These tags, which should
have corresponding XMP-pdfx entries in the XMP of the PDF XML Metadata
object, are also extracted by ExifTool.
Writable specifies the value format, and may be string
, date
,
integer
, real
, boolean
or name
for PDF tags.
Tag ID | Tag Name |
Writable | Values / Notes |
'AAPL:Keywords' |
AppleKeywords |
string+ |
(keywords written by Apple utilities, although they seem to use PDF:Keywords
when reading) |
'Author' |
Author |
string |
|
'CreationDate' |
CreateDate |
date |
|
'Creator' |
Creator |
string |
|
'Keywords' |
Keywords |
string+ |
|
'ModDate' |
ModifyDate |
date |
|
'Producer' |
Producer |
string |
|
'Subject' |
Subject |
string |
|
'Title' |
Title |
string |
|
'Trapped' |
Trapped |
string! |
|
|
This is the PDF document catalog.
Tag ID | Tag Name |
Writable | Values / Notes |
'Marked' |
TaggedPDF |
N |
(not a Tagged PDF if this tag is missing)
'false' = No
'true' = Yes |
|
Tag ID | Tag Name |
Writable | Values / Notes |
'XML_stream' |
XMP |
- |
--> XMP Tags |
|
Tag ID | Tag Name |
Writable | Values / Notes |
'Count' |
PageCount |
N |
|
'Kids' |
Kids |
- |
--> PDF Kids Tags |
|
Tag ID | Tag Name |
Writable | Values / Notes |
'_stream' |
_stream |
- |
--> Photoshop Tags |
|
Tag ID | Tag Name |
Writable | Values / Notes |
'AIMetaData' |
AIMetaData |
- |
--> PDF AIMetaData Tags |
'AIPrivateData' |
AIPrivateData |
- |
--> PostScript Tags
(the ExtractEmbedded option enables information to be extracted from embedded
PostScript documents in the AIPrivateData stream) |
'ContainerVersion' |
ContainerVersion |
N |
|
'CreatorVersion' |
CreatorVersion |
N |
|
'RoundTripVersion' |
RoundTripVersion |
N |
|
|
Tag ID | Tag Name |
Writable | Values / Notes |
'_stream' |
_stream |
- |
--> PostScript Tags |
|
Additional document permissions imposed by digital signatures.
Tag ID | Tag Name |
Writable | Values / Notes |
'ContactInfo' |
SignerContactInfo |
N |
|
'Location' |
SigningLocation |
N |
|
'M' |
SigningDate |
N |
|
'Name' |
SigningAuthority |
N |
|
'Prop_AuthTime' |
AuthenticationTime |
N |
|
'Prop_AuthType' |
AuthenticationType |
N |
|
'Reason' |
SigningReason |
N |
|
'Reference' |
Reference |
- |
--> PDF Reference Tags |
|
Tag ID | Tag Name |
Writable | Values / Notes |
'Action' |
FieldPermissions |
N |
(FieldMDP signatures only)
'All' = Disallow changes to all form fields
'Exclude' = Allow changes to specified form fields
'Include' = Disallow changes to specified form fields |
'Annots' |
AnnotationUsageRights |
N+ |
(UR3 signatures only) |
'Document' |
DocumentUsageRights |
N+ |
(UR3 signatures only) |
'EF' |
EmbeddedFileUsageRights |
N+ |
(UR3 signatures only) |
'Fields' |
FormFields |
N+ |
(FieldMDP signatures only) |
'Form' |
FormUsageRights |
N+ |
(UR3 signatures only) |
'Msg' |
UsageRightsMessage |
N |
(UR3 signatures only) |
'P' |
ModificationPermissions |
N |
(1-3 for DocMDP signatures, default 2; true/false for UR3 signatures, default
false)
1 = No changes permitted
2 = Fill forms, Create page templates, Sign
3 = Fill forms, Create page templates, Sign, Create/Delete/Edit annotations
'false' = Do not restrict applications to reader permissions
'true' = Restrict al applications to reader permissions |
'Signature' |
SignatureUsageRights |
N+ |
(UR3 signatures only) |
|
(This document generated automatically by Image::ExifTool::BuildTagLookup)
Last revised Nov 19, 2010
<-- ExifTool Tag Names