Re: Oversize / Dropped Caps and Initials are NOT paragraph styles.

Bert Bos (bert@let.rug.nl)
Tue, 11 Jul 1995 13:27:18 +0200 (METDST)


Benjamin Sittler writes:
|Oversize caps, dropped caps, oversize initials and dropped initials are
|*not* paragraph styles, since they can be applied to any region of text,
|from a single letter on up... the only way in which they could be
|considered paragraph styles is that their size and position affect layout,
|but the same is true of most character-level elements. For example, I may
|wish to have all the capital letters in a certain header enlarged, or only
|the first one. Being perverse, I could ask for the first and last letters
|to be enlarged and dropped.
|
|Are we going to create a billion different paragraph styles (i.e. first
|word in small-caps with large, dropped initial, first two words in
|small-caps with large, dropped initial, first and last cap enlarged and
|dropped, first seven words in small caps, etc...) or will we do it
|intelligently, by using character-level styles, like STRONG.First :
|font.style = small caps & dropped initial?

You're right, there is no reason why this kind of decoration cannot be
applied to arbitrary stretches of text. With one exception: a large
initial at the start of a paragraph causes text to flow around it, so
this style is impossible for an element that doesn't start on a new
line.

On the other hand, I don't see any alternative for creating `a billion
different styles', since I want to be able to render an element in all
these styles without adding any tags to the SGML source.

At the same time, I don't want to add too many extra properties or
complicate the style language too much.

As a concrete example of the problem, say I want to render this
paragraph, which has no tags besides <P>:

<P>This is a paragraph. This is the second line, This is another
line. This is the last line. No it isn't.</P>

Then how do we get the following designs:

### his is a paragraph. This
# is the second line, This
# is another line. This is
the last line. No it isn't.

THIS IS A PARAGRAPH. THIS
is the second line, This
is another line. This is
the last line. No it isn't.

### HIS IS A paragraph. this
# is the second line, This
# is another line. This is
the last line. No it isn't.

### h i s i s a p a r a g r a p h .
# This is the second line, This is
# another line. This is the last
line. No it isn't.

Here are some possibilities, none of them really appeals to me:

*P: large.initial = yes, oversize.font.size = +5
*P: text.transform = capitalize-first-line
*P: text.drop-cap = true, text.transform = caps-3

Maybe we should leave some room in the language for additions in
a later version.

Bert

-- 
                          Bert Bos                      Alfa-informatica
                 <bert@let.rug.nl>           Rijksuniversiteit Groningen
    <http://www.let.rug.nl/~bert/>     Postbus 716, NL-9700 AS GRONINGEN