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