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