> From: Douglas Bagnall <[EMAIL PROTECTED]>
> Subject: Re: [Image-SIG] Font colour
[...]
> But I think the
> clearest way, based on watching subtitled movies, is to have the text
> in a constant colour, with an outline, or shadow, or glow.  So I would
> try instead:
>
> blur = mask.filter(ImageFilter.BLUR)
> im.paste((0,0,0), (0,0), blur)
> im.paste((255,255,255), (0,0), mask)
>
> for white writing with a black halo.  Maybe black on white is better.

That's an interesting way to accomplish this - I'm not familiar with the 
filtering approach, so I did something similar the hard way:

displayOffsets=[(-2,-2,(0,0,0)),
    ( 2,-2,(0,0,0)),
    (-2, 2,(0,0,0)),
    ( 2, 2,(0,0,0)),
    (-3, 0,(0,0,0)),
    ( 3, 0,(0,0,0)),
    ( 0,-3,(0,0,0)),
    ( 0, 3,(0,0,0)),
    ( 0, 0,(255,255,0))]

for dispOff in displayOffsets:
    dx,dy,c=dispOff

    lSurf=lineFont.render(line, 1, c)
    pageSurf.blit(lSurf,(margin+dx,cursorPos+dy))


I was drawing text over a photographic image for use on a projection 
screen - this approach gives a few jaggy bits that you can see close up, but 
weren't a problem in pratice for me. As you can see there, I hard coded it 
to yellow text on a black background, which was pretty readable on most 
images.

I was fortunate that I had a little bit of choice in the images that I was 
drawing, so I could select photographic backgrounds that complemented the 
text, rather than adapting the text to fit the photos.


-Dave LeCompte 

_______________________________________________
Image-SIG maillist  -  Image-SIG@python.org
http://mail.python.org/mailman/listinfo/image-sig

Reply via email to