<commit_before><?xml version="1.0" encoding="UTF-8"?>
<!-- Reviewed: no -->
<!-- EN-Revision: 15103 -->
<sect1 id="zend.mail.encoding">
    <title>エンコーディング</title>
    <para>
        テキストおよび HTML メッセージの本文は、デフォルトでは
   quotedprintable 方式でエンコードされます。
        メッセージヘッダーもbase64を <code>setHeaderEncoding()</code> で指定しなければ
   quotedprintable 方式でエンコードされます。
        その他の添付ファイルは、デフォルトでは
        base64 でエンコードされますが、<code>addAttachment()</code> のコール時に変更したり
        MIME パートオブジェクトに後から代入して変更することもできます。
        7Bit エンコーディングおよび 8Bit エンコーディングは、
        現在はバイナリデータにのみ適用可能です。
    </para>
    <para>
        <classname>Zend_Mail_Transport_Smtp</classname> は、行頭がドット 1 文字あるいはドット
        2 文字の場合にその行をエンコードします。これにより、
        SMTP プロトコルに違反するメールを作成しないようにします。
    </para>
</sect1>
<!--
vim:se ts=4 sw=4 et:
--><commit_msg>sync Japanese document with r16033.<commit_after><?xml version="1.0" encoding="UTF-8"?>
<!-- Reviewed: no -->
<!-- EN-Revision: 16033 -->
<sect1 id="zend.mail.encoding">
    <title>エンコーディング</title>
    <para>
        テキストおよび HTML メッセージの本文は、デフォルトでは
        quotedprintable 方式でエンコードされます。
        メッセージヘッダーもbase64を <code>setHeaderEncoding()</code> で指定しなければ
        quotedprintable 方式でエンコードされます。
        その他の添付ファイルは、デフォルトでは
        base64 でエンコードされますが、<code>addAttachment()</code> のコール時に変更したり
        MIME パートオブジェクトに後から代入して変更することもできます。
        7Bit エンコーディングおよび 8Bit エンコーディングは、
        現在はバイナリデータにのみ適用可能です。
    </para>

    <para>
        ヘッダ、特に subject のエンコーディングは、油断のならない話題です。
        Zend_Mime は現在、quoted printable ヘッダを
        RFC-2045 にもとづいてエンコードするアルゴリズムを自前で実装しています。
        <code>iconv_mime_encode</code> および <code>mb_encode_mimeheader</code>
        には、特定の文字セットにおける問題があるからです。
        このアルゴリズムではヘッダを空白文字でのみ区切るので、
        推奨される長さである 76 文字を超えるヘッダができてしまう可能性があります。
        そんな場合は、次の例のようにしてヘッダのエンコード方式を
        BASE64 に変更しましょう。
    </para>

    <programlisting language="php"><![CDATA[
// デフォルトは Zend_Mime::ENCODING_QUOTEDPRINTABLE です
$mail = new Zend_Mail('UTF-8');

// Base64 エンコーディングに変更します
$mail->setHeaderEncoding(Zend_Mime::ENCODING_BASE64);
]]></programlisting>

    <para>
        <classname>Zend_Mail_Transport_Smtp</classname> は、行頭がドット 1 文字あるいはドット
        2 文字の場合にその行をエンコードします。これにより、
        SMTP プロトコルに違反するメールを作成しないようにします。
    </para>
</sect1>
<!--
vim:se ts=4 sw=4 et:
-->
{'fraction_non_alphanumeric': 0.11575704225352113, 'fraction_numerical': 0.025528169014084508, 'mean_word_length': 3.388030888030888, 'pattern_counts': {'":': 0, '<': 48, '<?xml version=': 2, '>': 49, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 2}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '529555', 'n_tokens_mistral': 1336, 'n_tokens_neox': 1211, 'n_words': 134}