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