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