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