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