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