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