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