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