The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Email::MIME::RFC2047::Encoder - Encoding of non-ASCII MIME headers

SYNOPSIS

 use Email::MIME::RFC2047::Encoder;
 
 my $encoder = Email::MIME::RFC2047::Encoder->new(
     encoding => 'utf-8',
     method   => 'Q',
 );
 
 my $encoded_text   = $encoder->encode_text($string);
 my $encoded_phrase = $encoder->encode_phrase($string);

DESCRIPTION

This module encodes non-ASCII text for MIME email message headers according to RFC 2047.

CONSTRUCTOR

new

 my $encoder = Email::MIME::RFC2047::Encoder->new(
     encoding => $encoding,
     method   => $method,
 );

Creates a new encoder object.

encoding specifies the encoding ("character set" in the RFC) to use. This is passed to the Encode module. See Encode::Supported for supported encodings.

method specifies the encoding method ("encoding" in the RFC). Must be either 'B' or 'Q'.

If both encoding and method are omitted, encoding defaults to 'utf-8' and method to 'Q'. If only encoding is omitted it defaults to 'utf-8'. If only method is omitted it defaults to 'B'.

METHODS

encode_text

 my $encoded_text = $encoder->encode_text($string);

Encodes a string that may replace a sequence of 'text' tokens (as defined by RFC 822) in any Subject or Comments header field, any extension message header field, or any MIME body part field for which the field body is defined as '*text'.

This method tries to use the MIME encoding for as few characters of the input string as possible. So the result may consist of a mix of 'encoded-words' and '*text'.

The source string is trimmed and any whitespace is collapsed. The words in the result are separated by single space characters without folding of long lines.

encode_phrase

 my $encoded_phrase = $encoder->encode_phrase($string);

Encodes a string that may replace a 'phrase' token (as defined by RFC 822), for example, one that precedes an address in a From, To, or Cc header.

This method works like encode_text but additionally converts remaining text that contains special characters to 'quoted-strings'.

AUTHOR

Nick Wellnhofer <wellnhofer@aevum.de>

COPYRIGHT AND LICENSE

Copyright (C) Nick Wellnhofer, 2009

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.0 or, at your option, any later version of Perl 5 you may have available.