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