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