FPDF smooth drop shadow support

After searching for a way to create smooth drop-shadows for Rect elements in FPDF and experimenting with various gradients i could not come up with a satisfying result. So i inspected some PDFs created from Inkscape and Adobe Illustrator and found out that those nice, smooth drop shadows are actually bitmaps rendered & placed behind the particular boxes or elements.

So I am using GD Lib and ImageMagick to do the same:

  • Create a black box, the same width/height ratios as the box to be drawn.
  • Save this as a PNG file, with alpha transparency turned on.
  • Use ImageMagick to blur the image.
  • Put the image on the PDF.
  • Draw the Rect over it.
  • Success!

I know, this is a very crude, slow & cumbersome way to do this, but at least it works reliably. I also write this blog posting to give and ask for some suggestions how this might be done better. Please contact me if you know how.

I created a new PHP-Class, which may be downloaded here.



$pdf = new PDF_RectShadow();

This produces a Rect like this:


An PDF-example can be seen here.