Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!csd4.milw.wisc.edu!lll-winken!uunet!cbmvax!daveb From: daveb@cbmvax.UUCP (Dave Berezowski) Newsgroups: comp.sys.amiga.tech Subject: Re: 2 unrelated questions (long?) Message-ID: <6496@cbmvax.UUCP> Date: 4 Apr 89 20:53:31 GMT References: <890403170253.204022be@elcc.epfl.ch> Reply-To: daveb@cbmvax.UUCP (Dave Berezowski) Organization: Commodore Technology, West Chester, PA Lines: 49 In article <890403170253.204022be@elcc.epfl.ch> gay@elde.epfl.ch (David Gay) writes: >a) YAPQ - Yet another printer question > >In article daveb@cbmvax.uucp writes: >>In article <890329170226.20401ec5@elcc.epfl.ch> I write: >>>How can I work out the maximum size for a graphic dump ? If I send a DUMPRPORT > >>>request with SPECIAL_NOPRINT, SPECIAL_FULLCOLS and SPECIAL_FULLROWS, it sets >>>io_DestCols & io_DestRows, but adjusts them so that the ratio of my RastPort i >s >> >>>preserved. Is there any way round this ? If not, any easy way to work these >>>out from the returned values ? (I want the margins, left offset, etc to be tak >e >>n >>> >>>into account of course.) >>> >> There are many ways to do what you want. The simplest way is to >>set io_DestCols and io_DestRows to some enormus value (like 5000). The printer > >>device will chop these numbers down so that they fit on the paper. > >I chose LONG_MAX ... > >>Another >>way would be to set these values explicitly in preferences (on the 2nd printer >>graphic screen) under the Limits heading of Pixels. > >Actually, I'm trying to print according to the users preferences, at the >printers resolution, in slices, following a user specified ratio (I'm printing >graphs). I have one last (really!) question: > >Can I use the PaperLength field(in combination with PrintSpacing) of preferences > >as an indication of the size of one page ? > To get a TRUE indication of the printable graphics area you should look at PED->ped_MaxXDots, PED->ped_MaxYDots, PED->ped_XDotsInch, and PED->ped_YDotsInch. PED->ped_MaxXDots / PED->ped_XDotsInch => printable width PED->ped_MaxYDots / PED->ped_YDotsInch => printable height if PED->ped_MaxYDots == 0 then the printer has no maximum (probably because it is using continuous form paper). Regards, David B