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