Sample code for 30+ languages & platforms
Rust

Create MIME Containing HTML

See more MIME Examples

Calls SetBodyFromHtml to load HTML into the MIME body. Also sets the Content-Type header to "text/html", and the Content-Transfer-Encoding to an appropriate transfer encoding based on the characters found in the HTML.

Chilkat Rust Downloads

Rust

// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.

let mime = chilkat::Mime::new();

// Add a few header fields:
let _ = mime.add_header_field("Description", "this is a test").is_ok();
let _ = mime.add_header_field("MyId", "123").is_ok();

let html_doc = "<html><body>Test</body></html>".to_string();

// Set the MIME body via SetBodyFromHtml.  This also
// has the intended side-effect of adding the Content-Type
// and Content-Transfer-Encoding headers.
let _ = mime.set_body_from_html(&html_doc).is_ok();

println!("{}", mime.get_mime().unwrap_or_default());

// The MIME should look like this:

// Description: this is a test
// MyId: 123
// Content-Type: text/html; 
// Content-Transfer-Encoding: 7bit
// 
// <html><body>Test</body></html>

// Note: The Content-Transfer-Encoding may be changed.
// For example, to use "base64", do this:
mime.set_encoding("base64");

// Show the MIME again, this time using the base64 
// transfer encoding:
println!("{}", mime.get_mime().unwrap_or_default());

// It should look like this:

// Description: this is a test
// MyId: 123
// Content-Type: text/html; 
// Content-Transfer-Encoding: base64
// 
// PGh0bWw+PGJvZHk+VGVzdDwvYm9keT48L2h0bWw+