Hallo Jan.
Im Prinzip ist das keine allzugroße Kunst:
du erstellst den zu versendenden HTML-Code und verwendest absolute
URLs zu den Grafiken (die dann selbstredend irgendwo auf einem Server hocken müssen).
Du musst der Email nur noch mitteilen, dass sie eben HTML enthält, indem du die entsprechenden Header setzst.
Je nachdem, welche Sprache du verwendest, solltest du in der Doku nachsehen, wie's geht.
Allerdings können nicht alle Mail-Clients HTML-Mail darstellen, mal abgesehen davon, dass der Empfänger diese Funktion auch manuell abschalten kann.
Falls du einen Newsletter o.ä. planst, der an Personen mit unterschiedlichen Clients geht, solltest du Multipart-Mails verwenden. Dann kann der Client einen alternativen Inhalt darstellen, so er kein HTML versteht (oder verstehen will...).
Grundsätzlich ist das Thema Email ziemlich umfangreich.
Im Netz findest du allerdings einen Haufen Infos zu dem Thema.
Einfach mal bspw. nach "php mail html" oder "cgi mail html" o.ä. suchen.
Grüße
Sascha