I am trying to make a map with a semi-transparent (60%) raster layer overlying an areal photo (raster) base map. This works fine and looks good but when I add a legend to display the values of the raster overlay, the legend items for the associated raster are transparent as well and end up looking like pastel versions of the colors in the raster. Is there a way to make the legend items fully opaque while the raster is semi-transparent? See the image below and note how red shows up as pink etc.
In the QGIS main project area duplicate your layer.
Set the style of one to be 0% transparency, and unclick the layer so it isn't visible.
Set the other layer to be 60% transparency as you want it, and have that visible.
Then in print composer, add your map and add the legend, you should see both layer legends with their respective styles.
Turn off 'auto-update' in the properties on the right hand side
Then select the layer in the legend that you don't want and use minus icon to remove it.
Leaving you with just the legend styled as you want it