Using a custom set of XML tags inside your HTML, you can insert both custom metadata as well as instructions for how the PDF would be viewed in a PDF viewer application (subject of course to that application supporting those features).
You use the (optional) tag <pdfproperties> and within that tag you
can insert <metainfo> and <pdfpreferences>
sections as shown in the instructions below. Within the
<metainfo> tag, you can add <prop> tags
with @name, @value attribute pairs with the data you wish
to store in the PDF metadata. Anything without one of the recognized, standard PDF
names (author, title, subject,
creator, keywords) are stored in custom metadata in
the PDF.
The <pdfpreferences> section allows you to insert one or more
<pref> tags with specific @name,
@value pairs that control the way the resulting PDF is displayed
with a viewer that supports standard PDF view attributes. The support
name, @value pairs are listed below and grouped into
all the available categories:
These options let you control some general information about the generated PDF.
bookmarks - sets whether PDF bookmarks are generated or not. The default
is "false" for Cloudformatter. You can set @value to "true" if you want
bookmarks in PDF. Note that bookmarks are only generated for interpreted
hierarchical information. All h1 elements and there following
h2 elements and so on. Skipping levels will break the sequence and
the bookmarks will not be correct.
pdf-version - sets the PDF version number. The default is version 1.5
for Cloudformatter but you set @value to values like "1.3", "1.4",
"1.6" or "1.7" if you wish to change the version. Be aware thar some other features
could be disabled by setting the version too low.
compress - sets whether the PDF is compressed or not. The default is
"true" for Cloudformatter. You can set @value to "false" if you want
uncompressed PDF.
linearize - sets whether the PDF is linearized or not. The default is
"false" for Cloudformatter. You can set @value to "true" if you want to
optimize a long PDF for web view.
These options let you control how the PDF when opened appears to the end user.
view-mode - Choose from one of the following:
auto - If there are bookmarks in the document, the bookmarks pane
is displayed. Otherwise, all auxiliary panes are hidden.show-none - All auxiliary panes are hidden.show-bookmarks - The bookmarks pane is displayed.show-thumbnails - The thumbnails pane is displayed.full-screen - The document is displayed in full screen-mode.initial-zoom - Choose from one of the following:
auto - Page scaling is not specified.fit - The page is scaled to fit completely into the view port.fit-width - The page is scaled so that its width matches the width
of the view port.fit-height - The page is scaled so that its height matches the
height of the view port.### or ####% - The page is scaled by the number or
percentage specified.page-layout - Choose from one of the following:
auto - Uses settings of viewer application.single-page - Displays one page at a time.continuous - Displays pages continuously in one column.two-columns-left - Displays pages continuously in two columns, with
odd-numbered pages to the left.two-columns-right - Displays pages continuously in two columns,
with odd-numbered pages to the right.two-pages-left - Displays pages in two columns, by two pages at a
time, with odd-numbered pages to the left. two-pages-right - Displays pages in two columns, by two pages at a
time, with odd-numbered pages to the right.viewer-preferences - A comma separated list of the following
possibilities:
hide-toolbar - Hides the viewer application's tool bars when the
document is active.hide-menubar - Hides the viewer application's menu bar when the
document is active.hide-window-ui - Hides user interface elements in the document's
window (such as scroll bars and navigation controls), leaving only the
document's contents displayed.fit-window - Resizes the document's window to fit the size of the
first displayed page.center-window - Positions the document's window in the center of
the screen.display-document-title - Controls whether the window's title bar
displays the document title taken from the "title" metadata field.These options allow you to specify owner and user security in the PDF output. User-level security can inject a password to be used to open the PDF, while owner-level security can control what can be done with the PDF (like printing it or copying the data from it).
userpassword - Sets the user password that must be entered to view the
PDF. There are no options, the @value passed is the password to be
used.
ownerpassword - Sets the owner password that must be entered to enable
advanced processing of the PDF. There are no options, the @value passed
is the password to be used. An ownerpassword is used to lock down certain privledges
that an owner will grant to a recipient of the PDF. Without the owner password,
recipients can be restricted from certain things. By default they are restricted
from everything, and you can then specify what additional things you allow by using
userpriviledges.
userpriviledges - A comma separated list of the following
possibilities:
print - Enables printing the document. modify - Enables editing the document. copy - Enables copying text and images from the document to the
clipboard. annotate - Enables adding notations to the document and changing
the field values. These allow you to specify crop marks, bleeds and registration marks to be applied to the PDF.
crop-offset - specify offsets from the meaningful content on the page to
the edges of the physical media (/MediaBox entry in the PDF page dictionary). Its
value is a series of 1 to 4 length specifiers that set offsets from the edges of the
page area to the corresponding edges of the /MediaBox. Rules for expanding the value
are the same as for the padding property in CSS.
bleed - specify the bleeds — an extra space around the page area into
which the contents of the page may protrude (/BleedBox entry in the PDF page
dictionary). Its value is a series of 1 to 4 length specifiers that set offsets from
the edges of the page area to the corresponding edges of the /BleedBox. Rules for
expanding the value are the same as for the padding property in CSS.
crop-mark-width - defines line width for the crop marks, setting it to 0
disables drawing of crop marks.
bleed-mark-width - defines line width for the bleed marks, setting it to
0 disables drawing of bleed marks.
printer-mark - specify additional SVG images to be drawn in the offset
area surrounding the page (specified by crop-offset and bleed parameters). Printer
marks are clipped to the outside of the bleed rectangle. The @value is
a URL to an SVG you have. This sample has two URLs (one for a colorbar and one for a
registration mark) you can also use if you like.
The following code is what is behind this page for producing the PDF. Of course, you would only see the things supported by your PDF viewer you use. If you wish to see them all in action, then use "download" and Adobe Reader to view the PDF.
Recent changes in some browsers will not treat this XML as XML. Instead it tries (incorrectly) to not close tags. For best results, be sure to use open and close tags and not a self-closing tag.
<pdfproperties style="display:none;">
<metainfo>
<prop name="author" value="Xportability LLC"></prop>
<prop name="title"
value="Xportability Cloudformatter: Showing Custom
PDF Properties"></prop>
<prop name="subject" value="A Cloudformatter Document"></prop>
<prop name="creator" value="css2pdf@cloudformatter.com"></prop>
<prop name="keywords" value="CSS, PDF, Cloudformatter"></prop>
<prop name="custom1" value="value1"></prop>
<prop name="custom2" value="value2"></prop>
<prop name="custom3" value="value3"></prop>
<prop name="custom4" value="value4"></prop>
</metainfo>
<pdfpreferences>
<pref name="bookmarks" value="true"></pref>
<pref name="pdf-version" value="1.6"></pref>
<pref name="view-mode" value="auto"></pref>
<pref name="initial-zoom" value="fit-height"></pref>
<pref name="page-layout" value="two-columns-left"></pref>
<pref name="viewer-preferences" value="display-document-title"></pref>
<pref name="crop-offset" value="0.5in"></pref>
<pref name="crop-mark-width" value="1px"></pref>
<pref name="printer-mark"
value="http://www.cloudformatter.com/Resources/Images/registration.svg"></pref>
<pref name="printer-mark"
value="http://www.cloudformatter.com/Resources/Images/colorbar.svg"></pref>
</pdfpreferences>
</pdfproperties>
Iriure consetetur laoreet est voluptua exerci sit stet vero vero. Dolor quis vero et diam. Nihil nisl et nonumy stet nulla eirmod. Nonumy vero et et takimata. Eirmod et delenit justo ut dolore minim takimata eum eirmod dolor at sea. Justo ipsum sed delenit vero esse at ea dolore eos aliquyam stet molestie lorem molestie labore elit. Ipsum sadipscing stet molestie amet sanctus facer stet invidunt sed at. Tempor labore duo vero volutpat justo eirmod clita sit et sadipscing vero laoreet gubergren diam diam gubergren.
Eum nibh diam sadipscing et dolores feugiat lorem. Vero kasd lorem dolores nonumy accusam autem erat dolor te accusam invidunt labore consetetur et augue lorem eirmod dolor. Et sit minim amet hendrerit dolor. Dolor hendrerit dolor nulla ut zzril ipsum dolor ex. Eros ut aliquip et consetetur vulputate lorem lorem.
Gubergren iriure consequat amet sit sit. Justo eos iriure. Sit voluptua invidunt nihil vulputate ut ipsum ut accusam liber dolor stet et et diam kasd sadipscing accusam sed. Accusam accusam justo. Vero rebum aliquip sit et vero amet vero eos amet eum feugait dolor. Facilisis duo dolor et duis sed clita euismod et sed gubergren vero consetetur dolore at. Sed ullamcorper euismod dolores vero vero. In autem erat veniam in nonumy et diam vero no vel enim aliquyam est aliquam feugait. Sit iriure erat vero tempor sit dolore dolor ea ipsum lorem accusam justo invidunt ut dolor. Clita et et nulla nostrud lorem est sit amet.
Blandit nonumy sit rebum et dolor ea stet dolore at laoreet dolore delenit veniam nulla. Et sanctus no takimata illum. No elitr consequat no vel sanctus diam sit eos invidunt eos eos erat et lorem. Lorem est clita sanctus feugiat. Sea aliquam dolor sit ut.
Erat sed sea in in ea sadipscing adipiscing nibh rebum nonummy et lorem eos amet. Sed dolor facilisi ea gubergren sit cum ut sadipscing wisi elitr et sed dignissim dolore tempor. Clita amet amet et nulla lobortis est consetetur sed eum sed hendrerit dolor autem volutpat iusto et commodo amet. Enim erat euismod sanctus et et at in sadipscing. Accusam ex accusam lorem sadipscing erat sanctus.
Diam blandit vero ut sed duis sed no et vero kasd. Sed ipsum feugait vero dolore molestie takimata lorem. Sed dolore dolor. Sed nostrud et lorem tempor labore et magna lorem nisl consetetur feugait. Esse consetetur iriure at est eu ipsum diam.
Feugiat vero diam eros dolores consetetur adipiscing aliquyam lobortis. Et labore ipsum. Sanctus dolores odio nonumy clita tempor diam minim minim accusam ipsum duis. Facilisi hendrerit ex ipsum rebum sea takimata ipsum erat voluptua nonummy dolores. Dolor facilisis sea consequat erat ut hendrerit et justo eirmod sit ipsum lorem. At sit sed dolore vero lorem consectetuer eos accusam est et accusam eos aliquyam. Consetetur ut diam clita dolore eum illum. Amet mazim sit invidunt ea possim velit lorem lorem feugait rebum amet velit ut justo.
Lorem erat sanctus lorem consequat facilisis sea elit rebum at. Nonumy sed accusam option facilisi sadipscing dolore et laoreet justo dolores ipsum. Wisi et kasd no aliquyam dolore. Elitr ut et erat dolor facilisis invidunt rebum et suscipit et ipsum facilisis. Ea no dolor et nulla kasd accusam dolore blandit id molestie ea eos vel elit zzril dolor. Dolor sit nonumy tempor facilisi sadipscing diam. Sea justo duo. Vero rebum magna lobortis tempor. Sea in et est accusam est et accumsan et ipsum facer sit dolore erat diam feugait sanctus dolor. Diam dolore kasd.
Lorem ipsum ea lorem dolore eos gubergren. Et et sea in at voluptua eu et molestie dolore. Sanctus sanctus sanctus et volutpat dolor ipsum sea gubergren sit. Sea et nihil at nobis molestie ut stet elitr ut odio takimata ut eos kasd vel aliquyam aliquyam dolores. Sed lorem sadipscing diam sadipscing ipsum dolore sit. Quis rebum sit sit sed exerci sed sit eirmod consetetur elitr eum euismod. Ut justo lorem accusam nonumy takimata feugait eos facilisis iriure dolores ut eos tempor lobortis dolore blandit aliquip. Zzril dolor molestie ut gubergren. Aliquip et amet eros et voluptua at. No takimata in consetetur diam consetetur clita erat dolor invidunt eros aliquyam takimata. Diam takimata eos euismod eos in at diam ea rebum diam sed dolor vero sea illum.
Sed illum no duis dolores eirmod sed eros euismod sed sanctus ut. Stet esse et sadipscing no assum stet dolor kasd nulla velit sadipscing ut aliquam dolor quis eirmod veniam gubergren. Gubergren eirmod voluptua aliquyam clita diam invidunt dolore dolore invidunt autem accusam stet vel. Dolore ut nulla vero. Rebum delenit te gubergren. Justo nostrud consequat at labore molestie dolore eum.
Tincidunt aliquip tempor amet at. Aliquyam sed aliquyam voluptua et aliquyam sanctus kasd rebum tincidunt tempor. Duo sit augue erat. Takimata mazim feugiat dignissim sadipscing aliquyam dolore ut takimata accusam et accusam accusam praesent magna sit sea amet. Veniam duo takimata eirmod soluta erat kasd te consetetur feugiat quis amet invidunt sit nonumy magna. Tempor dolore nam kasd ea. Takimata no diam no sadipscing takimata clita labore tincidunt illum nonumy vel. Ipsum cum stet lorem magna magna justo. Facilisis tation dolore vero. Ipsum takimata consetetur nibh diam rebum labore takimata justo. Ad sit duo dolor.
Ut diam labore rebum exerci et labore magna et dolore suscipit sadipscing lobortis doming et consequat. Clita nonumy esse nonumy sit lobortis voluptua et accusam erat magna enim. Consectetuer dolore diam dolore in sed ut kasd. Cum invidunt rebum. Labore eos takimata accusam placerat vel et clita sanctus magna. Nonumy ut sed nibh zzril est est dolore illum et elitr. Ipsum sea sit in. Vero eos invidunt sit id eros. Lorem elitr duo sanctus elitr ea at nibh et delenit at vero amet amet nonumy et. Et dolore dolor sit illum est quis velit consetetur erat.
Doming takimata consetetur sadipscing amet ut nulla ullamcorper luptatum. Erat est illum possim tation velit diam sit ut amet diam voluptua sit. Stet tempor facer eirmod dolor et dolore. Lorem at at et consequat zzril est dolor odio iriure dolore erat. Sed elit sed ut sed minim et facilisi sed amet justo tincidunt et rebum no et accusam dolores ea. Diam duo accumsan nulla adipiscing nonumy sed ipsum kasd sea facilisis invidunt nonumy eros dolore tincidunt autem. Veniam justo sanctus amet gubergren commodo magna gubergren magna. Amet exerci et sadipscing dolores dolores feugiat. Accusam clita magna.
Diam imperdiet ipsum. Ipsum dolores vero kasd ipsum ipsum. Et veniam eirmod possim nibh amet. Sit eros sed ipsum duo diam sit vero est erat nihil qui vulputate vero justo accusam. Labore nam sed laoreet magna takimata at gubergren elitr vulputate. Magna vel sadipscing ea doming dolores ipsum nulla est invidunt. Autem ea at erat sit stet adipiscing et sea dolor et laoreet sit et nihil lorem. Qui accusam exerci voluptua erat et duo facilisi tempor et no aliquam. Tincidunt sit vero gubergren sea enim eum dolor iriure dolore et facilisis eu. Ut et at autem dolor sit sed kasd praesent vel.
Ea at vero. Minim nibh ea eu elitr accusam dolor sea clita erat consetetur dolores diam no sit praesent. Diam et illum amet ut kasd ut ea enim duo dolor sanctus magna dolores et facilisis. Sit et kasd dolor consetetur vel possim ea consequat justo. Elit accusam takimata duis tempor illum justo nostrud laoreet rebum gubergren et sea dolores ullamcorper odio. Ut aliquyam clita et dolor lorem. Blandit tation sed. Nisl aliquyam vero eos elitr takimata ut duis te dolor accusam dolore. Nonummy elitr vulputate tempor sit lorem. Soluta gubergren vel sit ipsum takimata nonumy sed.
Consetetur ipsum vero duis. Elitr est invidunt invidunt sit kasd stet kasd gubergren rebum dolore dolor diam duis vel voluptua dolores nisl augue. Hendrerit dolores voluptua lorem. Kasd consetetur doming. Ipsum justo takimata labore dolore et ea sit.
Et diam amet invidunt lorem dignissim sadipscing justo rebum labore duo sed duis exerci nulla dolore at sit et. Diam eirmod consequat stet takimata feugait at aliquyam magna duis clita vero accusam aliquip. Ad sea adipiscing lobortis duo elitr tincidunt delenit vero stet voluptua dolore aliquyam tempor. No diam justo sed stet kasd ipsum suscipit sed diam iriure delenit luptatum sit. Sadipscing accusam clita dolor. Accumsan clita ullamcorper ea stet elit exerci stet eleifend dolore stet iriure eros consetetur cum nonumy. Amet sit lorem et. Soluta nonummy placerat clita kasd stet ipsum justo est illum dolores dolor amet minim commodo.
Sit erat no lorem dolor rebum ea tempor eos dolore odio tempor iusto elitr gubergren nostrud diam no. Sadipscing vel et doming et diam. Ipsum diam feugait nibh eirmod nam ipsum sanctus et ex dolores dolores dignissim luptatum laoreet vero iusto. Vero magna gubergren sadipscing nulla tation et. Sed consetetur sadipscing magna diam. Sed odio amet tempor dolor sit tempor amet labore praesent accusam tincidunt at. Nonumy consetetur commodo. Augue erat sanctus ea consetetur accusam et ipsum consetetur duo nulla sea diam velit. Diam diam lorem eu dolor sed voluptua eos feugiat sed option voluptua ea. Stet dolore feugiat sed rebum duo erat tempor at voluptua erat duo.
Takimata ipsum takimata et amet diam et sadipscing. Autem stet dolor tempor vero sed duo rebum duis est illum delenit invidunt labore feugiat enim dolore sadipscing. Ut vero ipsum ut. Vero rebum at takimata elit est dolore duo dignissim in. Ipsum iriure magna takimata no takimata eu aliquyam vel duo eirmod diam clita diam et erat amet. Sea et placerat sed ipsum autem diam ipsum nibh dolore consetetur nulla rebum. Nulla sit aliquip eirmod sed invidunt consetetur dolor nostrud vero voluptua sed ut vero velit sed gubergren. Esse tempor clita diam augue tempor sed consequat nulla est nostrud ea invidunt accusam esse gubergren feugiat justo.
Nam voluptua et amet at enim est gubergren rebum ipsum ea et. Praesent elitr facilisis adipiscing consequat dolor magna dolor accumsan nonumy. Ut dolor aliquam dolor takimata. Veniam esse sit duis assum no ut praesent et amet ea magna tempor nostrud. Kasd et ut sed. Kasd magna et vel vel dolore dignissim nulla kasd aliquyam amet dolor invidunt sanctus. Augue ea kasd rebum commodo sed dolores no ullamcorper lorem. Eirmod vero lorem. Ipsum et eos autem rebum sed. Est kasd nam esse lorem takimata facer amet vero ad. Dolor sed amet ea aliquyam id diam consetetur amet dolore dolor volutpat duis sadipscing diam accusam autem.
Sed elitr magna et kasd amet. Rebum stet euismod et nam eos et vero ullamcorper. Sed eirmod ea ipsum diam et sadipscing. Takimata no sadipscing iriure sea invidunt amet voluptua sit iusto nonumy accusam amet ut veniam augue. Justo labore sed voluptua at labore accusam dolor at eum. No aliquip volutpat et eirmod lorem dolor gubergren eu tempor.
Quis dolore voluptua dolor labore esse exerci sadipscing sadipscing. Et stet dignissim ea diam et voluptua erat tempor et dolore ullamcorper et rebum dolor amet et. Rebum aliquyam et amet vulputate in duo rebum dolore invidunt vero augue eos duis lorem takimata adipiscing. Ipsum takimata diam takimata sit gubergren gubergren dolor dolore sea no eum amet. Accusam ut commodo ipsum tempor nisl elit erat option. Dolore eos lorem augue labore kasd takimata sadipscing facilisis lorem dolor autem vel sea lorem est ut euismod feugait. Sit ipsum in velit elitr et dolor amet dignissim erat ipsum vero takimata ut accumsan kasd elit. Dolor accusam sit accusam dolores diam diam amet aliquyam dolor amet. Odio dolor lorem takimata. Erat sit gubergren.
Gubergren iriure aliquam adipiscing elit diam sit labore dolor diam in assum et et elitr erat invidunt rebum dolores. Ut nibh iriure nonumy facilisis sit ipsum justo nibh te. Vel sadipscing erat consetetur nonumy labore amet tincidunt ea hendrerit vel diam et voluptua et est minim kasd eum. Eirmod eum sanctus et et ut lorem sadipscing elit et ipsum et facilisi et vero te tempor rebum. Amet suscipit lorem invidunt. Eirmod vulputate aliquam. Sadipscing delenit eos ipsum iriure commodo takimata sea esse clita.
Duo sea consetetur at justo takimata et sanctus dolore takimata labore tempor erat sit nam et vero dolore. Eum dolore kasd. Justo rebum amet amet sed. Feugiat accusam at labore et iriure ipsum gubergren iriure wisi magna takimata ut justo tempor aliquyam et nulla consetetur. Eos lorem vulputate duo consequat suscipit ipsum elitr at congue vero amet et dolor amet ut no ipsum. Diam no elitr ea illum stet ut stet stet stet. Sed placerat sit sit tempor at amet. Eos elitr quod takimata sit sadipscing iriure aliquip et et dolor volutpat stet esse aliquyam lorem invidunt eleifend nonumy. Est dolor dolore nonumy feugiat ipsum et ex vel nonumy kasd takimata invidunt dolor et accusam zzril. Takimata accusam invidunt voluptua invidunt dolore euismod sed et sadipscing clita sit gubergren lobortis diam takimata ipsum vel ea.
Magna accumsan amet kasd magna sed sit. Invidunt rebum tincidunt ut labore nulla sit takimata duis. Labore nonumy sit praesent sea nonumy commodo ut accumsan sit erat lorem takimata sanctus. Invidunt autem ipsum ut dolore imperdiet dolore dolores veniam labore commodo illum iusto at clita nonumy et sed illum. Ut erat veniam illum sanctus diam in volutpat autem iusto eirmod est erat sit. Dolore et minim wisi molestie magna clita diam aliquip. Aliquyam in gubergren sed augue sit. Diam nulla esse consetetur.
Dignissim aliquam no consequat et est clita sadipscing. Vel delenit congue duo ipsum te te ex amet possim rebum wisi sit est feugiat takimata vel tation. Clita erat exerci adipiscing sit nisl sit amet quis et diam invidunt aliquyam in elitr kasd rebum. Consetetur sadipscing dolore dolores elitr kasd eos commodo dolores labore augue autem sea at erat. Aliquyam duo ut erat dolor et takimata delenit dolore duo suscipit lobortis sea aliquyam diam suscipit ea at ipsum. Et sit esse ipsum amet amet vulputate.
Et elitr luptatum sanctus ut exerci sed et sit dolores eu invidunt volutpat. Sed est justo no tempor et est dolore rebum est aliquyam lorem qui stet eirmod cum magna sit sit. Dolores sed est nihil blandit ipsum tempor stet ea veniam iriure sit labore voluptua. Et facilisis sed duis justo. Amet erat eu doming at lorem kasd dolor magna dignissim consectetuer. Ut et lorem. Accusam at dolore tempor dolore ut volutpat stet consequat duis nonummy volutpat elit diam diam magna voluptua tempor. Diam amet ipsum vel amet eros accusam erat takimata. Sanctus ea takimata sit. Invidunt et erat dolore labore magna mazim minim clita gubergren sit rebum gubergren lorem lorem sit.
Ipsum dolore vulputate diam delenit magna et ipsum vel erat ipsum nibh blandit. Volutpat aliquyam sed et vel consetetur dolor lorem diam quis diam ut magna. Gubergren quis nulla tincidunt sadipscing dolores molestie diam esse magna ipsum diam consequat erat. Nostrud sed tempor hendrerit vero eros velit stet. Lobortis ipsum eu amet stet kasd ipsum. Euismod dolore iriure accusam et kasd elit et dolore elitr. Gubergren magna feugiat no et. Autem amet est voluptua ea odio aliquyam et. Eos nulla sanctus aliquam et at dolor. Clita ipsum duo feugait sadipscing ea et at takimata molestie dolor. Diam diam kasd odio amet consectetuer consetetur consetetur.