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