[Date Prev][Date Next][Subject Prev][Subject Next][ Date Index][ Subject Index]

Re: Euro in Xy3



Dear Rene,
   Sorry for not getting back to you about the Euro-crunch thing. You
asked at the end of November...
>
> It is crossed c. I guess a combination of "c" and "=" would do if nothing
> more elegant comes along. Think you can do it?
>

I experimented a little last night. It's easy to get these two characters
overlaid, but the appearance, depending on the font, ranges from rough-
but-acceptable to truly poor. I tried Garamond 12 pt (a downloadable
font) and Prestige Elite 10pt (cartridge) on my laser printer. Prestige
Elite was much better, and particularly if you put the euro sign in
italic. Quite acceptable.

Here's a summary of what I did to my printer file to force the equal sign
back over the "c" at a particular position.

1. Choose the font you want to use for the euro and change the US: (use
substitution table) to a new name; for example, I had
already "commented" out "Roman8" and added "FRENCH," which included my
"oe" ligature for French:

FO:10PE
......
US:FRENCH
;US:Roman8
......
ET

Then create a substition table by that same name; e.g.

SU:FRENCH
......
;ASCII 127 (ligature oe)
[127]=o*p-9Xe
;ASCII 219 (ligature OE)
[219]=O*p-14XE
;ASCII 252 (euro sign)
[252]=c*p-31X=
......
ET

     where ...

1. [127], etc. is the upper ASCII character itself (you'll
have to sacrifice one of them for your euro symbol)
2.  is the escape sign (just hit escape in XY3)
3. "...." represents possible lines of instruction between the first and
last lines of the table (ET means "end table).
4. The lines with comments (;) are optional.

Note that the formula will vary with the font; thus in Garamond, I had to
use

[252]=c*p-37X=

rather than -31X. You may also want to add your constructed character to
the width tables to get more refined inter-character spacing. It's likely
that similar fonts in the same size will be able to use the same
substitution table and width table.

   Here's a brief explanation of the printer control command I used. In
general, *p#X controls horizontal positioning (by dots), where "#"
is an absolute number. The minus sign in front of the number moves print
position to the left of the current position (plus moves to the right).
(The "X," by the way is just like the horizontal axis of a graph; "Y"
changes this command to control vertial positioning). Thus, my Presitge
Elite formula means, in effect:

ASCII 252 = print the character "c", go back 31 columns and print "=".
How a given printer determines the width of a "column" depends on the
setting of the current Horizontal Motion Index.
   I'm not sure to what extent the Hewlett Packard printer control
commands will work for laser printers in general.

   I hope the formula, if not the explanation, is helpful. Remember to
save and reload (ldprn) the printer file after you alter it. (Also save a
copy of the unaltered version on floppy, in case you get tangled up.)
It's easy enough to experiment with different absolute numbers before the
"X" to get the exact overlay you want.

Best,
Carlo
\__\__\__\__\__\__\__\__\__\__\__\__\__\__\__\__\__\__\__\__\__\__\__\__\__

                 
Carlo Caballero
Research Associate
Campus Box 301
The University of Colorado
Boulder, CO 80309

thyrsus@xxxxxxxx