Newsletter Export is a Drupal module which allows a specific node type to be exported as raw HTML. This is excellent for
building a node type to use as a newsletter. A template file is provided to allow you to completely customize the output
of your fields.

A new field display "newsletter" is also created so you can create unique markup just for the newsletter export.

Template File: 
newsletter-export.tpl.php

provides three variables

$raw_markup -> The raw markup that drupal would provide for your node
$fields -> An array of all the fields and their values
$node -> The entire node object

By default it uses $raw_markup.

Tips:

Use References or Entity References module to collect other content/articles into the export.

Move newsletter-export.tpl.php to your theme folder to edit. You can wrap the output with your html.

Email clients are notorious for ignoring css. This includes major clients like Gmail. One approach is to use a 
third-party to turn your html file with css to inline styles that will look good in most email clients. 
E.g. http://premailer.dialect.ca/, http://inlinestyler.torchboxapps.com/. You'll have to upload your file to the site 
to have it converted.

Or call a script like https://github.com/tijsverkoyen/CssToInlineStyles to transform it before downloading.

Upload the script to the newsletter_export module. In top of newsletter-export.tpl.php include the script. E.g.:

  module_load_include('php', 'newsletter_export', 'CssToInlineStyles/css_to_inline_styles');

Add your css as a string. E.g.:

  $css = 'h1 { background: green;}';

Run the html and css through the script.

  $current_html = new CSSToInlineStyles($raw_markup,$css);
  $processed_html = $current_html->convert();

Then replace:

  <?php print $raw_markup; ?>

with:

  <?php print $processed_html; ?>