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