Sample code for 30+ languages & platforms
Delphi ActiveX Requires Chilkat v11.0.0+

Create Apple Watch HTML (text/watch-html) Email

See more Email Object Examples

Demonstrates how to create an Apple Watch text/watch-html email.

Chilkat Delphi ActiveX Downloads

Delphi ActiveX
var
success: Integer;
email: TChilkatEmail;
mime: TChilkatMime;
partPlainText: TChilkatMime;
partWatchHtml: TChilkatMime;
partHtml: TChilkatMime;

begin
success := 0;

//  This example will produce an email such as:

//  	MIME-Version: 1.0
//  	Date: Fri, 02 Jun 2017 09:17:06 -0500
//  	Message-ID: <E6F1F17104442EA09740322D3E2E78806C87FB80@CHILKAT13>
//  	X-Priority: 3 (Normal)
//  	Subject: Apple Watch Example
//  	From: from@example.org
//  	To: to@example.org
//  	Content-Type: multipart/alternative; boundary="------------080904030200000307060803"
//  
//  	--------------080904030200000307060803
//  	Content-Type: text/plain; charset=utf-8
//  	Content-Transfer-Encoding: quoted-printable
//  	Content-Disposition: inline
//  
//  	This is the plain text part.
//  	--------------080904030200000307060803
//  	Content-Type: text/watch-html; charset=utf-8
//  	Content-Disposition: inline
//  	Content-Transfer-Encoding: quoted-printable
//  
//  	<b>This is the Watch HTML part</b>
//  	--------------080904030200000307060803
//  	Content-Type: text/html; charset=utf-8
//  	Content-Disposition: inline
//  	Content-Transfer-Encoding: quoted-printable
//  
//  	<p>This is the standard HTML part</p>
//  	--------------080904030200000307060803--

//  Create a new email instance to get the default auto-created fields.
email := TChilkatEmail.Create(Self);
email.Body := 'This is the plain text part.';
email.Subject := 'Apple Watch Example';
email.From := 'from@example.org';
email.AddTo('','to@example.org');

Memo1.Lines.Add(email.GetMime());
Memo1.Lines.Add('--');

//  This is the MIME so far:
//  (Chilkat automatically removes CKX-* headers when sending email.)

//  	MIME-Version: 1.0
//  	Date: Fri, 02 Jun 2017 09:17:06 -0500
//  	Message-ID: <E6F1F17104442EA09740322D3E2E78806C87FB80@CHILKAT13>
//  	Content-Type: text/plain; format=flowed
//  	Content-Transfer-Encoding: 7bit
//  	X-Priority: 3 (Normal)
//  	Subject: Apple Watch Example
//  	From: from@example.org
//  	To: to@example.org
//  
//  	This is the plain text part.

//  We'll use the Chilkat MIME object to build it.
//  The MIME API provides more flexibility..
mime := TChilkatMime.Create(Self);
mime.LoadMime(email.GetMime());

//  Convert this MIME to multipart/alternative.
mime.ConvertToMultipartAlt();

Memo1.Lines.Add(mime.GetMime());
Memo1.Lines.Add('--');

//  We now have this MIME:

//  	MIME-Version: 1.0
//  	Date: Fri, 02 Jun 2017 09:17:06 -0500
//  	Message-ID: <E6F1F17104442EA09740322D3E2E78806C87FB80@CHILKAT13>
//  	X-Priority: 3 (Normal)
//  	Subject: Apple Watch Example
//  	From: from@example.org
//  	To: to@example.org
//  	Content-Type: multipart/alternative; boundary="------------080904030200000307060803"
//  
//  	--------------080904030200000307060803
//  	Content-Type: text/plain; format=flowed
//  	Content-Transfer-Encoding: 7bit
//  
//  	This is the plain text part.
//  	--------------080904030200000307060803--

//  If we desire a particular charset, encoding, or disposition..

partPlainText := TChilkatMime.Create(Self);
success := mime.PartAt(0,partPlainText.ControlInterface);
if (success = 0) then
  begin
    Memo1.Lines.Add(mime.LastErrorText);
    Exit;
  end;

partPlainText.Charset := 'utf-8';
partPlainText.Disposition := 'inline';
partPlainText.Encoding := 'quoted-printable';

//  Create the text/watch-html MIME part and add it.
partWatchHtml := TChilkatMime.Create(Self);
partWatchHtml.ContentType := 'text/watch-html';
partWatchHtml.Charset := 'utf-8';
partWatchHtml.Disposition := 'inline';
partWatchHtml.Encoding := 'quoted-printable';
partWatchHtml.SetBody('<b>This is the Watch HTML part</b>');
mime.AppendPart(partWatchHtml.ControlInterface);

Memo1.Lines.Add(mime.GetMime());
Memo1.Lines.Add('--');

//  We now have this MIME:

//  	MIME-Version: 1.0
//  	Date: Fri, 02 Jun 2017 09:17:06 -0500
//  	Message-ID: <E6F1F17104442EA09740322D3E2E78806C87FB80@CHILKAT13>
//  	X-Priority: 3 (Normal)
//  	Subject: Apple Watch Example
//  	From: from@example.org
//  	To: to@example.org
//  	Content-Type: multipart/alternative; boundary="------------080904030200000307060803"
//  
//  	--------------080904030200000307060803
//  	Content-Type: text/plain; charset=utf-8
//  	Content-Transfer-Encoding: quoted-printable
//  	Content-Disposition: inline
//  
//  	This is the plain text part.
//  	--------------080904030200000307060803
//  	Content-Type: text/watch-html; charset=utf-8
//  	Content-Disposition: inline
//  	Content-Transfer-Encoding: quoted-printable
//  
//  	<b>This is the Watch HTML part</b>
//  	--------------080904030200000307060803--

//  Create the text/html MIME part and add it.
partHtml := TChilkatMime.Create(Self);
partHtml.ContentType := 'text/html';
partHtml.Charset := 'utf-8';
partHtml.Disposition := 'inline';
partHtml.Encoding := 'quoted-printable';
partHtml.SetBody('<p>This is the standard HTML part</p>');
mime.AppendPart(partHtml.ControlInterface);

Memo1.Lines.Add(mime.GetMime());
Memo1.Lines.Add('--');

//  We now have this MIME:

//  	MIME-Version: 1.0
//  	Date: Fri, 02 Jun 2017 09:17:06 -0500
//  	Message-ID: <E6F1F17104442EA09740322D3E2E78806C87FB80@CHILKAT13>
//  	X-Priority: 3 (Normal)
//  	Subject: Apple Watch Example
//  	From: from@example.org
//  	To: to@example.org
//  	Content-Type: multipart/alternative; boundary="------------080904030200000307060803"
//  
//  	--------------080904030200000307060803
//  	Content-Type: text/plain; charset=utf-8
//  	Content-Transfer-Encoding: quoted-printable
//  	Content-Disposition: inline
//  
//  	This is the plain text part.
//  	--------------080904030200000307060803
//  	Content-Type: text/watch-html; charset=utf-8
//  	Content-Disposition: inline
//  	Content-Transfer-Encoding: quoted-printable
//  
//  	<b>This is the Watch HTML part</b>
//  	--------------080904030200000307060803
//  	Content-Type: text/html; charset=utf-8
//  	Content-Disposition: inline
//  	Content-Transfer-Encoding: quoted-printable
//  
//  	<p>This is the standard HTML part</p>
//  	--------------080904030200000307060803--

//  Load the email object with this MIME, and we're good to go..
email.SetFromMimeText(mime.GetMime());
Memo1.Lines.Add(email.GetMime());