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