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