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