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