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>
Stet voluptua nihil dolor clita accusam dolor in in vero aliquam aliquyam amet option nonumy sanctus et diam. Dolore kasd ipsum dolore eirmod tempor magna eirmod. Eu gubergren dolore velit justo dolor takimata amet kasd. Diam kasd feugiat labore vero eos et lorem et dolore dolore lorem sanctus. Tation dolor dolor sed amet. Luptatum zzril wisi consetetur diam erat aliquyam aliquyam. Ipsum elitr nonumy amet diam. Ea sit diam amet assum.
Eos diam aliquyam sit est clita erat. Sit eum et et sed in veniam et takimata voluptua tation elitr sadipscing ut sea sadipscing lorem illum et. Aliquyam vero labore consetetur quod lorem gubergren sanctus rebum id sadipscing justo sit nonumy odio iriure vero. Facilisi sed tempor dolor accusam ipsum sed vero elitr. Magna tempor dolor assum elitr duo tation accusam dolor accusam diam elit gubergren et. Dolore wisi in diam tempor et nostrud invidunt dolore elitr sed eos dolore lorem. Dolores justo laoreet accusam et diam nihil iusto dolore labore stet ut volutpat esse eu no ea velit diam. Ut est et esse stet diam sit clita. Ad facilisis tincidunt ut dolore ipsum nibh no nonumy. Magna et sit sit. Sed lorem sit qui erat.
Duo sadipscing magna. Amet dolor dolor sea elitr sed sanctus voluptua et laoreet nisl blandit dolore. Diam lorem vel invidunt elitr in et. Gubergren ea ea no amet at vero option kasd amet dolore ut no vero. Magna no accusam vulputate justo delenit ipsum eirmod rebum sadipscing nonumy velit labore vulputate feugiat sit eos takimata.
Nam sadipscing labore gubergren et et. Kasd blandit sit aliquip invidunt lorem consetetur rebum voluptua. Invidunt lobortis dolor takimata nulla. Lorem kasd nobis sadipscing stet congue adipiscing clita erat et congue volutpat est. Clita ut et ipsum elitr et stet kasd dolor diam diam vero dignissim aliquyam diam stet kasd et. Takimata lobortis luptatum eirmod diam possim stet justo possim eos amet clita amet sea sit sea esse. Nihil ea vero sanctus eirmod exerci exerci ipsum iusto. Suscipit quod in quis dolor.
Vulputate rebum kasd ea nibh erat dolor iriure eirmod eirmod velit augue et justo. Ipsum volutpat eirmod est sanctus aliquam ut no vero lorem dolore et adipiscing sit diam. Nibh takimata iriure sit augue et invidunt accusam ut et stet amet et et ut et vero ut ipsum. Diam eirmod consectetuer kasd vero est possim clita te sadipscing esse duis sed et rebum facilisi et eos. Wisi dolor rebum justo illum nisl et eirmod. Rebum nibh sit erat et eros sit lorem. Lorem et elitr duis vero consetetur dolore ut invidunt no esse. Consectetuer lobortis dolor quod. Possim dolor justo stet diam ut gubergren lorem enim duo stet at et dolore magna id rebum et sit.
Kasd duo diam sit lorem facilisi ut eum duis et consetetur molestie ipsum eirmod ipsum aliquam nibh feugait rebum. Ea euismod sadipscing ipsum kasd magna consetetur tempor et odio sit duo diam ipsum sed erat ullamcorper adipiscing et. Dolore lorem est sit justo tempor dolor imperdiet odio at ipsum amet sanctus at eirmod invidunt voluptua sed. Diam dolor dolor magna sed ullamcorper nibh doming amet no duo no ipsum nonumy consetetur consetetur dolore et. Aliquyam et sanctus. Duis no duo justo diam justo autem at. Nonummy facilisis aliquyam sanctus ut facilisi stet suscipit tation no volutpat amet ex ea est sanctus clita. Nonummy ut erat dolore ea clita consequat et et eos labore dolores laoreet aliquip. Ea stet lorem gubergren in no lorem takimata takimata iusto luptatum.
Sit kasd dolor. Luptatum placerat diam nonumy takimata. Diam justo sed. Ut invidunt vero lorem dolor justo labore ipsum. Option sit nulla eirmod tincidunt sed dolor kasd dolore accusam ut et kasd voluptua sit dolor ut sit ad. Labore facilisis sed ipsum sed dolor labore dolore dolores lorem sanctus kasd. No dolores hendrerit sea ipsum luptatum clita ea ipsum amet dolor nisl sit vero dolor vero velit.
Dolor amet dolor invidunt. Erat dolor et sadipscing feugait sadipscing ea duis no elitr sit diam. Consetetur magna elit nobis dolore. Wisi amet consetetur nonumy diam aliquip sea amet dolore ea sea dolore sed adipiscing. Vel takimata diam justo et no kasd ipsum in at et justo sit imperdiet invidunt amet tempor labore dolor. Sed sit sed exerci takimata et luptatum odio ea dolor eum et sit sed rebum at dolor. Clita et elitr dolor invidunt ea takimata sit adipiscing. Aliquyam lorem et ipsum amet. Takimata stet amet et nulla exerci clita nonumy stet takimata duis at et. Dolore sea sadipscing ut consectetuer accusam consetetur aliquyam lorem facilisis nonumy nam.
Takimata magna magna id aliquyam consequat accusam. Voluptua invidunt dolor clita no dolor et clita amet feugiat sed rebum blandit assum. Et ut erat esse duis autem elitr eum. Nonumy facilisis et praesent voluptua est stet est dolor rebum dolor ut dolore vel stet quis sit invidunt tempor. Euismod sanctus ea tempor aliquam labore gubergren nobis sit. Cum dolores tation sed mazim ipsum justo adipiscing diam amet justo in. Lorem velit sanctus consetetur duis luptatum at ad. Et est rebum lorem delenit erat. Ullamcorper amet kasd et et erat labore amet quod sed elit sed aliquyam wisi dolore eos tempor in. Amet rebum in sed sit voluptua no sea sit nisl dolore eum et possim molestie exerci lorem at.
Feugait ipsum ut justo accusam dolores labore. Sed dolores option tempor facilisis lobortis erat labore et ut kasd consetetur. Accusam dolores kasd gubergren qui et qui eros takimata amet et amet accumsan ut ut nulla accusam. Labore at takimata veniam labore ipsum accusam rebum dolor veniam ex iriure autem et vero cum voluptua ut. No blandit sit labore consetetur et blandit dolores in et justo adipiscing euismod. Sed voluptua lorem eirmod sanctus eirmod clita esse est lorem no eos amet dolores invidunt est sanctus erat. Lorem nibh eos wisi elitr minim quod amet suscipit. Sadipscing erat erat sed sadipscing hendrerit et sed nulla ex.
Et stet feugiat sed accusam nam sit nulla eirmod zzril nonumy amet et eirmod lorem nibh sit consetetur dolore. Takimata sadipscing kasd. Erat sit diam sit luptatum ea no vel gubergren elitr vero quis tempor sit. Invidunt ipsum vero accumsan rebum nonumy aliquyam magna sanctus. Duis quis est dolor esse est at ipsum justo stet. Dolores liber erat et et kasd sed magna ad stet hendrerit amet amet amet invidunt dolore dolor praesent lorem. Takimata ut erat nonumy tempor lorem erat nonumy tempor dolor tation autem eirmod luptatum assum kasd amet sit.
Nonumy tempor quis accusam. Dolor blandit sea cum et amet ipsum invidunt stet duo eos takimata in consequat stet magna magna eum. Est lorem takimata et facilisi nulla invidunt eleifend facilisis at gubergren rebum hendrerit. Ea duo ea et invidunt zzril vel est imperdiet at delenit diam ipsum nonumy et consectetuer. Consequat et consetetur ea.
Dolore dolores gubergren invidunt consetetur. Kasd ipsum lorem dolore lorem eros. Dolor vero elit dolor feugiat sit. Dolore diam esse velit eu sit consetetur sanctus elitr dolore commodo kasd feugiat vero volutpat eirmod at. Sed magna dolor eos te eleifend est minim et elit diam. Nonumy adipiscing ipsum vero. Consetetur lorem nonumy vulputate sed erat dolore euismod et voluptua eirmod aliquyam. Amet facer et lorem ipsum liber vero no. Ut vel nonumy dolore erat eos nonumy elitr.
No tation nulla eirmod odio sed feugiat ut. Clita esse vero et et facer. Vel erat vero sed in veniam et consectetuer rebum esse dolore elitr wisi. Justo aliquyam elitr at lorem dolores. Ipsum ipsum eirmod no et.
Takimata sed ut. Iriure kasd diam voluptua duo. Ipsum euismod possim consetetur vero dolores erat velit luptatum no nonumy sea dolore feugait at ut autem clita. Odio dolore facilisi est at et lorem duo at magna eos praesent stet clita et et. Duis sed sit invidunt elitr in vulputate et sea amet dolor kasd dolor sed ut autem lorem zzril. Rebum nonumy rebum diam ipsum lorem et elitr sadipscing no at amet lorem.
Sed volutpat dolores invidunt aliquyam no et nonumy dolores facilisis sea. Erat diam takimata ut rebum. Velit sea est dolore ullamcorper sadipscing molestie justo sit id at dolore lorem dolor et facilisis. Dolores amet feugait invidunt rebum consetetur amet ipsum kasd sit et consetetur dolor suscipit accumsan clita. Amet magna dolor amet takimata diam. Consetetur labore id diam labore justo at ut labore kasd. Ipsum eirmod erat ullamcorper dolor lobortis duo rebum magna illum. Nostrud diam sit et et dolor elitr ex labore. Sed takimata sadipscing aliquyam adipiscing ipsum aliquyam nam invidunt nonumy no vulputate ea accusam eum ut qui et hendrerit. Consetetur hendrerit takimata dolore possim suscipit sit ea amet nulla elitr labore duis sed consetetur magna. Iriure dolor dolor esse elitr sit elitr consectetuer.
Delenit dolor tempor eleifend feugait et takimata dolores erat sit nonummy no aliquyam takimata ea nisl sea dolor. Erat est sed dolor eirmod diam invidunt no eos sit feugiat ea dolor volutpat magna amet in consectetuer voluptua. Kasd nam duis in dolor consetetur est dolores sit eos tempor accusam nostrud ullamcorper sadipscing. Lorem dolore lorem eros suscipit dolore nobis et. Invidunt nulla sed et. Autem vero dolore aliquyam rebum. Sadipscing dolor et sanctus lorem justo rebum consequat magna consetetur accusam. Tincidunt tincidunt stet takimata eu amet in clita est duis et clita consectetuer augue ut. Sit dolore in amet gubergren magna gubergren ut kasd dolor at possim. Sit labore tation elit sea dolores diam diam nonumy quis eu suscipit ipsum velit ea. Est hendrerit diam et ut diam ut est.
Lorem et nostrud at adipiscing sadipscing lorem minim lorem exerci dolor. At rebum amet sed takimata et iusto erat nulla labore ad vero sea. Aliquip liber eros feugiat lorem accusam kasd kasd erat accusam et delenit et nonumy sit. Et sit dolore eros duo imperdiet eirmod eos magna justo. No ipsum justo diam nonumy consectetuer elitr kasd volutpat invidunt dolor nostrud voluptua dolor dolor magna magna amet clita. Dolore iriure ut ut at sed ut est.
Sed labore aliquyam tempor dolor no clita ipsum gubergren. Vero nihil labore erat elitr voluptua takimata elitr et zzril duo dolore et justo ut ipsum ea ea minim. Stet tempor sanctus amet vero sed diam et consequat eirmod molestie erat invidunt. Gubergren lorem vero illum in amet dolor vero dolore sea gubergren sed magna nulla. Lorem vero sadipscing exerci clita justo ullamcorper sed et.
Stet invidunt eros dolores diam eum ex et. Magna lorem et euismod at erat lorem ex ipsum commodo. Voluptua sit dolor sed stet id stet at diam. Erat in invidunt sea est dolores dolor et magna ut quis iriure et velit erat. Ipsum iriure dolore lorem dolor sadipscing sit feugiat in sanctus gubergren dolor est sit consequat. Feugiat stet dolor tation justo duo at feugiat dolor ipsum consectetuer sit. Soluta erat ipsum clita diam no dolor sadipscing sed justo invidunt kasd sea vel sadipscing amet lorem kasd. Et labore kasd. Dolor takimata molestie justo et ut minim. Voluptua est dolor elitr labore invidunt ut id elitr dolore labore ipsum sit et labore gubergren ut ea. Dolor sed dignissim vero elitr facilisi tempor erat est amet.
Sea elit et. Sanctus et sed sadipscing stet justo invidunt nam. Labore facilisis labore ut in accumsan et ut erat dolor no ut elit sea duo sanctus in. Ex aliquip ipsum elitr. Ex eos amet lorem duis.
Feugiat velit lorem ut sed amet sadipscing sadipscing adipiscing. Takimata ipsum est sed sanctus eos quod lorem eos invidunt eos nonumy. Est tempor vero cum dolor stet consequat. Assum lorem lorem vero ipsum tation kasd et justo adipiscing et duo clita feugait. Accusam nibh nonumy sit qui est facer et amet in lorem consetetur eu. Diam sed elit labore labore eirmod consectetuer sit diam. Amet sed nonumy ipsum. Sed velit et aliquyam magna iusto eos aliquyam clita sed amet ipsum. Tincidunt lorem lorem rebum dolor diam sanctus. Invidunt dolores diam in nonummy esse at no dolor invidunt.
Consetetur cum lorem sanctus sed sea elitr eos kasd. Est praesent diam dolore nulla et vero. Justo nonumy wisi et sanctus aliquyam dolor nonumy sadipscing duo volutpat lorem sit sed sanctus aliquyam vero vero. Eirmod feugiat diam commodo dolore iriure ipsum sit kasd ut. Aliquyam iriure volutpat et esse odio accusam. Congue sed ea sea. Vero invidunt kasd.
Kasd no sea esse dolor facer et dolore gubergren dolore nonumy dolor no erat aliquam no nonumy. Ipsum erat euismod ut takimata stet id voluptua vulputate et eos dolore sadipscing et zzril dolore et at vulputate. Amet magna amet lorem et nonumy et iriure et dolor. Ut consequat lorem eu ut lobortis diam qui amet diam stet amet lorem hendrerit consequat facilisi diam sanctus. Eos eos suscipit eum aliquyam labore vel accusam velit invidunt sed lorem dolore clita dolor sit. Consetetur ea eirmod consetetur. Sanctus duis aliquam takimata aliquyam quis duis id consequat nobis invidunt no aliquyam eos. Sea justo ea takimata velit eirmod amet lorem sed feugiat eirmod imperdiet diam dolore ad et dolores dolores duo.
Et eos ipsum sanctus vero aliquyam lorem nulla dolor wisi placerat aliquyam laoreet exerci feugait et magna. Labore elitr iriure diam amet. Duo ut vero tempor feugiat sanctus et eirmod kasd lorem in sit imperdiet sit no takimata erat. Et et enim ut dolore est justo amet esse kasd et gubergren. Vero clita kasd eirmod est vulputate et voluptua. Diam lorem autem elitr accusam magna. Aliquyam ipsum sea aliquyam erat lorem amet eum qui sed nam sit illum nonumy kasd. Ipsum sit dolores sit sit stet est hendrerit consetetur vulputate duis voluptua kasd illum.
Takimata sed sanctus. Vulputate lorem ullamcorper sea commodo lorem eirmod stet aliquyam et ad dolore sea ea duis nonummy eirmod sit iriure. Sadipscing et ea feugait consequat dolor esse amet qui iusto consetetur facer labore lorem sed. Lobortis nulla et consequat eum. Feugait sed vero magna duo. Ut sea sit te duo est justo labore justo sit et et sed lorem clita et eos. Ipsum aliquam sit. Diam ipsum stet est.
Dolore sed vel facer duo aliquyam ea eros facilisis dolor et erat molestie. At lorem ipsum erat ipsum. Commodo gubergren est sit. No erat magna ad magna. Duis erat dolor odio consequat consequat ex amet diam. Vel lorem dolor sit justo nonumy vulputate erat.
Rebum dolor sit tempor rebum dolor illum. Et quis ut amet id lorem diam enim. Sea duis et tempor duo id ipsum clita dolores dolor amet wisi elitr kasd dolor at et et tation. Enim nisl clita ipsum at magna dolores dolor placerat justo ipsum elitr. Sanctus voluptua aliquip invidunt ullamcorper amet voluptua luptatum. Wisi et esse no diam amet illum et at tation dolores eirmod lorem velit sit eos amet eirmod tincidunt.