Re: Oversize / Dropped Caps and Initials

Hakon Lie (Hakon.Lie@sophia.inria.fr)
Tue, 11 Jul 1995 15:03:05 +0200


Bert,

> <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:

[example 1]

> ### 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 case where just being able to address HTML elements becomes
a limitaion. We need a way to address the first character of an
element, right?

[example 2]

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

Being able to address the first line as it's being laid out would be
the second -- and last -- candidate for addressing exceptions.

[example 3]

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

This is similar to the Economist example in [1]. Here, you *should*
add a character-level tag to indicate the what words you want to
emphasize. So, one cannot apply this style retroactively, but I think
that's a fair limitation.

[example 4]

> ### 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.

It's unclear if you want to emphasize the first sentence or the first
line. The former should not be allowed (since you easily can add
<EM>..</EM>), while the latter should.

> 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

We're dealing with two issues here:

- addressing: we want to address the first charcter and the first
line

- fonts: we want to apply different fonts to the regions we have
addressed (one may argue that there is more to it font --
e.g. case, color and spacing -- but everything that has to do with
font is uprecise. "font" is the word tath covers these properties
best.)

Now, since addressing first-character and first-line are exceptions
due to some typographic traditions in the western world, we should
label them as styles instead of messing up the addressing scheme. Once
the addressing is in place, extra set of font properties
then let us assign various units:

[example 1]

<STYLE>
P: font.style = big-initial
P: big.font.size = 30pt // or better, a relative size
</STYLE>

[example 2]

<STYLE>
P: font.style = alternate-first-line;
P: alternate.font.style = uppercase
</STYLE>

[example 3]

<STYLE>
P: font.style = big-initial
P: big.font.size = 30pt
EM: font.style = uppercase
</STYLE>

<P><EM>This is a</EM> paragraph...

Example 4:

<STYLE>
P: font.style = big-initial & alternate-first-line;
P: big.font.size = 30pt; alternate.font.spacing = 140%
</STYLE>

(Note: this scheme is an extension of the one outlined in [1]. Some
minor changes: "big" replaces "oversize", and "alternate" replaces
"undersize". "alternate-first-line" is new.)

I've implemented big-initial in Arena, and hope to add
alternate-first-line soon.

-h&kon

[1] http://www.w3.org/hypertext/WWW/Style/css/draft.html