How do you add images to emails generated by Laravel 5.3's new notification service?
<p>Laravel 5.3 introduces a new service called <a href="https://laravel.com/docs/5.3/notifications">notifications</a>, allowing the construct of emails (among other notifications) via a simple fluent syntax:</p>

<pre><code>    return (new MailMessage)
            -&gt;greeting('Hello!')
            -&gt;line('One of your invoices has been paid!')
            -&gt;action('View Invoice', $url)
            -&gt;line('Thank you for using our application!');
</code></pre>

<p>What is an eloquent approach to adding images to the email notifications? I have already published the vendor files to modify the base template. </p>

<p>My thoughts currently stand at:</p>

<ul>
<li>Extend <code>Illuminate\Notifications\Messages\SimpleMessage</code> as a new local class, along the lines of <code>SimpleMediaMessage</code> with a few additional methods (example: <code>-&gt;image(src, url, alt)</code>)</li>
<li>Modify the base template (or create one specific to <code>SimpleMediaMessage</code> that loops over the media array built up via <code>-&gt;image</code></li>
<li>Finally, register a <a href="https://laravel.com/docs/5.3/notifications#custom-channels">custom channel</a> to allow notifications to deliver notifications with images. </li>
</ul>

<p>This seems quite heavy handed for something as simple as images in email. Am I missing something? Is there a better approach?</p>

<p><strong>Edited for clarity</strong></p>

<p>When I refer to images, I mean banner and trail images that are visible in the message itself (not as a seperate attachment). </p>

<p>The attached image shows a) in red what can be currently achieved, and b) in purple what I am looking for. </p>

<p><a href="https://i.stack.imgur.com/fYHWX.png"><img src="https://i.stack.imgur.com/fYHWX.png" alt="enter image description here"></a></p>

<p><strong>Second edit</strong></p>

<p>Re-reading the answers posted so far, especially @Erics, I see that with a very simple modification to the template, you can in fact do the following:</p>

<pre><code>-&gt;line("&lt;img src='foo.example/bar.jpg' /&gt;")
</code></pre>

<p>The template needs to be modified to allow unsafe markup:</p>

<pre><code>// Note this is in two spots - intro + outro
{{ $line }} --&gt; becomes --&gt; {!! $line !!} 
</code></pre>

<p>Disadvantages to this method:</p>

<ol>
<li>Possibly opening up a security issue, the whole reason of using {{}} over {!!!!}</li>
<li><p>The image can't take advantage of the inline styles, unless you do it outside the email template, for example:</p>

<p>->line(" &lt; img style='max-width:570px;/* all the other junk to make images look ok in email */' src='foo.example.bar.jpg' /> ")</p></li>
</ol>