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

Re: Underline



** Reply to message from Paul Breeze  on Mon, 13
Jan 2003 14:07:36 GMT

Paul:

There are several approaches, but the following is the
easiest.

First, you have to accept that you aren't going to get on-
screen underlining unless you use  *or* the MoDe
number to which "UL" is correlated in SETTINGS.DFL. I
believe the default is 19.

Here's the simple simon way of doing this:

Open SETTINGS.DFL. Go down to the "Display Modes", i.e. a
table like this:
MD BI=30
MD BO=31
MD BR=121
etc etc -- I believe those are default values (mine are
different, but...) look for *something* like that. Find
"MD UL=##". MoVe that line to the TOP of the table, i.e. above
"MD BI=##". Now go further down the list and find
"MD IT=##". CHANGE whatever "##" is to the SAME NUMBER as
MD UL. SAve it/STore it, whatever. UL *must* precede IT in
the table -- that's key -- and both must be the SAME NUMBER.
You're done. Underlined  "italics" on-screen,
real italics on paper.

But that's much too easy, and totally uninteresting. How
about a different solution? Let's further modify your modified
HPLJ-3.PRN.

Because this PRN acquires some of its instructions from
LJ3.BIN and not from the PRN file, we're under a bit more
constraint than we would be if all instructions to the
LaserJet hardware were embedded in PRN. LJ3.BIN tells it
how to print Italics to paper -- that's a problem, because
we'd be at some pains to redefine Italics (possible, but why
bother). So what we'll do instead is redefine the meaning
of underline, or , so that  is underline on-
screen, but italics on the printed page. Probably this
implies that you will not use true  italics in text
(you *could* do so, but then you'd have two different kinds of
MoDe statements that both print Italics on paper, which is
wierd -- OTOH, this whole thing is wierd).

Go to the PT table (PT=1) in PRN. Comment out (;) this
line:
;MD UL=(*+UNDERLINE)
Replace with this newfangled line:
MD UL=(*+UNDITAL)

Now go down to the AT tables (Attribute Definitions). Add
this new AT table (contains PCL command to print italics):
;
AT:UNDITAL
AT<_(s1S
AT>_(s0S
ET
;
Make _sure_ that the left-pointing arrow (shown above as
an underline) after AT< and AT> is a one-byte 1Bh!
Copy it from another AT table if you
aren't sure. Now SAve the file. Reload PRN (use SETP if you can, otherwise LP
command). Done. Underlined  "italics" on-screen,
real italics on paper.

-----------------------------
Robert Holmgren
holmgren@xxxxxxxx
-----------------------------