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