[comp.sys.mac.programmer] Low level printing redux

omh@cs.brown.edu (Owen M. Hartnett) (11/04/90)

After I posted a previous query under the above, I had to leave Town
quickly and my newsreader trashed a bunch of articles before I returned.
If you responded earlier, please try again (I promise to be around) or
if you know the answer please share!

The PROBLEM: Using the low level printing calls to send a bitmap to an
ImageWriter LQ, the bitmap will be clipped on the righthand side as if
somehow the driver knew that 8 1/2 by 11 paper was in there (which it
wasn't).  Now, there's no way to set the page size using the low level
calls and if you use high level calls to set the page size, then close
the driver and open the low level, it still clips to the same size as before.

For some reason, the low level print calls for bitmaps will refuse to print
more than about 7 1/2" on a page horizontally.  

The QUESTION: Do you know how to 1) change the clipping region in the low
level driver to be larger or 2) Using the low level calls, specify the 
paper size which controls this clipping?

Any answers, comments, or psychic musings would be much appreciated.

Thanks,
Owen

Owen Hartnett				omh@cs.brown.edu.CSNET
Brown University Computer Science	omh@cs.brown.edu
					uunet!brunix!omh
"Don't wait up for me tonight because I won't be home for a month."

casseres@apple.com (David Casseres) (11/06/90)

In article <55319@brunix.UUCP> omh@cs.brown.edu (Owen M. Hartnett) writes:
> For some reason, the low level print calls for bitmaps will refuse to 
print
> more than about 7 1/2" on a page horizontally.  
> 
> The QUESTION: Do you know how to 1) change the clipping region in the low
> level driver to be larger or 2) Using the low level calls, specify the 
> paper size which controls this clipping?

The low-level interface was designed to provide a minimal model of 
printing, so it uses a fixed clipping rectangle, chosen to make printing 
work on as many paper sizes as possible.

So the bad news is that 1) you can't change the clipping except by owning 
the source code, changing it, and recompiling, and 2) you can't set the 
paper size using the low-level interface.

The good news is you can just use the high-level interface instead.  It 
costs you very little to do so; the low-level interface is no longer the 
necessity that it once was (on 128K Macs) and is supported only to keep 
older applications working.

David Casseres
     Exclaimer:  Hey!

omh@cs.brown.edu (Owen M. Hartnett) (11/06/90)

In article <11106@goofy.Apple.COM> casseres@apple.com (David Casseres) writes:
>In article <55319@brunix.UUCP> omh@cs.brown.edu (Owen M. Hartnett) writes:
>> For some reason, the low level print calls for bitmaps will refuse to 
>print
>> more than about 7 1/2" on a page horizontally.  
>> 
>> The QUESTION: Do you know how to 1) change the clipping region in the low
>> level driver to be larger or 2) Using the low level calls, specify the 
>> paper size which controls this clipping?
>
>The low-level interface was designed to provide a minimal model of 
>printing, so it uses a fixed clipping rectangle, chosen to make printing 
>work on as many paper sizes as possible.
>
You mean work on as many paper sizes as possible, so long as they're
8 1/2 x 11?  Since you're sending a bitmap out to a printer, wouldn't it
make sense to allow the bitmap to extend the same amount as the
printhead can?  You've got a wide carriage printer here and you figure
you can print like a wide carriage printer, but no.

Don't mean to be flippant but it doesn't make sense to me and it seems
like someone made a boo-boo.

>So the bad news is that 1) you can't change the clipping except by owning 
>the source code, changing it, and recompiling, and 2) you can't set the 
>paper size using the low-level interface.
>
Hmmm... If I could find that rectangle and Fedit it... 

>The good news is you can just use the high-level interface instead.  It 
>costs you very little to do so; the low-level interface is no longer the 
>necessity that it once was (on 128K Macs) and is supported only to keep 
>older applications working.
>
The high-level interface costs me a lot in terms of speed.  I need to print
about 6,000 copies of a pre-printed form which is 17" long and 11" wide
from information kept in a Macintosh database.  Since most of the form is
straight text, I can just send this out as text in the printer's native
font and get a tremendous increase in speed.  The part of the form that
is graphics I write to a bitmap and then zap out that part as a bitmap
dump, then continue with text at the bottom.  Works pretty good except
it clips the righthand 3 inches.

Well, I know what I have to do: send the printer the control codes as
ASCII text so it will expect a bitmap and zap it out that way.  However,
this will make it printer dependent.  

You know, Apple really needs a printer that can output a lot of data *fast*
We've got 100Meg hard disk drives going for $500 bucks now and business
types like me are going to want to have some way to output some of that
data.  If you *really* want to penetrate the business world you have
to provide a printer that means business.

-Owen - Business Printing Evangelist of the Net

>David Casseres
>     Exclaimer:  Hey!


Owen Hartnett				omh@cs.brown.edu.CSNET
Brown University Computer Science	omh@cs.brown.edu
					uunet!brunix!omh
"Don't wait up for me tonight because I won't be home for a month."