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