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