PNG Sprite scaling issues

I have raster-based GUI elements in the .png format. When I import them to unity and convert them to sprites using the default settings, I noticed that when I add these elements to the Canvas, they degrade in quality. When I make them bigger/smaller, they tend to have jagged edges.

I also have jagged edges for fonts. One workaround that I found for fonts was to change the text scale to 0.5 from 1 and manually resize them. This improved it but not eliminated the rough edges.

alt text

Click on the canvas object and change the Render Mode to World Space and increase Dynamic Pixels Per Unit.
This solved it for me, but another solution would be to click open the imported image and change the filter mode to point (especially if you are using pixel art) there you can also change the compression level.