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