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