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