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