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