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