lout-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Big Bag o' Questions


From: Valeriy E. Ushakov
Subject: Re: Big Bag o' Questions
Date: Fri, 13 Aug 1999 03:20:15 +0400

On Thu, Aug 12, 1999 at 12:55:04PM -0400, Colin Klipsch wrote:

> > > (3) I want to propose that a collection of good quality freeware &
> > >     shareware PostScript fonts be added to Lout, perhaps as a
> > >     supplemental download package.
> > 
> > This is so extremely easy to add new fonts, that it hardly worth a
> > separate download package.  Adding them to the base distribution is
> > not very kosher either.
> 
> I'm not sure I'd use the phrase "extremely easy".  If you're just
> using pre-existing AFM files, then yes, it's quite easy to add the
> _fontdef_ declarations yourself.  But, if you're embedding fonts
> into your PostScript output, then there's some trickery involved that
> took me a few weeks of experimentation to get right.

What trickery?  You need and AFM to refer to in the fontdef and a PFA
to embed.  PFB->PFA convertors are widely available.  AFMs are usually
available too.  What was the exact problems you encountered?


> Speaking of that ... why does @PrependGraphic complain if the file
> you're prepending doesn't start with a "%%BeginResource" line?  This
> seems kvetchy to me.

DSC compliance.


> Also, "PrependGraphic", as a name, is a bit misleading; it really
> prepends _any_ chunk of PostScript code, not just images.  Perhaps
> it should be renamed "PrependResource" or "PrependFile" or even just
> "Prepend".

Well, yes.  But we have @Graphic to escape to PostScript and
@PrependGraphic escapes to PostScript prologue, so this rationalise
the name somewhat.


> Also, why does _fontdef_ require me to give it both the AFM file _and_
> the font's PostScript name?  The font's name is _in_ the AFM file!  If
> Lout is parsing the AFM file (to get the metric information I
> presume), then it should also go ahead and note the "FontName" line
> while doing so.

Hmm.  Good point (though I can imagine a hack of using AFM file from
the painted font while actually using the outlined font constructed
with a simple chunk of code).


> However, I still think it makes sense to supply an _expansion_ set
> of fonts as a supplemental package
[...]
> Having done a lot of this work myself already, I'd like to share it
> with others.  My feeling is that it would help "sell" Lout to a wider
> audience.  Again, I'm not proposing to contaminate the base Lout
> distribution with oodles of extra fonts; I agree this wouldn't be
> kosher.  The idea here is to provide an optional download package that
> users can take or ignore as desired.

You are welcome.


> > > (4) Along the same lines, I'd like to push for Multiple Master font
> > >     support, specifically the use of "optical scaling" at different
> > >     point sizes.
> > [...]
> > >     I can imagine that adding this feature would mean major changes to
> > >     Lout's internal workings.
> 
> > Exactly.
> 
> I'm inferring that that's a strong "NO".   ;)

Rather that's a mild "not now" (or at least "I dont know who have time
and interest to do it").  ;-)


> > >     It would be nice to have a text "wrap-around" feature ...
> 
> > Generic flow-around (L-shaped paragraphs) is impossible in Lout, but
> > one can perhaps adapt @DropCap* symbols to do flowing semi-manually
> > (one will need to specify the size of the "window").
> 
> That's unfortunate.  What sort of impossibility is it do you think?
> Permanent or temporary?

As I promised, I'll write a seprate letter about this with all the
gory details.  For really impatient here's my take at it (quick and
dirty).  Note that the "height" is compulsory - it's the height of the
amount of text to flow to the left of the picture.

    import @BasicSetup
    def @Flow
        left picture
        named compulsory height @ {}
        named omargin { 0f }
        named imargin { 0.5f }
        right flow
    {
        def @ParPlace    { @Galley }
        def @EndParPlace { @Galley }
    
        def @LineList
        {
                  @PAdjust @ParPlace
            //1vx @LineList
        }
    
        def @ParGalley horizontally into { @ParPlace&&preceding }
            right x
        {
            x
        }
    
        def @EndPar force into { @EndParPlace&&following } { @Null }
    
    
                 1w @VShift { ||omargin picture ||imargin }
               | 1w @VShift height @High { //1rt @LineList }
        //     @ParGalley { flow & @EndPar &1rt }
        //.8vx @LineList
        //     @EndParPlace
    }

Example:

    { 4f @Font A } @Flow @{ 3v } { fter a while test test test test test
    # more text here
    }


SY, Uwe
-- 
address@hidden                         |       Zu Grunde kommen
http://www.ptc.spbu.ru/~uwe/            |       Ist zu Grunde gehen


reply via email to

[Prev in Thread] Current Thread [Next in Thread]