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