Full Using SVG With CSS3 and HTML5 Vector Graphics For Web Design Early Release Raw Unedited 1st Edition Amelia Bellamy-Royds PDF All Chapters
Full Using SVG With CSS3 and HTML5 Vector Graphics For Web Design Early Release Raw Unedited 1st Edition Amelia Bellamy-Royds PDF All Chapters
com
https://textbookfull.com/product/using-svg-with-
css3-and-html5-vector-graphics-for-web-design-
early-release-raw-unedited-1st-edition-amelia-
bellamy-royds/
https://textbookfull.com/product/svg-colors-patterns-gradients-
painting-vector-graphics-1-early-release-edition-amelia-bellamy-royds/
textbookfull.com
https://textbookfull.com/product/svg-colors-patterns-and-gradients-
painting-vector-graphics-1st-edition-amelia-bellamy-royds-kurt-cagle/
textbookfull.com
https://textbookfull.com/product/learning-react-functional-web-
development-with-react-and-redux-early-release-raw-unedited-1st-
edition-alex-banks/
textbookfull.com
https://textbookfull.com/product/management-of-construction-projects-
a-constructor-s-perspective-john-e-schaufelberger/
textbookfull.com
English in Action 2 Foley
https://textbookfull.com/product/english-in-action-2-foley/
textbookfull.com
https://textbookfull.com/product/act-made-simple-an-easy-to-read-
primer-on-acceptance-and-commitment-therapy-russ-harris/
textbookfull.com
https://textbookfull.com/product/threats-to-euro-atlantic-security-
views-from-the-younger-generation-leaders-network-andrew-futter/
textbookfull.com
https://textbookfull.com/product/demystifying-big-data-and-machine-
learning-for-healthcare-1st-edition-frenzel/
textbookfull.com
https://textbookfull.com/product/digitalization-of-society-and-
socio%e2%80%90political-issues-2-digital-information-and-research-
eric-george/
textbookfull.com
Programming Mathematics Using MATLAB 1st Edition
Oberbroeckling Lisa A
https://textbookfull.com/product/programming-mathematics-using-
matlab-1st-edition-oberbroeckling-lisa-a-2/
textbookfull.com
Using SVG with CSS3 and
HTML5
Vector Graphics for Web Design
Amelia Bellamy-Royds,
Kurt Cagle and Dudley Storey
Using SVG with CSS3 and HTML5
by Amelia Bellamy-Royds , Kurt Cagle , and Dudley Storey
Copyright © 2016 Amelia Bellamy-Royds, Kurt Cagle, Dudley Storey.
All rights reserved.
Printed in the United States of America.
Published by O’Reilly Media, Inc. , 1005 Gravenstein Highway North,
Sebastopol, CA 95472.
O’Reilly books may be purchased for educational, business, or sales
promotional use. Online editions are also available for most titles (
http://safaribooksonline.com ). For more information, contact our
corporate/institutional sales department: 800-998-9938 or
[email protected] .
Editors: Simon St. Laurent and Meghan Blanchette
(General Intro)
A Winding Path
(Making of this book)
Chapter 3 describes how CSS can be used to style your SVG, and
how SVG graphics can be used with CSS to style other
documents.
[Link to Come] looks at how the basic structure of SVG images can
be enhanced to create complete web applications, focusing on two
main areas:
Accessibility and metadata, in [Link to Come]
Animation and interaction, in [Link to Come]
Once you have all the pieces in place, [Link to Come] returns to the
big picture, discussing best practices for working with SVG.
TIP
Tips like this will be used to highlight particularly tricky aspects of SVG,
or simple shortcuts that might not be obvious at first glance.
NOTE
Notes like this will be used for more general asides and interesting
background information.
WARNING
Warnings like this will highlight combatibility problems between different
web browsers (or other software), or between SVG as an XML file
versus SVG in HTML pages.
How to Contact Us
(O’Reilly boilerplate)
Acknowledgements
(Thank you, thank you very much)
Part I. SVG on the Web
TIP
Alternatively, some graphics editors, such as Adobe Illustrator, allow you
to copy individual shapes (or groups of shapes) from the editor and
paste them into your text editor, with the pasted result being the SVG
markup for that shape.
To follow along with the examples in this chapter, it will help if you
have a basic familiarity with XML, or at least HTML (which is similar,
but not the same). In future chapters, we will also assume that you
are familiar with CSS and with using JavaScript to manipulate web
pages. We’ll always try to explain the purpose of all the code we
use, but we won’t discuss the basic syntax of those other web
languages. If you’re not comfortable with HTML, CSS, and
JavaScript, you’ll probably want to have additional reference books
on hand as you experiment with SVG on the web.
To draw the stoplight with SVG, create a new file in your code editor
and save it, as unformatted text with UTF-8 encoding, with the .svg
file extension. In that file, include the following code to define the
root SVG element.
TIP
Most complete SVG documents have other namespace declarations as
well, indicated by an xmlns:prefix attribute, where the prefix will be
re-used elsewhere in the document. Only one such namespace is
standard in SVG (XLink, which we’ll discuss in “Repetition without
Redundancy”), but SVG graphics editors often add custom namespaces
to hold software-specific data.
The root SVG element also has height and width attributes, here
defined in pixel units. This is the simplest way to define the
dimensions of a graphic; we’ll discuss other approaches in [Link to
Come].
Although it is not required, you may want to start your SVG file with
an XML declaration, indicating the XML version used or the character
encoding. The following explicitly declares the default (version 1.0)
XML syntax in a file with an 8-bit Unicode character set:
The XML instructions should appear on the first line of the file.
You may also include an SGML DOCTYPE declaration, although it is no
longer recommended for SVG. The DOCTYPE points to the document
type definition of the SVG file format, and is used by some validators
and code editing tools. However, some of these validation tools will
not recognize perfectly valid XML content from non-SVG
namespaces.
NOTE
SGML is the Standard Generalized Markup Language, the parent
language for both HTML and XML. It created the idea of elements
defined by angle brackets (< and >), with attributes defining their
properties. SGML document type definitions (DTD files) are machine-
readable files that define what elements are allowed for that document,
what attributes they can have, and whether they have start and end
tags, and if so what other types of elements can be included in-
between. The DOCTYPE declaration indicates which DTD files to use.
WARNING
If you copy SVG code into another file, such as an HTML 5 document,
don’t include the document type or the XML declaration. They are only
valid at the start of a file.
The child content of the SVG root element—the code that replaces
the <!-- drawing goes here --> comment—can be a mix of shape
elements, text elements, animation elements, structural elements,
style elements, and metadata elements. For this first SVG example,
we will mostly use shape elements. However, one metadata element
you should always include is a title. The following code shows how it
is added to the <svg>:
<svg xmlns="http://www.w3.org/2000/svg" xml:lang="en"
height="320px" width="140px" >
<title>Primary Color Stoplight</title>
<!-- drawing goes here -->
</svg>
In graphical SVG editors, you can often set the main title using a
“document properties” dialog.
When an SVG <title> element is included like this—as the first child
of the root <svg>—it will be used in the same manner as an HTML
<title>. The title text is not part of the graphic, but if you viewed
the SVG in a browser “Primary Color Stoplight” would be displayed in
the browser tab, and would be used for browser bookmarks.
TIP
The SVG <title> element is much more flexible than it’s HTML
equivalent; you can add titles to individual parts of a graphic as well,
and they’ll show up as tooltips. We’ll explore titles and other metadata
in depth in [Link to Come].
So far, we have a valid SVG file, with a title, but if you open that file
in the browser you’ll just see a plain white screen. Time to start
drawing.
Simple Shapes
At its most basic, an SVG image consists of a series of shapes that
are drawn to the screen. Everything else builds upon the shapes.
Individual SVG shapes can be incredibly complex, made up of
hundreds of distinct lines and curves. The outline of Australia
(including the island of Tasmania) could be represented by a single
<path> shape on an SVG map. For this introductory overview,
however, we’re keeping it simple. We’re using two shapes you’re
probably quite familiar with: circles and rectangles.
There are four shapes in Figure 1-1: one rectangle and three circles.
The layout, sizing, and coloring of those shapes creates the image
that can be recognized as a stoplight.
Add the following code after the <title> to draw the blue rectangle
from Figure 1-1:
The <rect> element defines a rectangle that starts at the point given
by the x (horizontal position) and y (vertical position) attributes and
has an overall dimension given by the the width and height
attributes. Note that you don’t need to include units on the length
attributes. Length units in SVG are pixels by default, although the
definition of a pixel (and of every other unit) will change if the
graphic is scaled.
TIP
“Pixels” when talking about lengths means CSS layout px units. These
will not always correspond to the actual pixels (picture elements) on the
monitor. The number of individual points of color per px unit can be
affected by the type of screen (or printer) and the user’s zoom setting.
In software that supports CSS 3, all other measurement units are
adjusted proportional to the size of a px unit. An in (inch) unit will
always equal 96px, regardless of the monitor resolution—but it might
not match the inches on your ruler!
TIP
If you’re used to mathematical coordinates where the y-axis increases
from bottom to top, it might help to instead think about laying out lines
of text from top to bottom on a page.
The fill attribute indicates how the interior of the rectangle should
be filled in. The fill value can be given as a color name or a hex color
value—using the same values and syntax as CSS—to flood the
rectangle with that solid color. The stroke and stroke-width
attributes define the color and thickness of the lines that draw the
rectangle’s edges.
TIP
If you don’t use XML regularly, be sure to pay attention to the /
(forward slash) at the end of every shape tag, closing the element it
creates. You could also use explicit closing tags, like <rect attributes
></rect>.
The first three attributes define the position and size of the shape.
The cx (center-x) and cy (center-y) attributes define coordinates for
the center-point of the circle, while the r attribute defines its radius.
The fill, stroke, and stroke-width presentation attributes have
the same meaning as for the rectangle (and for every other shape in
SVG).
TIP
If you re-create the graphic in a visual editor, then look at the code
later, you might not see any <circle> elements. A circle, and every
other shape in SVG, can also be represented by the more obscure
<path> element, which we introduce in [Link to Come].
You can probably figure out how to draw the yellow and green
lights: use the code for the red light, but change the vertical position
by adjusting the cy attribute, and set the correct fill color by
changing the fill presentation attribute. The complete SVG markup
for the stoplight is given in Example 1-1.
Example 1-1. Drawing a primary color stoplight with SVG
<?xml version="1.0" encoding="UTF-8" ?>
<svg xmlns="http://www.w3.org/2000/svg" xml:lang="en"
height="320px" width="140px" >
<title>Primary Color Stoplight</title>
<rect x="20" y="20" width="100" height="280"
fill="blue" stroke="black" stroke-width="3" />
<circle cx="70" cy="80" r="30"
fill="red" stroke="black" stroke-width="2" />
<circle cx="70" cy="160" r="30"
fill="yellow" stroke="black" stroke-width="2" />
<circle cx="70" cy="240" r="30"
fill="#40CC40" stroke="black" stroke-width="2" />
Visit https://textbookfull.com
now to explore a rich
collection of eBooks, textbook
and enjoy exciting offers!
</svg>
#40CC40 is a medium green color, defined in hexadecimal RGB
notation. It’s brighter than the color created by the green
keyword (#008800), but not quite as intense as lime (#00FF00).
There’s actually a limegreen keyword that is a pretty close
match, but we wanted to emphasize that you could use
hexadecimal notation to customize colors. We’ll discuss more
color options in [Link to Come].
The shapes are drawn on top of one another, in the order they
appear in the code. Thus, the rectangle is drawn first, then each
successive circle. If the rectangle had been listed after the circles, its
solid blue fill would have completely obscurred them.
TIP
If you work with CSS, you know you can change the drawing order of
elements using the z-index property. z-index has been added to the
SVG specifications, too, but at the time of writing it is not supported in
any of the major web browsers.
This code from Example 1-1 is one way to draw the stoplight in
Figure 1-1, but it isn’t the only way. In the next section, we explore
other ways of creating the same image with SVG. The graphics will
look the same, but they will have very different structures in the
document object model (DOM).
Why is that important? If all you care about is the final image, it
isn’t. However, if you are going to be manipulating the graphic with
JavaScript, CSS, or animations, the DOM structure is very important.
Furthermore, if you modify the graphic in the future—maybe to
change the sizes or styles of the shapes—you will be glad if you used
clean and DRY code, where DRY stands for Don’t Repeat Yourself.
Repetition without Redundancy
The code in Example 1-1 is somewhat redundant: many attributes
are the same for all three circles. If you want to remove the black
strokes or make the circles slightly larger, you need to edit the file in
multiple places. For a short file like this, that might not seem like
much of a problem. But if you had dozens (or hundreds) of similar
shapes, instead of just three, editing each one separately would be a
headache and an opportunity for error.
Some of the repetition can be removed by defining the circles inside
a <g> element. The <g> or group element is one of the most
commonly used elements in SVG. A group provides a logical
structure to the shapes in your graphic, but it has the additional
advantage that styles applied to a group will be inherited by the
shapes within it. The inherited value will be used to draw the shape
unless the shape element specifically sets a different value for the
same property.
Groups have other uses. They can associate a single <title>
element with a set of shapes that together make up a meaningful
part of the graphic. They can be used to apply certain stylistic
effects, such as masks ([Link to Come]) or filters ([Link to Come])
on the combined graphic instead of the individual shapes. Grouping
can also be used to move or even hide a collection of elements as a
unit. Many vector graphic drawing programs use layers of graphics
which combine to form an image; these are almost always
implemented as <g> elements in the SVG file.
In Example 1-2, the stroke and stroke-width presentation
attributes are specified once for the group containing three circles.
The final graphic looks exactly the same as Figure 1-1.
Example 1-2. Grouping elements within an SVG stoplight
<svg xmlns="http://www.w3.org/2000/svg" xml:lang="en"
height="320px" width="140px" >
<title>Grouped Lights Stoplight</title>
<rect x="20" y="20" width="100" height="280"
fill="blue" stroke="black" stroke-width="3" />
<g stroke="black" stroke-width="2">
<circle cx="70" cy="80" r="30" fill="red" />
<circle cx="70" cy="160" r="30" fill="yellow" />
<circle cx="70" cy="240" r="30" fill="#40CC40" />
</g>
</svg>
Why not specify the cx and r attributes on the group, since they are
also the same for every circle? The difference is that these attributes
are specific features of circles, describing their fundamental
geometry. Geometric attributes are not inherited; if they aren’t
specified, they default to zero. And if a circle’s radius is zero, it won’t
be drawn at all.
In contrast, fill and stroke attributes describe the styles to be used
when drawing any shape. Just like CSS styles in HTML, they can be
specified on a parent element and inherited by its children. In fact,
presentation attributes work exactly like CSS styles, and you can use
CSS style notation to set their values, as in Example 1-3.
Example 1-3. Using inline styles in the SVG stoplight
<svg xmlns="http://www.w3.org/2000/svg" xml:lang="en"
height="320px" width="140px" >
<title>Grouped Lights Stoplight</title>
<rect x="20" y="20" width="100" height="280"
style="fill:blue; stroke:black; stroke-width:3" />
<g style="stroke:black; stroke-width:2">
<circle cx="70" cy="80" r="30" style="fill:red" />
<circle cx="70" cy="160" r="30" style="fill:yellow" />
<circle cx="70" cy="240" r="30" style="fill:#40CC40" />
</g>
</svg>
Again, the result of this code is exactly the same as Figure 1-1; it
has just been re-written to clearly separate the geometric attributes
from the styles. The interaction between CSS and presentation
attributes will be discussed in more detail in Chapter 3; for now,
think of presentation attributes as default styles to use if CSS styles
aren’t specified.
What about the geometric attributes? Many graphics contain
repeated geometric shapes, and those shapes are often much more
complicated than simple circles. SVG has its own approach to
avoiding redundant code in those cases: the <use> element.
Example 1-4 defines the basic circle once, and then re-uses it three
times, with different vertical positions and fill colors.
Example 1-4. Re-using elements to draw an SVG stoplight
<svg xmlns="http://www.w3.org/2000/svg" xml:lang="en"
xmlns:xlink="http://www.w3.org/1999/xlink"
height="320px" width="140px" >
<title>Re-usable Lights Stoplight</title>
<defs>
<circle id="light" cx="70" r="30" />
</defs>
<rect x="20" y="20" width="100" height="280"
fill="blue" stroke="black" stroke-width="3" />
<g stroke="black" stroke-width="2">
<use xlink:href="#light" y="80" fill="red" />
<use xlink:href="#light" y="160" fill="yellow" />
<use xlink:href="#light" y="240" fill="#40CC40" />
</g>
</svg>
Let’s break that example down to clearly explain what’s going on.
The first change is a new attribute on the <svg> itself. The
xmlns:xlink attribute defines a second XML namespace,
"http://www.w3.org/1999/xlink", which will be identified by the
xlink prefix. XLink was a W3C Standard for defining relationships
between XML elements or files. The xlink:href attribute is
fundamental to many SVG elements in SVG 1, and other XLink
attributes were also adopted to describe hyperlinks. However, XLink
isn’t really used anywhere else on the web other than SVG, so the
namespace and attributes have been deprecated. When browsers
fully support SVG 2, you’ll be able to use the href attribute without
any namespace.
WARNING
Because a stand-alone SVG file is XML, you could use any prefix you
choose to represent the XLink namespace; all that matters is the
"http://www.w3.org/1999/xlink" namespace URL. However, when you
use SVG within HTML files—which don’t support XML namespaces—only
the standard xlink:href attribute name will be recognized.
At the time of writing (late 2016), skipping the namespace altogether
(and just using href) is supported in Microsoft Edge, Internet Explorer,
and the very latest Firefox and Blink browsers. It isn’t supported in
WebKit / Safari.
The final change to the SVG code in Example 1-4 is that each
<circle> in the main graphic has been replaced by a <use> element
that refers back to the single pre-defined circle with the xlink:href
attribute.
Random documents with unrelated
content Scribd suggests to you:
material sense should never be transferred to canvas: more than
anything else trees have superb rhythmic tendencies: inspired by
these, he should paint a rhythmic picture.
11. Tragedy
THE sky was impressive by its change from sunlight to sudden
darkness; and the ethereal fabric hung like black velvet over all the
woods. All the colour that a moment ago clothed the trees was gone
in an instant, as a candle is blown out; and the world was without
form.
I stood under a tree. The sense of my own presence was the only
note of reality that disturbed the dream of pre-world void.
In a few minutes the heavens opened high above my head and a
stream of light slanted down upon an old oak. Perhaps it was the
searchlight of a war god, for in a moment the oak was struck, and
the earth shook as it fell. I was captivated as much by the greatness
of the tree as by its fall; it was torn up with its roots with a mountain
of clay in its grip. But more wondrous than all were the forewarned
sheep that nestled under it to the last moment. Why did they all rise
and leap forth into the open field? What made them flee before the
blast?... There are sanctuaries which should never be unveiled:
there are questions you should not attempt to answer—this is one.
12. The Tonic of Genius
THERE never was a colourist without a keen sense of humour and
never without a generous soul. When I say humour I do not mean
satire or anything that leaves a bitter taste. Satire is permissible with
the community, but should never be directed against a person.
Humour must always be buoyant, pleasant in every way, and have
no other meaning than that which makes the person who happens to
be the sport of it laugh with the rest. The one so honoured must, of
course, be a genuine humorist, or he would be unworthy of special
attention.
Humour is the tonic of genius. It is the healthy reaction of prolonged
serious thought, the pleasant negative of stern reality, the divine
intoxicant for the over-productive brain.
I have always felt that the past should be either forgotten or turned to
humour. The only serious part of life is the present, but this should
have its lighter side. When we have ceased to laugh we have done
with all generous feeling, and, when this is dead, it is the end of all
creative thought.
13. Critics
A BOOK is not worth its paper if it cannot suffer by the process of
critical mutilation; writing, and also painting, must be viewed as a
whole, but never pigment by pigment or line by line. Every paragraph
read separately must call forth some opposite view or else the book
is poor stuff. Every inch of the picture closely viewed by itself must
bewilder the observer; otherwise, it is a weak, insipid, belaboured
canvas, good for nothing. I tell you for your own sake: do not hold a
microscope in front of genius!
14. The Closed Ear
IF I listened attentively to the things that others say my work would
lose character. To pay attention to criticism is to pursue the process
of laboured refinement which reduces all to the commonplace.
Critics with much knowledge are people with retrospective minds;
they cannot be of use to the born painter whose work is creative.
Knowledge is related to things already accomplished; but the vast
unexplored fields open to creative genius are beyond the range of all
critical analysis. The painter, more than any other, lives a life of
spiritual change.
Look at the sky! The luminaries return, return, return! To the scientist
they move with regularity and precision; but to the romanticist they
shed new light every moment. The astronomer knows the facts: the
poet feels the truth!
15. The Painter’s Cigarette
THERE is a certain something in a cigarette that gives character to
the painter’s conversation. The cigarette itself plays an important
part in timing the frequent pauses to suit the wit of genius. The curls
of smoke punctuate a series of brilliant aphorisms which otherwise
would be impossible. The painter has the gift of making parables.
The fact is he talks from feeling rather than reason. He never makes
a speech: he tells you something. But is he not charming withal?
He has no self-restraint. The cold, placid surface, the cultivated
evenness that is counted a valuable asset in the man of business, in
the politician and the millionaire, is not his, thank God!
In his heart he is a child. He will talk about himself and his own work
so frankly that you will always be interested if not wholly charmed.
Unselfish in every vein, his grievance is never a personal one; it has
no bearings save for his art. From this point the matter is soon
beaten flat under his hammer of words. If he had not the courage to
say all he felt he would be no painter! But do not be deceived: his
fearless tongue has a fine counterpart deep in his heart. As a man in
the right capable of strong denunciation, he is the man you may
safely approach and trust!
16. The People’s Café
I PREFER the café of the people, and never visit any that has an
exclusive atmosphere unless I am obliged. I do not care to see many
rich people at one time. It was ordained that the percentage of rich
should always be small, therefore a crowd of them in one spot is bad
form, often bad colour, and mostly confusion. A group of artisans
never gives me any unpleasant thoughts: it is the natural order of
things; the poor were regarded by Our Lord as the multitude.
17. The Middle-class
THAT I belong to the middle-class is my chief misfortune; it is better
to be born an aristocrat, but better still an artisan. To the middle-
class belong all the money makers: builders of monopolies, political
wire-pullers, and all that spells greed. These people buy everything
and sell everybody. With them lying is an art, whereas for the poor it
is only a pastime. The aristocrat—the product of luxury and idleness
—is as much above any mean action as he is at loss in managing
his own affairs. He must employ agents: enter the middle-class! To
them he entrusts all his worldly belongings, with an intuitive
knowledge that he is robbed always and will be as long as he lives.
He knows they pursue his money with all the zest that he pursues
sport. But he always carries the same bright face, the same kind
heart; and he would pay to the last penny. O but how strange, his
agents save him from ruin! and the people on the land contribute
more to the miserable business than is known to my lord, more than
they themselves ever realise: and so the middle-class remains the
back-bone of the Empire. But what does this mean? The truth is that
God made the lord and the labourer: the rest is mainly the work of
the devil!
18. The Masterpiece
I ONCE told a young artist to attempt no masterpiece. The thing
cannot be done. The moment you think of doing a masterpiece you
are befooled. Providence does not allow you to arrange anything of
that kind. All you must do is paint with a generous heart—paint
colour—and leave to the next generation the selection of your
masterpiece. The painter, above all men, must be himself, without
any regard for the world’s judgment. Do not be deceived: Time will
decide the masterpiece—Time will destroy it!
FROM out the ageless oceans in the west,
Where lazily the gods of new worlds rise
And stretch their mighty limbs across the skies—
Insatiate giants roused from out long rest—
Uprose a Titan whose dark arms and breast
Blackened the sea and drew the gull’s shrill cries;
In his dark head he rolled his gloating eyes
And kept his cruel lips together pressed.
Updated editions will replace the previous one—the old editions will
be renamed.
1.D. The copyright laws of the place where you are located also
govern what you can do with this work. Copyright laws in most
countries are in a constant state of change. If you are outside the
United States, check the laws of your country in addition to the terms
of this agreement before downloading, copying, displaying,
performing, distributing or creating derivative works based on this
work or any other Project Gutenberg™ work. The Foundation makes
no representations concerning the copyright status of any work in
any country other than the United States.
• You pay a royalty fee of 20% of the gross profits you derive from
the use of Project Gutenberg™ works calculated using the
method you already use to calculate your applicable taxes. The
fee is owed to the owner of the Project Gutenberg™ trademark,
but he has agreed to donate royalties under this paragraph to
the Project Gutenberg Literary Archive Foundation. Royalty
payments must be paid within 60 days following each date on
which you prepare (or are legally required to prepare) your
periodic tax returns. Royalty payments should be clearly marked
as such and sent to the Project Gutenberg Literary Archive
Foundation at the address specified in Section 4, “Information
about donations to the Project Gutenberg Literary Archive
Foundation.”
• You comply with all other terms of this agreement for free
distribution of Project Gutenberg™ works.
1.F.
1.F.4. Except for the limited right of replacement or refund set forth in
paragraph 1.F.3, this work is provided to you ‘AS-IS’, WITH NO
OTHER WARRANTIES OF ANY KIND, EXPRESS OR IMPLIED,
INCLUDING BUT NOT LIMITED TO WARRANTIES OF
MERCHANTABILITY OR FITNESS FOR ANY PURPOSE.