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