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