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