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