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