(57)【要約】【課題】複雑な操作を要することなく必要な部分のみを選択的に印刷することができる電子メールの印刷方法を提供する。【解決手段】電子メールのデータを印刷のために取得する工程と、前記データのうち１回以上のメール返信および／または１回以上のメール転送によりメール本文のあとに累積的に付加される１以上の履歴文とメール本文との間および履歴文の相互の間を区切る区切りを、判別する区切り工程と、判別結果に基づいて所定の世代まで遡る履歴文は印刷対象とし、所定の世代より過去の世代の履歴文は印刷の対象から除外する除外工程と、メール本文および印刷対象とされた履歴文を印刷装置で印刷する工程とを備え、コンピュータが各工程を処理することを特徴とする電子メールの印刷方法。【選択図】図１
2010122967.tif 000002
【特許請求の範囲】
【請求項１】
電子メールのデータを印刷のために取得する工程と、
前記データのうち１回以上のメール返信および／または１回以上のメール転送によりメール本文のあとに累積的に付加される１以上の履歴文とメール本文との間および履歴文の相互の間を区切る区切りを、判別する区切り工程と、
判別結果に基づいて所定の世代まで遡る履歴文は印刷対象とし、所定の世代より過去の世代の履歴文は印刷の対象から除外する除外工程と、
メール本文および印刷対象とされた履歴文を印刷装置で印刷する印刷工程とを備え、
コンピュータが各工程を処理することを特徴とする電子メールの印刷方法。
【請求項２】
前記区切り判別工程は、予め登録されたキーワードと電子メールのデータに含まれる語とを比較することにより区切りを判別する請求項１に記載の印刷方法。
【請求項３】
前記メール本文および履歴文は、件名を表す項目を含み、
前記除外工程は、履歴文の件名に転送メ―ルを示すキーワードが含まれるか否かを判断し、前記キーワードが件名に含まれている場合はその件名に係る履歴文を起点として所定の世代まで遡る履歴文は印刷対象とし、所定の世代より過去の世代の履歴文は印刷の対象から除外する請求項１または２に記載の印刷方法。
【請求項４】
ユーザー別のキーワードをメモリに登録する工程をさらに備え、
前記区切り工程は、予め登録されたキーワードに加え、または、予め登録されたキーワードに代えて、ユーザー別にメモリに登録されたキーワードとの比較により区切りを判別する請求項１〜３の何れか一つに記載の印刷方法。
【請求項５】
前記メール本文および履歴文は、その通信日付を表す項目を含み、
前記通信日付に基づいて、履歴文がメール本文として通信された通信日付を判別する工程をさらに備え、
前記除外工程は、各履歴文の通信日付が予め登録された期間に含まれるか否かを比較し、比較結果に応じて各履歴文を印刷対象とするか印刷対象から除外するかを決定する請求項１〜４の何れか一つに記載の印刷方法。
【請求項６】
前記印刷工程は、印刷対象とされた履歴文をメール本文よりも低い印刷濃度で印刷するか、あるいは、メール本文よりも印字スペースを節約して印刷する請求項１〜５の何れか一つに記載の印刷方法。
【請求項７】
取得された電子メールの印刷に先立ち、履歴文を印刷対象から除外すべきか否かの指示入力をユーザーに求める確認工程をさらに備え、
前記確認工程は、履歴文を印刷対象から除外すべき旨の指示があった場合は、前記区切り工程および除外工程が実行され、履歴文を印刷対象から除外しない旨の指示があった場合は前記区切り工程および除外工程が省略されるように処理する請求項１〜６の何れか一つの記載の印刷方法。
【請求項８】
印刷用に電子メールのデータを取得するデータ取得部と、
前記データのうち１回以上のメール返信および／または１回以上のメール転送によりメール本文のあとに累積的に付加される１以上の履歴文とメール本文との間および履歴文の相互の間を区切る区切りを判別する区切り判別部と、
判別結果に基づいて所定の世代まで遡る履歴文は印刷対象とし、所定の世代より過去の世代の履歴文は印刷の対象から除外する履歴文除外部と、
メール本文および印刷対象とされた履歴文を印刷する印刷部とを備えることを特徴とする印刷装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、電子メールの印刷方法および印刷装置に関する。より詳細には、予め登録されたキーワードおよび返信および／または転送の回数に基づき、メール印刷の際に無駄な部分の印刷を削除し、用紙及び消費電力の削減をすることができる印刷方法および印刷装置に関する。
【背景技術】
【０００２】
電子メールは、業務を遂行する上で、また、コミュニケーションを取る上で欠かせないツールとなっている。電子メールの普及に伴って、電子メールを印刷することも多くなっている。
【０００３】
そこで、電子メールの印刷ページ数を減らす手法として、メールのヘッダー/フッターを削除する技術が提案されている（例えば、特許文献１参照）
しかし、多くの電子メールは、返信や転送が何度も繰り返されることが多く、本当に印刷したい部分はメールの内容の一部分となっていることが多い。
【０００４】
即ち、電子メールの返信や転送を何度か行った場合、メール本文、即ち、その電子メールの最新の送信が行われる際に送信者が記した通信文に続いて、最新の送信よりも前に返信および／または転送が行われた際にメール本文であった文（履歴文）が累積的に付加されて送受信されることが多い。図９は、従来の電子メールの印刷結果の一例を示す説明図である。図９は、６回メールの送受信が行われた後の印刷例である。ここで、最新の送信が行われた際のメール本文は、「フォワードされたメールへの返信です」という内容である。メール本文は、差出人、送受信日時、宛先および件名の定型の項目からなる区切り（ヘッダー）の後に印刷されている。メール本文に続いて、前述の履歴文が印刷されている。それらの内容は、最近の送受信に近い順、換言すれば若い順にならんでいる。各メールの内容は、各送受信につき「Original Message」、「From」、「Sent」、「To」、「Subject」の項目からなるヘッダーの後に印刷されている。
【特許文献１】特開２００５−５３４１０５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
返信および／または転送後のメールに履歴文を付加するか否かは、メーラ（電子メール送受信用のアプリケーション・ソフトウェア）で設定可能なものが多い。即ち、そのメーラの使用者が返信および／または転送後のメールに履歴文を付加するか否かを一括して設定できるものが多い。しかし、一般に、そのメーラから送信されたメールを受信する者は、受信側された電子メールに付加されている履歴文を自動的に削除することはできない。受信者が受信された電子メールを印刷すると、図９に示すごとく、メール本文とともに付加された履歴文も印刷される。ユーザーによっては履歴文が不要な場合があるが、受信者側の意思で履歴文の付加／削除を選択することはできない。また、複数回分の履歴文が付加されている電子メールの場合、最新の履歴文だけが必要な場合もある。それにもかかわらず、各回の履歴文が印刷され、無駄に用紙、トナー、電力が消費されてしまう。
前述の非特許文献１では、送受信先のメールアドレスの削除などの提案がなされている。しかし、履歴文について特段の記載はなく履歴文を含めた印刷がなされてしまう。
【０００６】
この発明は、以上のような事情を考慮してなされたものであって、返信や転送が行われて履歴文が付加された電子メールであっても、複雑な操作を要することなくユーザーが必要とする部分を選択的に印刷することができ、用紙、トナー、あるいは電力の無駄な消費を抑制することのできる印刷方法および印刷装置を提供するものである。
【課題を解決するための手段】
【０００７】
この発明は、電子メールのデータを印刷のために取得する工程と、前記データのうち１回以上のメール返信および／または１回以上のメール転送によりメール本文のあとに累積的に付加される１以上の履歴文とメール本文との間および履歴文の相互の間を区切る区切りを、判別する区切り工程と、判別結果に基づいて所定の世代まで遡る履歴文は印刷対象とし、所定の世代より過去の世代の履歴文は印刷の対象から除外する除外工程と、メール本文および印刷対象とされた履歴文を印刷装置で印刷する工程とを備え、コンピュータが各工程を処理することを特徴とする電子メールの印刷方法を提供する。
【０００８】
また、異なる観点から、この発明は、印刷用に電子メールのデータを取得するデータ取得部と、前記データのうち１回以上のメール返信および／または１回以上のメール転送によりメール本文のあとに累積的に付加される１以上の履歴文とメール本文との間および履歴文の相互の間を区切る区切りを判別する区切り判別部と、判別結果に基づいて所定の世代まで遡る履歴文は印刷対象とし、所定の世代より過去の世代の履歴文は印刷の対象から除外する履歴文除外部と、メール本文および印刷対象とされた履歴文を印刷する印刷部とを備えることを特徴とする印刷装置を提供する。
【発明の効果】
【０００９】
この発明の印刷方法は、前記データのうち１回以上のメール返信および／または１回以上のメール転送によりメール本文のあとに累積的に付加される１以上の履歴文とメール本文との間および履歴文の相互の間を区切る区切りを、判別する区切り工程と、判別結果に基づいて所定の世代まで遡る履歴文は印刷対象とし、所定の世代より過去の世代の履歴文は印刷の対象から除外する除外工程とを備えるので、履歴文とメール本文との間および履歴文の相互の間の区切りを判別し、判別結果に基づいて所定の世代よりも古い履歴文を除外して印刷を行うことによって、複雑な操作を要することなくユーザーが必要とする部分を印刷することができる。従って、用紙、トナー、あるいは電力の無駄な消費を抑制することができる。
【００１０】
この発明において、電子メールのデータは、メール本文を含み、そのメールが過去に返信および／または転送がされたときは履歴文が付加されている。電子メールのデータには、画像データなどのファイルが添付されていてもよいが、この発明における区切りの判別は添付ファイルではなくメールの本体に付加される履歴文を判別の対象としている。履歴文はメール本文と共にユーザーが読み取り可能な文字データであり、各履歴文の冒頭には、定型の記載内容が付与される。具体的には、以下の行が履歴文であることを示す「Original Message」、履歴文の送信者を示す「From …」、履歴文の送信日時を示す「Sent …」、履歴文の宛先を示す「To …」、履歴文の件名を示す「Subject …」などが一例として挙げられる。この明細書では、メール本文および履歴文のうち、それら定型の記載部分を特に「区切り」と呼んでいる。
【００１１】
この明細書で「メール本文」は、その内容がはじめて送受信される文であり、履歴文は、返信および／または転送前、既に送受信された文である。複数回の返信および／または転送を繰り返すと、履歴文は累積的に付加されていく。各履歴文の間には、それぞれ「区切り」が存在する。
【００１２】
この発明において、キーワードとは、「区切り」として使用される語である。例えば、前述の「From」、「Sent」、「To」あるいは「Subject」などの語やそれらの組み合わせであってもよい。あるいは、「Original Message」のような定型句であってもよい。
【００１３】
この発明において、印刷装置は、例えば、電子写真方式のデジタル複合機であってもよいが、これに限定されず、電子メールを印刷可能なものであればよい。例えば、インクジェット方式や熱転写方式、昇華式の印刷装置であってもよい。また、複合機に限定されず、単機能のプリンタであってもよい。
【００１４】
以下、この発明の好ましい態様について説明する。
前記区切り判別工程は、予め登録されたキーワードと電子メールのデータに含まれる語とを比較することにより区切りを判別してもよい。このようにすれば、登録されたキーワードが電子メールのデータに含まれる語と一致するか否かを判断することにより、区切りを判別することができる。
【００１５】
また、前記メール本文および履歴文は、件名を表す項目を含み、前記除外工程は、履歴文の件名に転送メ―ルを示すキーワードが含まれるか否かを判断し、前記キーワードが件名に含まれている場合はその件名に係る履歴文を起点として所定の世代まで遡る履歴文は印刷対象とし、所定の世代より過去の世代の履歴文は印刷の対象から除外してもよい。このようにすれば、転送メールから所定の世代まで遡る履歴文を印刷対象とすることができる。転送メールは、第三者の間でやりとりされていた内容がはじめて受信者に送信される場合がある。そのような転送メールを受信した場合、受信者は転送前の履歴文の内容を手がかりに電子メールの内容を理解する。この構成によれば、転送メールから所定の世代まで遡る履歴文は印刷対象とされるので、受信者は印刷内容から電子メールの内容を理解することができる。ここで、転送メ―ルを示すキーワードは、たとえば、英文字の「ＦＷ」であってもよい。
【００１６】
さらにまた、ユーザー別のキーワードをメモリに登録する工程をさらに備え、前記区切り工程は、予め登録されたキーワードに加え、または、予め登録されたキーワードに代えて、ユーザー別にメモリに登録されたキーワードとの比較により区切りを判別してもよい。ユーザーごとに使用するメーラが異なると、区切りとして使用される語が異なることがあり得る。このようにすれば、ユーザー別に登録されたキーワードにより区切りを判別することができるので、異なるメーラを使用する複数のユーザーに対応することが可能である。
【００１７】
前記メール本文および履歴文は、その通信日付を表す項目を含み、前記通信日付に基づいて、履歴文がメール本文として通信された通信日付を判別する工程をさらに備え、前記除外工程は、各履歴文の通信日付が予め登録された期間に含まれるか否かを比較し、比較結果に応じて各履歴文を印刷対象とするか印刷対象から除外するかを決定してもよい。このようにすれば、送受信の日時が所定の期間内ではない履歴文は、返信および／または転送の回数（世代）にかかわらず印刷の対象から除外することができる。例えば、ユーザーが、「古すぎる会話は、無駄」と考える場合は、所定の世代内であったとしても、その履歴文を印刷の対象から除外することができる。あるいは、送受信の日時が所定の期間外の履歴文は、返信および／または転送の回数にかかわらず印刷の対象とすることができる。例えば、ユーザーが、「古すぎる会話は、記憶が薄れる」と考える場合、送受信の回数にかかわらず、すべてを印刷するように設定できる。ここで、前記期間の基準は、たとえば、印刷の要求があったときであってもよい。
【００１８】
また、前記印刷工程は、印刷対象とされた履歴文をメール本文よりも低い印刷濃度で印刷するか、あるいは、メール本文よりも印字スペースを節約して印刷するようにしてもよい。このようにすれば、履歴文をメール本文と同じ印刷条件で印刷する場合に比べて履歴文の印字に要するトナーやシートを節約することができる。ここで、印字スペースを節約するとは、例えば、履歴文の文字の大きさをメール本文よりも小さくしたり、履歴文の行や文字の間隔をメール本文よりも小さくしたりすることを指す。
【００１９】
さらにまた、取得された電子メールの印刷に先立ち、履歴文を印刷対象から除外すべきか否かの指示入力をユーザーに求める確認工程をさらに備え、前記確認工程は、履歴文を印刷対象から除外すべき旨の指示があった場合は、前記区切り工程および除外工程が実行され、履歴文を印刷対象から除外しない旨の指示があった場合は前記区切り工程および除外工程が省略されるように処理してもよい。このようにすれば、ユーザーが意識せずに不要な履歴文の印刷を許容することが防止でき、無駄な履歴文の印刷による印刷シートやトナーの無駄な消費を抑制することができる。
ここで示した種々の好ましい態様は、それら複数を組み合わせることもできる。
【発明を実施するための最良の形態】
【００２０】
以下、図面を用いてこの発明をさらに詳述する。なお、以下の説明は、すべての点で例示であって、この発明を限定するものと解されるべきではない。
【００２１】
（電子メール印刷システムの基本構成）
図１は、本発明に係る電子メールの印刷を行うシステムの構成例を示す説明図である。図１に示すように、電子メールの印刷システムは、ユーザーが電子メールを送受信したりアプリケーションを操作したりするパーソナルコンピュータ（ＰＣ）１−２と、そのコンピュータ１−２より印刷要求を実行することの出来る画像形成装置１−３からなる。この実施形態で、画像形成装置１−３は、デジタル複合機（ＭＦＰ）である。
【００２２】
本発明のメール印刷に係る各種設定は、設定画面１−１を用いてユーザーが行う。この画面は、ＭＦＰ１−３が備える操作パネルに表示されてもよい。あるいは、ＰＣ１−２のディスプレイ上に表示されてもよい。具体的には、ＰＣ１−２にインストールされたWebブラウザを用いて設定画面が表示されてもよい。あるいは、ＰＣ１−２にインストールされたプリンタドライバの設定画面１−４として表示されてもよい。ユーザーがＰＣ１−２のディスプレイ上に表示された設定画面１−１に対して設定の操作を行うと、その設定内容は、ネットワークを介してＭＦＰ１−３に送信される。そして、ＭＦＰ１−３の印刷に係る設定が行われる。あるいは、ユーザーがＭＦＰ１−３の操作パネルに表示された設定画面に対して設定の走査を行うと、その設定内容がＭＦＰ１−３の印刷に反映される。
【００２３】
ＭＦＰ１−３には、電子メール本文および履歴文の冒頭に付与される定型の記載（区切り）、即ち、ヘッダーを見分けるためのキーワードが事前に登録されている。また、メールの履歴文の印刷を行なう際に、何回まで遡った履歴文を印刷の対象とするかの回数が予め登録されている。これらのキーワードや回数設定は、ＰＣ１−２のディスプレイ上にWebブラウザにより表示される設定画面、プリンタドライバの設定画面やＭＦＰ１−３の操作パネルに表示される設定画面を用いて登録することができる。ＭＦＰ１−３は、これらのキーワードや回数を保持するために不揮発性の記憶装置（図示せず）を備えている。その具体例は、ハードディスク装置やフラッシュメモリである。また、印刷処理を実行するためのＣＰＵを備えている。
【００２４】
電子メールのデータ（メールデータ）は、返信および／または転送を繰り返すことにより、返信および／または転送前のデータが履歴文として累積的に付加される。通常、履歴文は、メール本文の末尾に付加される。複数回の返信および／または転送を繰り返すと、複数の履歴文が付加される。その例は、図９に示すとおりである。この発明の一態様によれば、電子メールを印刷する際には、ＭＦＰ１−３に登録された回数Ｎを超える履歴文は、印刷の対象から除外され、メール本文と直近のＮ回の履歴文のみが印刷される。この機能によって、印刷シートが節約できる。
図２は、この発明に係るＭＦＰ１−３に登録される各種のキーワード、回数設定などの内容を例示する説明図である。
【００２５】
（メール本文を伴わない転送メールへの対応）
送受信される電子メールの中には、メール本文を伴わないもの、即ち、狭義の転送メール（フォワードメール、ＦＷメール）がある。このような電子メールを印刷する際、全ての子メールを印刷の対象から除外すると、メールの内容がなにも印刷されないといった不具合が生じる。
【００２６】
本発明の一態様によれば、メールの「件名」に着目し、フォワードメールか否かを判別する。即ち、前述のキーワードの一種として、フォワードメールを示す語「ＦＷ」が記載される項目名（ＦＷキーワード、例えば、項目名「件名」）を事前に登録しておく。また、通常のフォワードメール専用の回数設定をそして、電子メールの「件名」が「ＦＷ」を含むか否かを判別する。件名に「ＦＷ」が含まれていた場合は、そのメールがフォワードメールであると判断する。
フォワードメールであると判断した場合、ユーザーがPC（１−２）でWeb設定や画像形成装置（１−３）のフロントパネルを用いて事前に設定登録（１−１）した、「全文印刷」や「世代（Ｎ）まで遡り印刷」などの設定を記憶することが出来る。
【００２７】
（キーワードのユーザー登録）
また、メールソフトによっては、送受信のヘッダーの記載が異なることが考えられる。
そのため、ユーザーは、Webブラウザを用いて表示される設定画面やＭＦＰ１−３の操作パネルを通じて、キーワードの追加登録が行うことができる。登録されたキーワードは、ユーザー登録キーワードとして、前述の記憶装置内に格納される。図２は、この発明に係る前記記憶装置に格納されるデータの一例を示す説明図である。前記記憶装置に格納されたデータは、ＭＦＰ１−３の設置時に予め登録されているキーワード２−１、ＦＷキーワード２−３、ユーザーが追加登録できるユーザー登録キーワード２−４、同じくユーザーが追加登録できるユーザー登録ＦＷキーワード２−６、日時チェックキーワード２−７および日付許容範囲２−８を含む。
【００２８】
図２では、キーワード２−１として「From」、「Sent」、「To」、「差出人」、「送信日時」、「宛先」および「Original」が登録されている。
ユーザー登録キーワード２−４は、ユーザー毎に管理され、該当ユーザーからの印刷要求に対応して判別に使用されてもよい。
ＦＷキーワード２−３は、ＦＷメールを判断する際に使用するキーワードであり、ＭＦＰ１−３の設置時に予め登録されているものである。
ユーザー登録ＦＷキーワード２−６は、ＦＷキーワードと同様の目的で使用され、ユーザー登録が登録可能なデータである。
日時チェックキーワード２−７および日付許容範囲２−８については、後述する。
【００２９】
なお、前記記憶部は、上記のデータのほか、履歴文を含む電子メールを印刷する場合に、過去何回の履歴文まで遡って印刷対象とするかの設定値（世代の閾値）を格納する。その設定値は、ユーザー登録キーワードと同様に、ユーザーが設定画面や操作パネルを用いて登録および変更することができる。
【００３０】
（日付チェック機能）
ＭＦＰ１−３は、日付チェック機能を有する。日付チェック機能は、印刷しようとするメール本文の送信日付を抽出して印刷処理を行う日付と比較し、比較結果が前記記憶装置に予め記憶された範囲を超えるか否かに応じて、印刷対象のメールの処理を異ならせる機能である。例えば、前記範囲を超えるメールは印刷を行わないようにする機能である。日付チェック機能を実現するため、前記記憶装置は、日時チェックキーワード２−７および日付許容範囲２−８を格納する。日時チェックキーワード２−７は、印刷対象のメール本文の送信日付を抽出するために用いられる。また、日付許容範囲２−８は、抽出された送信日時が印刷処理を行う日付を基準とする範囲内にあるか否かの判断に用いられる。
【００３１】
（処理手順）
以下、本発明の処理について、フローチャートに基づいて説明する。図３〜図７は、この発明に係る印刷の処理手順を示すフローチャートである。各処理は、ＭＦＰ１−３が備える前記ＣＰＵによって実行される。
【００３２】
(基本処理)
ＭＦＰ１−３が備える前記記憶装置には、予めキーワード２−１が格納されている。キーワード２−１は、メールの送受信の区切りを判断するための文字列である。ユーザーの印刷指示により、印刷データがＭＦＰ１−３に送られてくると、ＭＦＰ１−３は、それらの印刷データを受信バッファに格納する。
【００３３】
受信バッファは、受信された印刷処理前の電子メールデータを一時的に格納しておくメモリ領域である。受信バッファは前記記憶装置内に設けられてもよいが、異なるハードウェアで実現されてもよい。不揮発性メモリである必要はなく、揮発性メモリでよい。前記ＣＰＵは、受信バッファに格納された印刷データを先頭から１行毎に読出して１行バッファと印刷待ちバッファへ移動させる。そして、１行バッファの内容を解析する。
【００３４】
１行バッファは、電子メールデータの印刷に係る解析を行うため、１行ごとのデータを一時的に格納するメモリである。１行バッファは前記記憶装置内に設けられてもよいが、異なるハードウェアで実現されてもよい。印刷待ちバッファは、１行バッファに格納された印刷データが印刷対象か否かの判定を待つ間、それと同じ印刷データを格納しておくバッファである。前記ＣＰＵは、1行バッファに格納されたデータが印刷対象か否かを判断するが、印刷待ちバッファにアクセスすることもでき、その中に格納された印刷データを解析することもできる。印刷待ちバッファには複数行の電子メールデータが格納され得る。後述するように、前記ＣＰＵは、複数行に渡る印刷データの解析結果に基づいて、その印刷データが印刷の対象か否かを決定するからである。印刷待ちバッファに格納されたデータが印刷対象でないと判断した場合、前記ＣＰＵは、印刷待ちバッファの内容を印刷用に展開することなくクリアする。一方、前記データが印刷対象であると判断した場合、前記ＣＰＵは印刷待ちバッファの内容を前記レンダリング処理用のユニットに転送した後、印刷待ちバッファをクリアする。
【００３５】
図８は、この発明の印刷処理に係る受信バッファ、１行バッファおよび印刷待ちバッファの構成例を示す説明図である。受信バッファおよび印刷待ちバッファはＦＩＦＯ構造のバッファである。
前記ＣＰＵは、１行バッファ中の印刷データが、登録されたキーワード２−１を含むか否かを判断する。その判断結果に基づいて、印刷データ中の区切りを判別する。
【００３６】
図３の処理を順序に従って電子メールの印刷データを受信した場合に前記ＣＰＵが実行する印刷処理の手順を説明する。なお、以下のフローチャートでは、処理の変数として、履歴文の世代をカウントする世代カウンタ（Ｃ）と、過去何回までの送受信を印刷対象に含めるかを定める履歴文の世代の閾値（Ｎ）が用いられる。前記閾値は、前記記憶装置に登録されている。この実施形態においては、前記閾値は１に設定（Ｎ＝１）されているものとする。なお、世代カウンタは、処理開始時に初期値ゼロ（Ｃ＝０）に設定される。Ｎ＝１の場合、電子メールの印刷は、メール本文（以下、親メールデータともいう）と、履歴文(以下、子メールデータともいう)のうち直近の１回の送受信のみを印刷の対象とする。因みに、Ｎ＝０の場合、履歴文は全く印刷されない。Ｎ＝２であれば、メール本文と直近２回分の履歴文が印刷される。
【００３７】
電子メールの印刷データを受信した場合、前記ＣＰＵは、前述の世代カウンタＣを初期値（ゼロ）にリセットする。さらに、親メールが転送メールであることを示すフラグをリセットする（ステップS11）。そして、親メールデータのヘッダーの部分、即ち、「差出人」、「送信日時」、「宛先」、「件名」の項目がその順に最初に表れる部分およびそれに先立つ部分を受信バッファから読み出して、いったん印刷待ちのバッファに格納する。そして、前記ＣＰＵは印刷待ちバッファに格納された印刷データを印刷可能な形式に展開（レンダリング）するためのユニット（図示せず）に転送する。そして、印刷待ちバッファをクリアする。なお、レンダリング処理用のユニットへ転送された印刷用データは、レンダリング処理用の図示しないメモリ領域に格納された後、前記ユニットによりレンダリングされ印刷される。
【００３８】
続いて、前記ＣＰＵは、親メールデータ（メール本文）のヘッダー、具体的には「件名」にフォワードメールを示す語「ＦＷ」が含まれるか否かを判定する（ステップS90）。「ＦＷ」が含まれない場合(ステップS90のNo)、即ち、その親メールが転送メールでない場合、ルーチンはステップS110Aへ進む。一方、親メールデータの「件名」に「ＦＷ」の語が含まれている場合(ステップS90のYes)、即ち、その親メールが転送メールである場合、ルーチンは図５に示す処理を実行する。図５の処理については後述する。
【００３９】
親メールデータの「件名」に「ＦＷ」の語が含まれていない場合（ステップS90のNo）の処理を続けて説明する。その場合、前記ＣＰＵは、親メールが転送メールではないと判断し、続けてメール本文及び履歴文の印刷を行う。前記ＣＰＵは、受信バッファの内容を１行ずつ読み出して、それが履歴文のヘッダー部分に該当するか否かを調べつつ、印刷を行う。より詳細には、前記ＣＰＵは、まず、１行読み出し処理のサブルーチンを実行する（ステップS110A）。
【００４０】
図７は、１行読出し処理のサブルーチンの処理を示すフローチャートである。図７で、前記ＣＰＵは、受信バッファに次の１行分の印刷データが格納されているか否かを判定する（ステップS111）。受信バッファが空であれば、印刷が完了したと判断して（ステップS111のYes）、ルーチンはステップS117へ進む。前記ＣＰＵは、印刷待ちバッファに格納されているデータを展開処理するユニットへ転送（ステップS117）した後、印刷待ちバッファをクリアし（ステップS119）、印刷の処理を終了する。一方、受信バッファが空でなく、次に印刷すべき印刷データが格納されている場合（ステップS111のNo）は、格納されている印刷データのうち先頭の１行を１行読出して１行読出しバッファに格納する（ステップS113）。さらに、１行読出しバッファの内容を印刷待ちバッファに追加する（ステップS115）。以上が、１行読出し処理の内容である。
【００４１】
図３に戻り、ステップS110Aの後の説明を続ける。前記ＣＰＵは、1行バッファの内容が事前登録されているキーワード２−１と一致する文言を含むか否かをチェックする。まず、１行バッファの内容がキーワード「original」を含むか否かを判断する（ステップS121）。「original」を含まない場合（No）、前記ＣＰＵは、１行バッファの内容がヘッダー部分に該当しないと判断し、ルーチンはステップS130へ進む。そして、前記ＣＰＵは、印刷待ちバッファに格納されているデータを前述のレンダリング処理を行うユニットへ転送（ステップS130）した後、印刷待ちバッファをクリアする（ステップS131）。そして、次の１行を解析すべく、ステップS110Aからの処理を繰り返す。
【００４２】
一方、前記ステップS121の判定で、１行バッファの内容が「original」を含む場合（No）、前記ＣＰＵは、１行バッファの内容がヘッダー部分に該当する可能性があると判断し、ルーチンは図４に示す処理の先頭（ステップS110B）へ進んでさらにヘッダー部分の判定をおこなう。
【００４３】
図４のフローチャートについて説明する。図４で、前記ＣＰＵは、さらに１行読み出し処理のサブルーチンを実行する（ステップS110B）。そして、読み出した１行バッファの内容がキーワード「From」または「差出人」を含むか否かを判断する（ステップS123）。「From」または「差出人」を含まない場合（ステップS123のNo）、ルーチンは図３のステップS130へ進み、前記ＣＰＵは、印刷待ちバッファに格納されているデータを展開処理するユニットへ転送（ステップS130）した後、印刷待ちバッファをクリアする（ステップS131）。
【００４４】
一方、１行バッファの内容が「From」または「差出人」を含む場合（ステップS123のYes）、前記ＣＰＵは次の１行を１行バッファと印刷待ちバッファに読み出すべく、１行読出し処理のサブルーチンを実行する（ステップS110C）。そして、更新された１行バッファの内容がキーワード「Sent」または「送信日時」を含むか否かを判断する（ステップS124）。「Sent」または「送信日時」を含まない場合（ステップS124のNo）、ルーチンは図３のステップS130へ進み、前記ＣＰＵは印刷待ちバッファに格納されているデータを印刷用に展開処理した後、印刷待ちバッファをクリアする（ステップS131）。
【００４５】
一方、１行バッファの内容が「Sent」または「送信日時」を含む場合（ステップS124のYes）、前記ＣＰＵはさらに次の１行を１行バッファと印刷待ちバッファに読み出すべく、１行読出し処理のサブルーチンを実行する（ステップS110D）。そして、更新された１行バッファの内容がキーワード「To」または「宛先」を含むか否かを判断する（ステップS125）。「To」または「宛先」を含まない場合（ステップS125のNo）、ルーチンは図３のステップS130へ進み、前記ＣＰＵは、印刷待ちバッファに格納されているデータを印刷用に展開処理した後、印刷待ちバッファをクリアする（ステップS131）。「To」または「宛先」を含む場合（ステップS125のYes）、ルーチンは、図５のフローチャートの先頭（ステップS110E）へ進む。
【００４６】
以上の判定により、前記ＣＰＵはキーワード「original」、「From」または「差出人」、「Sent」または「送信日時」、「To」または「宛先」が、行ごとに前記の順番で続けて表れる場合、それらの行が履歴文の「区切り」に該当すると判断する。そして、さらに図５の履歴文の世代カウントの処理へ進む。一方、前記の条件に該当しないと判断した場合、各行は図３のステップS130、S131の処理を経ることにより印刷用に展開される。即ち、印刷の対象として処理される。
【００４７】
（履歴文解析処理）
図５の処理につき、さらに説明を続ける。キーワード「From」または「差出人」、「Sent」または「送信日時」、「To」または「宛先」が行ごとに前記の順番で続けて表れる場合、前記ＣＰＵはそれらを履歴文のヘッダーと判断し、図５のステップS110E以降の処理を行う。
【００４８】
前記ＣＰＵは、次の１行を１行バッファと印刷待ちバッファに読み出すべく、１行読出し処理のサブルーチンを実行する（ステップS110E）。１行読出しバッファの内容がＦＷキーワード「Subject」または「件名」を含む場合、ルーチンはステップS160へ進み、１行読出しバッファの内容が、フォワードメールを示す語「ＦＷ」を含むか否かを判断する（ステップS160）。これは、親メールが転送メールでない場合において、履歴文に転送メールが含まれる場合、その転送メールからＮ世代（ＮはＭＦＰ１−３に登録された回数設定）遡った履歴文までを印刷しそれより古い履歴文は印刷しないようにするためである。前述の判断の結果、１行読出しバッファの内容が「ＦＷ」を含まない場合（ステップS160のNo）、前記ＣＰＵはそのヘッダーが転送メールのものでないと判断し、ルーチンはステップS180へ進む。ステップS180では、日付チェック機能に係る判定を行う。
【００４９】
一方、１行読出しバッファの内容が「ＦＷ」を含む場合（ステップS160のYes）、前記ＣＰＵは、そのヘッダーが転送メールのものであると判断し、まず、履歴文を含む電子メールを全文印刷するよう設定されているか否かを判断する（ステップS240）。全文印刷をするように設定されている場合（ステップS240のYes）は、これ以降、区切りの判定をやめ、残りの各行をすべて印刷する処理を実行する（ステップS230）。そして、処理を終了する。
【００５０】
一方、全文印刷するように設定されていない場合（ステップS240のNo）、前記ＣＰＵは、親メールがＦＷメールか否かを判断する（ステップS250）。これは、前述した図３のステップS90の判定結果に基づく。親メールが転送メールと判断された場合（ステップS250のYes）、子メール中に転送メールがあるか否かに係らず、親メールからＮ世代の履歴文までを印刷し、それ以降の履歴文を印刷しないようにするための判断である。一方、親メールが転送メールでない場合（ステップS250のNo）、子メールの転送メールを起点としてＮ世代の履歴文までを印刷するため、の判断である。親メールが転送メールでない場合、前記ＣＰＵは、履歴文の世代カウントタＣをリセットする（ステップS170）。従って、例えば、親メールが転送メールでなく、かつ、子メールの履歴文に転送メールが連続して存在する場合、最も古い転送メールを起点としてＮ世代の履歴文までが印刷される。その後、ルーチンはステップS180の日付チェック機能の処理へ進む。
【００５１】
一方、前記ステップS250で、親メールが転送メールの場合（ステップS250のYes）、世代カウントタＣをリセットすることなく、ルーチンはステップS180の日付チェック機能の処理へ進む。
【００５２】
ステップS180、S190は日付チェック機能の処理である。日付チェック機能の処理について説明する。ステップS180で、前記ＣＰＵは、印刷待ちバッファに格納された印刷データのうち、日時チェックキーワード２−７を含む項目を特定し、その項目の内容、即ち送信日時を抽出する。そして、抽出された送受信日時と印刷処理の要求があった日とを比較する（ステップS190）。即ち、件名の内容に含まれる日付が、印刷処理の要求があった日時を基準として日付許容範囲２−８の範囲内にあるか否かを判断する。その結果、範囲内であれば（ステップS190のYes）、ルーチンはステップS200へ進み、履歴文の世代を判定する。
【００５３】
一方、前記ステップS190で、件名の内容に含まれる日付が、日付許容範囲２−８の範囲を超えている場合（ステップS190のNo）、ルーチンはステップS201へ進み、印刷待ちバッファをクリアし、その電子メールを印刷することなく、処理を終了する。その結果、ヘッダー部分の「Sent」または「送信日付」に日付許容範囲を超える日付が含まれている場合はその履歴文およびそれ以降に記載されている履歴文、即ち、それより古い履歴文は印刷されない。
【００５４】
ステップS200、S203およびS135は、子メールの転送メールからＮ世代まで遡って履歴文は印刷し、それよりも古い履歴文は印刷しないための世代の判定処理である。ステップS200で、前記ＣＰＵは、履歴文の世代カウントタＣが、登録されたＮの値と等しいか否かを判断する（ステップS203）。ここで、世代カウンタＣは、図３のステップS11の初期化処理でゼロにリセットされる。また、親メールが転送メールでなく、かつ、子メールが転送メールである場合ゼロにリセットされる。そして、この判定結果がNoの場合、その直後にカウンタ値が＋１される（ステップS135）。
【００５５】
例えば、ステップS90で親メールが転送メールであると判断された場合、親メールの内容と、１世代目の履歴文のヘッダーが印刷バッファに格納され、かつＣ＝０の状態でステップS203の第１回目の判定がなされる。その場合の判定結果はＣ≠Ｎ、即ちNoである。ただし、この実施形態ではＮ＝１である。その結果、ルーチンはステップS135へ進み、世代カウンタＣの値を＋１した（Ｃ＝１）後、ステップS130、S131の処理へ進み、第1世代目の履歴文の印刷が行われる。さらに、印刷処理が進み、２世代目の履歴文のヘッダーが見つかった場合、ステップS203の第２回目の処理が行われる。この場合、２世代目の履歴文のヘッダーが印刷バッファに格納され、かつＣ＝１の状態でステップS203の判断がされる。その判定結果はＣ＝Ｎ（ただし、Ｎ＝１）、即ちYesである。その結果、ルーチンは、ステップS201へ進み、印刷待ちバッファをクリアして印刷処理を終了する。従って、第２世代目およびそれより過去の世代の履歴文、即ち、第２世代以前の履歴文は印刷されない。
【００５６】
また、例えば、親メールが転送メールでない場合、第１世代の履歴文のヘッダーが印刷バッファに格納され、かつＣ＝０の状態でステップS203の第１回目の判定がなされる。その場合の判定結果はＣ≠Ｎ、即ちNoであり、１世代目の履歴文の印刷が行われる。続いて、２世代目の履歴文のヘッダーが見つかった場合、ステップS203の第2回目の判定が行われる。この場合、転送メールから２世代目の履歴文のヘッダーが印刷バッファに格納され、かつＣ＝１の状態でステップS203の判断がされる。判定結果はＣ＝Ｎ、即ちYesである。従って、第２世代およびそれより過去の世代の履歴文は印刷されない。
【００５７】
ただし、２世代目の履歴文が転送メールの場合、ステップS170で世代カウンタＣはクリアされた後にステップS203の第2回目の判定が行われる。その場合の判定結果はＣ≠Ｎ、即ちNoであり、２世代目の履歴文の印刷が行われる。さらに、３世代目の履歴文のヘッダーが見つかった場合、ステップS203の第3回目の判定が行われる。この場合、転送メールから３世代目の履歴文のヘッダーが印刷バッファに格納され、かつＣ＝１の状態でステップS203の判断がされる。判定結果はＣ＝Ｎ、即ちYesである。従って、第３世代およびそれより過去の世代の履歴文は印刷されない。
【００５８】
ただし、この場合も３世代目の履歴文が転送メールの場合、ステップS170で世代カウンタＣはクリアされた後にステップS203の第3回目の判定が行われる。その場合の判定結果はＣ≠Ｎ、即ちNoであり、３世代目の履歴文の印刷が行われる。以上のように、子メールの履歴文が転送メールであれば、それを起点としてＮ世代まで過去に遡り履歴文が印刷される。
【００５９】
続いて、図３のステップS90で、親メールの「件名」に転送メールを表すキーワード「ＦＷ」が含まれている場合、即ち、親メールが転送メールであると判断した場合の処理について説明する。図６は、その場合の処理の手順を示すフローチャートである。前記判断の結果、ルーチンは図６のステップS300へ進む。ステップS300で、前記ＣＰＵは、全文印刷するように設定されているか否かを判断する。全文印刷をするように設定されている場合（ステップS300のYes）は、これ以降、区切りの判定をやめ、残りの各行をすべて印刷する処理を実行する（ステップS330）。そして、処理を終了する。
【００６０】
一方、全文印刷するように設定されていない場合（ステップS300のNo）、前記ＣＰＵは、親メールが転送メールであることを示すフラグをセットする（ステップS310）。このフラグは、前述した図５のステップS250の判定に用いられる。親メールが転送メールの場合は、子メールに転送メールが含まれていてもステップS170の処理へ進まない。即ち、世代カウンタはリセットされない。従って、親メールからＮ世代目までの履歴文が印刷され、それより過去の世代の履歴文は印刷されない。
ステップS310でフラグをセットした後、ルーチンは図３のステップS130の処理へ進み、親メールのヘッダーに続く部分の解析および印刷の処理を行う。
【００６１】
図１０は、図９に対応する電子メールのデータを、この発明による印刷方法により印刷した結果の一例を示す説明図である。図９の電子メールは、親メールは転送メールでないが、メール本文のあとに転送メールが続く。図１０に示すように、この発明の一実施形態によれば、Ｎ＝１の場合、親メールの内容と第１世代の履歴文のみが印刷され、それ以前の履歴文は印刷されない。
【００６２】
前述の処理手順から容易に理解できるように、例えば、Ｎ＝２の場合は、メール本文と直近から２回目までの履歴文が印刷され、それ以前の履歴文は印刷されない。なお、Ｎが、印刷すべき電子メールのデータ中の履歴文の世代数より大きい場合、受信バッファから印刷データを読出し、履歴文の世代をカウントしながら各行を印刷している途中で印刷データの末尾に至る。その場合、前記ＣＰＵは、１行読出し処理（図６）のステップS111の判定で受信バッファが空であると判断し、S117,S119の処理によって最終行まで印刷を行うように処理したのち印刷処理を終了する。
【００６３】
（印刷結果の例）
図１０〜図１３は、本発明による印刷方法を用いた場合に得られる印刷の一例を示す説明図である。
図１０は、この発明において、前記ＣＰＵが、図３〜７のフローチャートの処理に従って履歴文の世代を判別し、子メールの転送メールから１世代目までの内容が印刷された例を示している。
図１１は、この発明において、全文印刷が登録されている場合の印刷結果の一例を示している。全文印刷が指定されている場合は、従来の印刷結果と相違がない。
【００６４】
図１２および図１３は、日付チェック機能に関する印刷結果の例を示す説明図である。図１２は、日付チェック機能を用いない場合の印刷結果の一例である。５世代にわたる子メールの送信日時はそれぞれAugust 20, 2008, 7:30PM、August 20, 2008, 7:30PM、August 19, 2008, 7:29PM、August 18, 2008 7:29PM、August 17, 2008 7:28PMである。親メールの日付は、August 21, 2008 7:31PMとする。
それに対して、図１３は、日付機能が設定されており、日付許容範囲が2日の場合の印刷結果の例である。親メールの日付から2日以内、即ち8月19日以降に送信された１〜３世代目の履歴文までは印刷されるが、それより過去、即ち、8月19日より前の履歴文は印刷されない。
【００６５】
（変形例その１）
変形例として、履歴文の印刷条件を、履歴文以外のメール本文データと異ならせて印刷する態様について説明する。この態様によれば、履歴文をメール本文と同じ印刷条件で印刷する場合に比べて履歴文の印字に要するトナーやシートを節約することができる。
【００６６】
この場合、印刷待ちバッファのデータとして、文字データのほかに、フォント大きさや印刷濃度を規定する印刷条件が1行ごとに付与される。印刷条件を付与する具体的なタイミングは、図５の一行読み出し処理（ステップS110E）の直後である。ステップS110Eで、印刷待ちバッファに1行読出しバッファのデータが追加されるごとに、追加された1行のデータに対して予め決められたフォントサイズおよび／または印刷濃度を示す印刷条件が制御データとして付与される。
【００６７】
ここで、ステップS110Eの一行読出し処理で印刷待ちバッファに追加される各印刷データは履歴文である。従って、メール本文として印刷待ちバッファに追加される印刷データに比べて、履歴文として印刷待ちバッファに付与される印刷条件は、小さなフォントサイズおよび／または低い印刷濃度で印刷される。その他、前記印刷条件として密な行間隔や文字間隔が履歴文に付与されてもよい。
【００６８】
（変形例その２）
異なる変形例として、印刷前に、履歴文の印刷の要否をユーザーに確認する態様について説明する。この態様によれば、メールを印刷する前に、ユーザーに履歴文の要否を確認する表示を行い、ユーザーにより履歴文の印刷が指示された場合にのみ履歴文の印刷を実施する。このようにすれば、ユーザーが意識しないうちに不要な履歴文が印刷されることが防止できる。従って、不要な履歴文の印刷によるトナーや印刷シートの消費を抑制することができる。
【００６９】
具体的には、電子メールの印刷を開始する前に、履歴文の要否をユーザーに確認するダイアログを表示する。その表示に応答してユーザーが履歴文の印刷を指示した場合は、図９の印刷例のように履歴文を含む通常の印刷処理を行い、履歴文の抽出と削除に係る処理を行わない。一方、前記表示に応答してユーザーが履歴文の削除を指示した場合は、履歴文の抽出と削除に係る処理を行ない、図１０、図１２または図１３の印刷例のように、履歴文の少なくとも一部が削除された印刷を行なう。
【００７０】
前述した実施の形態の他にも、この発明について種々の変形例があり得る。それらの変形例は、この発明の範囲に属さないと解されるべきものではない。この発明には、請求の範囲と均等の意味および前記範囲内でのすべての変形とが含まれるべきである。
【図面の簡単な説明】
【００７１】
【図１】本発明に係る電子メールの印刷を行うシステムの構成例を示す説明図である。
【図２】この発明に係るＭＦＰに登録される各種のキーワード、回数設定などの内容を例示する説明図である。
【図３】この発明に係る印刷の処理手順を示す第１のフローチャートである。
【図４】この発明に係る印刷の処理手順を示す第２のフローチャートである。
【図５】この発明に係る印刷の処理手順を示す第３のフローチャートである。
【図６】この発明に係る印刷の処理手順を示す第４のフローチャートである。
【図７】この発明に係る印刷の処理手順を示す第５のフローチャートである。
【図８】この発明の印刷処理に係る受信バッファ、１行バッファおよび印刷待ちバッファの構成例を示す説明図である。
【図９】従来の電子メールの印刷結果の一例を示す説明図である。
【図１０】本発明による印刷方法を用いた場合に得られる印刷の一例を示す説明図である。
【図１１】本発明による印刷方法を用いた場合に得られる印刷の一例を示す説明図である。
【図１２】本発明による印刷方法を用いた場合に得られる印刷の一例を示す説明図である。
【図１３】本発明による印刷方法を用いた場合に得られる印刷の一例を示す説明図である。
【符号の説明】
【００７２】
１−１：設定画面
１−２：パーソナルコンピュータ（ＰＣ）
１−３：画像形成装置、デジタル複合機、ＭＦＰ
１−４：プリンタドライバの設定画面
２−１：キーワード
２−３：ＦＷキーワード
２−４：ユーザー登録キーワード
２−６：ユーザー登録ＦＷキーワード
２−７：日時チェックキーワード
２−８：日付許容範囲
【図１】
2010122967.tif 000003
【図２】
2010122967.tif 000004
【図３】
2010122967.tif 000005
【図４】
2010122967.tif 000006
【図５】
2010122967.tif 000007
【図６】
2010122967.tif 000008
【図７】
2010122967.tif 000009
【図８】
2010122967.tif 000010
【図９】
2010122967.tif 000011
【図１０】
2010122967.tif 000012
【図１１】
2010122967.tif 000013
【図１２】
2010122967.tif 000014
【図１３】
2010122967.tif 000015