Zig
Zig
Remove the Plain-Text Body from an Email
See more Email Object Examples
Demonstrates the Chilkat Email.RemovePlainTextAlternative method, which removes the plain-text body from the email if one exists. Other body representations, attachments, and related items remain unchanged. This example builds a message with both plain-text and HTML alternatives, then removes the plain text.
Background: This is the counterpart to
RemoveHtmlAlternative. Removing the plain-text alternative leaves an HTML-only message. Note that dropping the plain-text fallback is generally discouraged for real mail — it hurts accessibility and can raise spam scores — but it is occasionally needed when a downstream system expects a single HTML representation.Chilkat Zig Downloads
const std = @import("std");
const chilkat = @import("chilkat");
pub fn main() !void {
// Demonstrates the RemovePlainTextAlternative method, which removes the plain-text body
// from the email (if one exists). Other body representations, attachments, and related
// items remain.
const email = try chilkat.Email.init();
defer email.deinit();
email.setSubject("Remove plain-text alternative");
// Create an email with both plain-text and HTML alternatives.
email.setTextBody("This is the plain-text version.", "text/plain");
email.addHtmlAlternativeBody("<html><body>This is the HTML version.</body></html>") catch {};
std.debug.print("NumAlternatives before = {d}\n", .{email.getNumAlternatives()});
std.debug.print("HasPlainTextBody before: {}\n", .{email.hasPlainTextBody()});
// Remove the plain-text body, leaving the HTML alternative.
email.removePlainTextAlternative();
std.debug.print("NumAlternatives after = {d}\n", .{email.getNumAlternatives()});
std.debug.print("HasPlainTextBody after: {}\n", .{email.hasPlainTextBody()});
}