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