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