[scribus] Drop Shadow

William F. Maddock billsey at earthlink.net
Tue Jan 17 17:48:27 UTC 2012

-----Original Message-----
>From: "a.l.e" <ale.comp_06 at xox.ch>
>Sent: Jan 17, 2012 7:46 AM
>To: Scribus User Mailing List <scribus at lists.scribus.net>
>Subject: Re: [scribus] Drop Shadow
>hi william,
>> No soft shadow obliterates anything that it falls upon, but only
>> modifies its appearance, much like the shadow of the earth modifying the
>> appearance of the moon during a lunar eclipse. Therefore, the following
>> is true:
>> In order for Scribus to properly support soft shadows, it would have to
>> first natively support both transparency and various forms of gradients
>> (especially gradients that directly follow the shape of an object), and
>> be able to treat transparency as a variable element of those gradients.
>> I know that sounds daunting to say the least (it certainly does to me),
>> but if you're going to do it, you might as well do it right.
>first, scribus does support transparency... do you need new types of it?
>gradients... there are a lot of them already in scribus... and place for 
>you seem to deeply understand the way drop shadows works: may i ask you 
>to write an exact specification of everything needed for scribus to 
>support it?
>i think that there is at least one person in the scribus community, who 
>is ready to program the craziest forms of gradients and transparencies 
>one can ask for (and PDF can support...).  :-))
>ah, yes, one limit is probably what PDF supports...

I can picture in my mind what a drop shadow should do to a layout, and that allows me to surmise certain things. I have seen folks here proposing the use of bitmapped graphics as a workaround. Unless that bitmapped graphic is the very bottom thing in the stack, that work around is not going work right. Particularly, it won't work to fake a shadow for text. It's going to mask out things that should show through the shadow—and how that thing shows through the shadow will depend on what part of the shadow is above it, and how far above it. Usually, transparency is a set value per object, but in the case of a soft shadow, the transparency needs to vary *within* the shadow object. Think about watching the sun through mottled cloud cover, and you'll see what I mean. It's like applying a shape gradient, but instead of grading from one color to another, you're grading from opaque (on the object's edge) to transparent (away from the object's edge), and the opaque part of the shadow will actually be smaller than the object that casts it. The farther the casting object is supposed to be from the objects under the shadow, the smaller that opaque portion to the shadow will be and the larger the translucent outer shadow will be. Applying this effect to text is going to make it even more complex (you'll have shadows running into and over and through other parts of the shadow, and other shadows as well). In addition, the effect of the shadow can appear to be abruptly different across different objects, because of those different objects being at different distances from the casting object. The shadowing effect will have to be individually calculated for each object that is under the shadow, and that effect will have to be applied to those other objects—not to the object casting the shadow. In order to do the job properly, it is going to need to be done directly in Scribus, so that no matter where in the stack the shadow is, and no matter what is in the stack beneath the shadow, the effect of the shadow will be executed correctly every time. Once the layout is complete and ready for output, the script that Greg implied can be run, if needed, in order to prepare it for PDF/printing.

More information about the scribus mailing list