I have created a Photoshop action to automatically generate a shadow for a given png. I recommend extending the canvas right 10 or so pixels first. It expects the file to have a single layer with transparency. It duplicates the layer, adds a black color overlay, rasterizes the layer effect, squishes the layer with free transform, skews it to the right, puts the layer below the first one, sets the opacity to 57%, and hides the first layer.
This is useful for generating custom pin shadows for leaflet, google maps or bing.
Create Shadow.atn
On mac you can place this in: ~/Library/Application Support/Adobe/Adobe Photoshop CS6/Presets/Actions/