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