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