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