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