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