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