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