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