In the Event System you're getting only the component as input. It is not part of the rendering process, and it sounds like you're looking for a ComponentPresentation. In layman's terms, you're using the wrong extension point.
On the CM side creating a regular Template Building Block should be more appropriate because rendering is triggered when someone is publishing. You can also check the context of publishing in a TBB (to differentiate between rendering in TemplateBuilding or Preview modes).
Using a Storage Extension is also appropriate for the use case you describe. See Will's post and example of how he did a similar thing for CDN integration: http://sdltridionworld.com/articles/sdltridion2011/tutorials/cdn_integration.aspx and http://www.tridiondeveloper.com/some-thoughts-on-cmscdn-integration.
If you are adamant about doing it CM side and not using either of the above, then you're entering somewhat uncharted waters. What you can try to do is re-create the CP in the Event System by running it against the "News" Component Template:
BuiltInFunctions f = new BuiltInFunctions();
string renderedCp = f.RenderComponentPresentation(component.Id.ToString(), "tcm:1-2-32");
Though, I'm not sure the above will work in the context of the Event System. I've only tested it as far as compiling.
Another way you can grab the rendered component presentation is actually by using a Custom Renderer as discussed here: http://stackoverflow.com/questions/14655972/whats-a-non-delivery-custom-rendererhttps://stackoverflow.com/questions/14655972/whats-a-non-delivery-custom-renderer (warning: I don't know if anyone has ever used one though, but it exists).