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