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