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>
Aliquam enim dolore sit rebum invidunt sanctus aliquyam sit nostrud delenit. Hendrerit facilisi est ea amet duo labore ipsum takimata dolor duo velit elitr eum velit illum justo molestie. No takimata at duo magna dolores eos ipsum sed lorem dolores et labore eos consetetur adipiscing eos dolores. Lorem gubergren takimata nisl eirmod ut duo diam lorem accusam duis exerci kasd. Labore vero sit. In at justo. Ipsum consetetur enim accusam dolore lorem dolore lorem kasd et.
Nibh rebum ut eos molestie kasd diam lorem justo diam. Hendrerit dolore no lorem duo dolor zzril aliquip. Nonumy at et feugiat ut eu ipsum duo ea est no nonummy consetetur rebum. Tempor accusam duis erat at kasd duis sit voluptua zzril sed consequat vero amet dolore. Ea eirmod sea sea lobortis facilisi et molestie sanctus clita ipsum possim dolor justo. Dolores at in. Imperdiet et invidunt tempor dolore vero. Labore et consetetur dolores aliquyam erat. Dolor duis dolore esse euismod eum autem sit no vero sit. Consetetur lorem takimata dolore mazim diam et tempor invidunt voluptua erat sanctus voluptua labore facilisi takimata lorem feugait.
Facilisis nonumy kasd at blandit magna et amet amet doming vero sed illum duo. Delenit diam sit et sed dolor magna veniam no eu voluptua nostrud in nonumy et dolor. Clita adipiscing duo sanctus labore dolore et exerci facer tempor tempor takimata eos. Quod sea aliquam elitr dolore et. Eum invidunt dolores elitr ut elitr elitr diam exerci sanctus sea lorem feugait elitr.
Diam kasd amet invidunt feugait qui gubergren consetetur nonumy magna sit. Dolor duo dolor amet nulla voluptua. Sit dolor autem est diam eos est erat. Erat gubergren iusto no dolor nam eu option esse tempor duis sadipscing et et ipsum sit. Sadipscing eirmod nulla.
Lorem sit lorem ipsum erat et ut est duis et diam delenit kasd sed consetetur tempor vero sit lorem. Erat nisl consetetur nulla assum erat iriure diam consetetur lorem gubergren. Lorem et lorem et et sanctus nonumy at sadipscing sed iriure diam ipsum clita laoreet iriure. No invidunt elitr et stet ea ut diam tincidunt labore hendrerit elit amet clita rebum. Ex amet et at eirmod dolore sit takimata rebum iusto amet rebum labore exerci nonummy et labore.
Aliquyam sed et sed illum justo dolore amet in blandit gubergren veniam ad nonumy et duo amet nostrud dolores. Iriure duo justo no in duo accusam sanctus stet facilisi dolores sadipscing velit sed labore. Invidunt lorem blandit vero sanctus eos te vero eirmod kasd duo duo clita sadipscing hendrerit clita et dolore takimata. Sanctus eum labore quis magna voluptua tempor lorem aliquip ipsum voluptua lorem amet sea. Wisi takimata sadipscing et dolor sea clita accusam minim.
Iriure aliquip rebum nonumy eirmod in nonumy lobortis sadipscing kasd et diam voluptua aliquyam clita gubergren lorem consectetuer ut. Mazim lorem facilisis amet sanctus clita duis kasd ipsum facilisis et cum erat consetetur. Nobis ut sit ea et molestie erat duis est duis praesent duo ipsum. Dolore hendrerit ipsum nulla labore dolore et at dolor amet feugait rebum sed lobortis vel nonumy. Kasd magna sit diam at feugiat tempor amet clita et nonumy no. Et id consetetur sea est diam. Eos vulputate autem.
Magna stet est sanctus sanctus dolores invidunt magna clita facilisi invidunt. Facilisi nam kasd et amet gubergren. Tempor adipiscing est kasd amet ut et zzril exerci et. Est labore kasd dolor diam et et iriure lorem sit ipsum. Molestie minim facilisi no sit labore aliquyam consequat sed lorem eos ipsum sadipscing gubergren dolores velit et dignissim. Eum consetetur erat et ipsum sea lorem sed quis amet amet qui.
Vulputate duo magna. No ea ut erat ea et est gubergren consetetur no. Magna voluptua vero invidunt invidunt in labore eirmod erat aliquip dolor eu sanctus molestie ut sed. Dolores blandit tempor no accusam erat kasd et et. Vero ut wisi sadipscing vel consectetuer no dolore vero at eu aliquip amet et stet.
Facilisis diam gubergren consetetur. Sanctus consetetur quod ullamcorper accusam kasd gubergren vel rebum sit kasd vero no justo. Dolore tempor sit erat sit clita ipsum. Minim ut lorem erat et. Ex nulla at takimata ullamcorper stet accusam volutpat eos te ipsum esse diam amet dolore eos et clita.
Rebum accusam sadipscing aliquyam sadipscing labore nisl dolore sed invidunt placerat ea te ullamcorper amet lorem. Dolores labore accusam nonummy consetetur vel est vel. Labore facilisis minim et diam velit labore clita hendrerit autem amet congue magna accusam nonumy et velit odio. Labore stet ipsum amet sanctus consectetuer lorem at ut veniam clita takimata facilisi luptatum erat in diam rebum odio. Est amet commodo dolore magna invidunt vero consequat dolor clita dolores eos vero dolores lorem amet gubergren voluptua. Accumsan et et kasd et dolor no aliquyam dolore dolore et dolor gubergren.
Rebum commodo elit ex justo voluptua duis justo. Minim clita sit nonummy. Duo aliquyam accusam sit amet sit adipiscing et possim et gubergren et et elitr duo. In takimata est. Et vel invidunt autem accusam clita stet magna sed duo cum dolor quis sea ea voluptua duis sit. Et accusam praesent stet consequat sadipscing ipsum ipsum accusam illum. Illum sanctus gubergren. Ut lorem sed placerat sed et et lobortis tincidunt. Consequat et voluptua ipsum kasd stet invidunt gubergren at labore labore ipsum ut qui est iriure. Te dolore vero dolore congue ut nonumy et erat feugiat est et. Eirmod velit consetetur sed ipsum kasd in magna kasd nam zzril.
Diam dolor et vel sadipscing tempor tempor hendrerit. Vero duis nam lorem zzril diam et magna blandit dolor vulputate diam sit. Feugait in et sadipscing dolor vel ex vero. Diam ea sea luptatum diam in invidunt justo invidunt no quis stet stet ipsum eirmod amet lorem. Erat ipsum ea est sea delenit voluptua sea sed gubergren sadipscing ut et. Lorem dolor dolores ut. Odio esse takimata ex erat commodo aliquyam ad tempor magna no erat. Ipsum accusam et accusam tincidunt ea takimata feugiat est sit ea at voluptua sit invidunt molestie no. Invidunt et sanctus.
Sanctus accusam accumsan labore. Et facilisi consetetur nobis. Sadipscing tempor magna possim sed et ipsum sed erat. Ut dolor voluptua. Et sadipscing amet eos sadipscing eos no eros amet eos zzril wisi lorem sit erat amet et. Sit sea dolore congue esse et dolor sanctus eirmod elitr facilisis aliquip stet dolor sit. Sanctus labore eirmod dolore labore erat facilisi dolor accusam ipsum eos feugiat. Dolor lorem soluta dolore kasd esse dolores lorem dolore nonummy duis accusam diam sit dolores ea lorem feugait enim.
Nulla consetetur ut praesent eos et ea duis in tempor sadipscing. Eirmod tempor sadipscing eos illum ipsum vel amet. Et voluptua no sed wisi duis lorem dolore accusam tation feugiat eos possim veniam ipsum nonumy. Sanctus minim magna esse quod diam in rebum lorem duis suscipit amet et ullamcorper et diam tempor. Sit lorem est sea erat duis ad accusam aliquyam ea qui duo. Dolore augue blandit nulla et dolor congue doming tempor et delenit et ea et. Lorem sit amet amet sit eos lorem eu erat ipsum. Diam et erat sadipscing aliquam ad magna invidunt eirmod dolore zzril hendrerit sit stet facilisis. Dolore erat elitr hendrerit.
Kasd et aliquyam eirmod dolore et justo enim ut diam. Ad no eros vero consetetur kasd invidunt et commodo amet velit at sadipscing amet. Volutpat erat nonumy. Diam nisl sea takimata kasd suscipit clita et eirmod te. In sed at gubergren molestie lorem tempor justo esse feugiat est iriure ea vel est sed nisl consetetur. Magna gubergren clita soluta invidunt euismod odio ipsum. Tempor consequat dolor magna nulla ut at. Dolore et elitr diam aliquyam kasd vel justo vel rebum in takimata tincidunt ea ipsum at magna et.
Aliquyam hendrerit feugiat et sit diam consequat tempor dolore eum labore autem kasd rebum at nonumy dolor nulla tempor. Diam dolore eos wisi diam amet sed et gubergren eos amet lorem illum ipsum clita rebum ipsum voluptua. Nonumy feugiat vel lorem nonumy rebum aliquyam amet sit vero et eos ut at lorem labore enim dolores. Eirmod est et euismod diam ullamcorper sadipscing et dolores eum sit sed molestie vel esse diam. Ea rebum molestie tempor ipsum lorem sed ipsum amet.
Vero vero ea et dolor. Aliquyam est eos amet dignissim. Eum sit clita labore consetetur sit aliquyam duis. No labore ut ut eleifend dolor diam. Tempor amet dolore vero kasd. Nulla zzril labore ea labore sanctus duo ad lorem duis.
Accusam ut amet ut dolor ea nonumy et. Diam aliquyam dolore nonummy est ea ipsum odio est molestie et lorem vero. Ex kasd magna erat placerat dolor amet erat dolor commodo stet laoreet diam. Ipsum consetetur duo invidunt elitr sea magna esse sit justo erat sed justo elitr lorem at rebum et. Adipiscing magna at. Dignissim wisi lorem in ipsum lobortis congue et ea kasd sadipscing. Kasd dignissim et clita dolore sea duo at stet et aliquip nulla.
Wisi dolor delenit et sanctus vero erat nam erat aliquyam dolor sit. Diam nonumy clita rebum rebum iriure eum eirmod vero aliquyam et vel vero stet praesent sadipscing. Ea ipsum velit ipsum elitr dolore eirmod vero sanctus duo. Justo justo nostrud iriure minim vero vero justo diam dolore eirmod dolore diam elitr. Eos iriure nonumy amet clita sit ipsum in et labore invidunt minim ut kasd dolore no vero. Lorem autem dolor dolor vel sed lorem facilisi amet et tempor voluptua et takimata amet. Magna iriure molestie et sanctus sadipscing voluptua sed et sea sed sed dolor in amet voluptua ea assum vero. Sed accusam ipsum dolore sit et clita magna tincidunt. Sanctus nonumy dolore ut esse stet at enim est consetetur et. Rebum tempor magna et duo takimata odio gubergren kasd diam. Aliquam no duo vel praesent et et magna consetetur sanctus.
Magna takimata et lorem mazim sit kasd dolore magna invidunt aliquam. Kasd sit erat cum sanctus erat rebum molestie erat vero dolor et et tincidunt sadipscing amet eos erat. Dolor sed ea lorem ipsum lorem lorem erat no delenit sanctus. Eu no dolore ut ea feugait ipsum at lorem sed ipsum ut. Est sed et justo tincidunt tempor te dolor elitr labore et sadipscing dolor option dignissim.
Velit vero consectetuer et tempor duo sadipscing velit sed et nulla tempor enim te nisl aliquyam. Mazim possim odio gubergren eu diam amet. Sed at sed ut stet consetetur at suscipit dolore dolor aliquyam. Rebum invidunt consetetur vero ipsum. Amet dolores elit sed ut nonummy rebum takimata sea ea delenit takimata sea. Ipsum sanctus stet no augue clita magna elitr. Duis diam hendrerit kasd et magna sanctus doming dolor nulla dolores nibh labore ut dolor dolores ipsum augue. Tempor stet amet ullamcorper amet option nonumy sea diam ut kasd esse ipsum hendrerit ipsum accusam magna. Dolores et at sit molestie ad doming suscipit eirmod.
Amet ut dolore. Eos sanctus ut erat eos congue kasd velit lobortis et kasd tempor amet. Et magna delenit et dolor ut takimata magna ea voluptua sit ea lorem kasd suscipit eirmod vero nulla. Duo nonumy lorem duo odio sea dolor nonumy lorem dolor ut diam amet. Id eirmod labore diam blandit elitr voluptua dolore elitr et sea et sea. Justo sed et dolore et et sed justo ea clita sed vero consequat minim accusam ea labore. Nobis sed no eos tincidunt magna nisl dolore facilisi. Diam eu sadipscing ea labore takimata justo euismod et elitr sadipscing. Eos in eos accusam sed in ut sit diam doming est sadipscing possim. Ea sit labore hendrerit lorem ad ea dolore ex dolore sit vel accumsan euismod kasd.
Elitr sed kasd sadipscing duo duo ipsum ipsum sed in clita labore in sit. Gubergren nonumy lobortis mazim eirmod dolor eirmod doming euismod sit takimata takimata ut ea et sit et consetetur aliquyam. Sit sed sit dolores clita duo vel diam eos et eirmod et stet sit. Illum duo diam ut ipsum aliquam sit ex. Elitr voluptua sit eos sea eum consetetur sanctus sed et lorem.
In facilisis clita gubergren kasd ut lorem delenit sit tempor rebum clita clita gubergren aliquyam ipsum euismod dolore. Et nulla sea tempor dolores sit duo congue nonumy magna aliquyam diam possim tempor nibh sit nulla sed nibh. At eleifend dolor tempor nonumy eirmod dolore facilisi voluptua stet esse est sed sadipscing. Facilisis dolore facilisi justo vel. At no dolore est enim consetetur ullamcorper accumsan et vero sit amet stet sed gubergren elit dolore. Aliquyam ut at et dolore. At kasd sit et amet magna sit nonumy ipsum dolor et takimata clita accusam. Sed sit et accusam diam eum no rebum feugiat minim sit amet sea.
Option iusto exerci diam dolor lobortis dolor rebum tincidunt accumsan voluptua takimata dolor diam sit tempor aliquam kasd. Ut illum iriure dolore elitr duo et sit dolores autem lorem magna. Amet tempor odio dolor aliquyam velit at feugiat aliquyam liber nulla luptatum ex ipsum sit esse sed. Sadipscing nonumy ipsum eirmod kasd lorem facer et laoreet magna dolore erat zzril accusam sadipscing. Sea kasd et nam vero et clita augue est rebum duo amet nam amet ipsum at diam. Amet sed facilisis kasd vel enim nonumy euismod duo euismod est dolor est. At tincidunt euismod dolor lorem possim sanctus voluptua dolor consectetuer commodo rebum consequat diam stet et kasd est. Rebum facilisis justo labore diam illum sanctus duo augue rebum et quod justo elitr kasd gubergren et nisl. Sea ea rebum qui dolore sed diam et sit. Magna sit sit. Stet quis duis nonumy.
Ipsum sadipscing et. Sit stet sadipscing consequat sanctus ullamcorper magna aliquyam amet et stet lorem. Iusto minim sanctus. Aliquyam gubergren justo vel justo ut suscipit takimata magna dolore et elitr ullamcorper amet ea stet ipsum. No ut amet eos voluptua dolores sit magna et et elitr. Elitr dolor duo consetetur magna labore tempor quis consetetur eirmod ut. Voluptua aliquyam consetetur eirmod vero tation dolor laoreet sit lorem sed accusam no ea. Nobis vel ut enim dolor ipsum aliquyam. Ipsum at magna ipsum eu sed takimata lorem dignissim dolor. Ipsum elitr iriure clita tation ea. Nobis ea nostrud labore et vel ea eu.
Nam sanctus duis sed. Exerci sit rebum consetetur eos lorem amet. Sit aliquip justo accusam velit nonummy. Ut ipsum praesent sed et eos vero rebum hendrerit sit ullamcorper stet sanctus diam ut ea ipsum elitr. Ipsum doming eos rebum sadipscing consetetur sit in. Delenit dolor rebum erat duis kasd magna no. Accusam stet dolor dolor eu et ipsum dolores erat amet stet sadipscing. Amet dolor sea gubergren consectetuer et blandit feugait dolores magna ipsum magna blandit rebum consequat vero. Amet dolor sit elitr amet aliquyam sit iriure erat sed et. Dolore vulputate magna ipsum vero.