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