更新日:
Page Property: Shift-JIS, JavaScript
no [English Pages]
[Eng. Home]

Jpn.Home
ツール
プログラミング
落書き
画像
諸々
プリンタ・メモ
擬似解像度
関所
自己紹介
更新情報
リンク

[Back Home] / [サイト表紙へ]
Back Home

Read First / 最初に読んで

プリンタの“擬似解像度”


[モノクロでの擬似解像度] : [高解像度] : [擬似解像度] : [相違点] : [高解像度の実現方法]
[カラーの擬似解像度] : 例1: DeskJet : 例2: MicroDry

[解像度とは ?] || [プリンタの色数] || [フルカラーの解像度] || [DJ720Cの分解能]

このページでは、プリンタのカタログで見かける○○dpi相当あるいは、補間解像度 (enhanced resolution)スムージングとして示される擬似解像度に関して説明します。

1. モノクロプリンタでの擬似解像度 (主に文字に適用)

※dpi = dots per inch

fig.1 : Original Line
Original Line
fig.2 : True 600×600dpi
Monochrome True 600dpi
fig.3 : True 1200×1200dpi
Monochrome True 1200dpi
fig.4 : Enhanced 1200×600dpi
Monochrome Enhanced 1200dpi

1.1. 高解像度

擬似解像度を持たないモノクロプリンタでは、解像度の数値で区切られたマス目にドットを打つか打たないかの2通りで文字や画像を表現します。このため例えばfig.1に示す画像(あるいは文字の一部)を表現するには、fig.2fig.3のようになります。図は用意してありませんが、300dpiプリンタならば、fig.2の4つのドットを1つの大きなドットに置き換えた2つの大きなドットとして表現されることになります。

解像度が低い場合には、表現すべき画像よりもドットが大きいために、元が細い線であっても太く表現されてしまいますし、微妙な画像を表現することもできず、例えば曲線を滑らかに表現することは困難です。

容易に想像が付く通り、解像度を高めればそれらが可能になりますが、それには細かいインク(レーザープリンタなら微粒子トナー)と、制御系の精度が必要となります。結果として高価なものになります。それに、真に解像度を高めるためには、その解像度に見合うだけのデータも必要です。解像度が縦横2倍になれば、データ量は4倍になり、結果として文字や画像の印刷に要する演算や転送の時間も4倍必要になってしまいます。その時間を減らすにはPCのCPUを高機能なものに変更したり、PCとプリンタ間の通信を今以上に高速な物にすることが必要になってしまいます。

単純な高解像度化は、プリンタの価格上昇だけにとどまらず、プリンタを快適に使うためのPC側の設備まで高機能化しなくてはならないことを意味します。高機能の代償としてプリンタが高価になるのはともかく、PC設備まで変更が必要となると難しいものがあります。

1.2. 擬似解像度

擬似解像度は、必要なデータをむやみに増やさず、高い文字・画像品質を得るための解決策の1つです。現在主流の方法は、ハードウェアのベースとしては真の高解像度プリンタとほぼ同程度の装備を持ちつつ、PCからは低解像度データを受け取ることにして、そのデータをプリンタ内部のマイクロプロセッサによって補間(ドットを加えたり間引いたりする処理)する方法です。印刷結果の見苦しい段差を滑らかにするこの手法をスムージングと称します。
※低解像画像に見られる段差を目立たなくする画像処理に、アンチエイリアシングAnti-aliasing)があります。これは段差部分を中間色に置き換える(エッジ部分をぼかす;blur)事によって見た目のギザギザ(ジャギー; jaggy)を無くす手法ですが、小さなドットで補間するのと違ってエッジがぼやけます。(Windows95のPlus!の画面設定にあるスムーズフォント(smooth edges of screen fonts)もこれと同じです)。

例えばスムージング機能(擬似解像度)を備えたレーザープリンタでは、斜めの直線や曲線部分のトナーの付着量と位置をコントロールして横幅あるいは縦幅を1/2〜1/4程度に可変させます(実際のスムージング例1例2)。600×600dpiプリンタで、fig.4のように横方向のドット幅を1/2幅に可変できれば、見かけの解像度は1200×600dpiになります。縦横を1/2にできれば、見かけ上1200×1200dpiです。

この方法ならPC側の演算やデータ転送に負担を掛けずに、見かけの画質を向上させられます。例えばWindows95で文書を印刷する際、文字は通常300dpiで画像展開(レンダリングまたはラスタライズ)されてからプリンタへ送られ、プリンタ内部で600dpiあるいは1200dpi相当に補間されます。結果としてPCの処理は600dpiで処理する時の1/4、1200dpiで処理する時の1/16の処理で済みます。高品質な印字が従来の300dpiプリンタの時と同じ負担で得られるわけです。

1.3. 擬似解像度と真の解像度の相違点

但し、擬似解像度と真の解像度とは別物ですから、用途によっては使えない面があることを、心に留めておくことが必要です。例えば、元の文字・画像に1/1200インチ四方でなら表現できる程度の細かな情報が含まれていた場合、真の1200dpiプリンタならば印刷できます。しかし300dpiのデータを受け取った後に、補間によって1200dpiのデータを作成する場合、プリンタに渡される300dpiデータが生成される段階で細かな情報は失われてしまいます。補間は、周辺のドットを滑らかに結ぶようなデータを生成する事しかできませんから、前後から推測できない線や点を復元することは不可能であり、当然、印刷できません。しかし通常のビジネス文書などは、300dpiのデータで表現できる文字や画像が主ですから、擬似解像度プリンタは優れた選択肢となり得ます。


[補足] PCの処理を増やさずに高解像度化する実例

(1)文字のレンダリングをプリンタで行なう方法 (フォント内蔵プリンタ)

プリンタ側にフォントデータを内蔵しておき、プリンタ側のマイクロプロセッサが、PCから受け取った文字コードを、内蔵フォント情報を元にレンダリングする方法です。 これならばPCとプリンタは文字コードをやり取りするだけで良いため、PC側の処理が極めて少なく、扱うフォントが固定されている場合には極めて快適な印刷が可能です。PC側での文字のレンダリング作業が不要であり、先に触れた高解像度化に伴うPC側の負担がありませんから、真の高解像度プリンタを実現できます
しかし、プリンタが備えていないフォントを使う場合には、PC側で高解像度に見合う処理を負担しなくてはなりません。また、フォント名称が同じでもPC側とプリンタ側とで微妙に字体が異なっている場合には、思った通りのレイアウトで印刷されない場合もあります。またプリンタ側でフォントデータを備えるため、プリンタの価格も高価になりがちです。

(2) フォントを逐次ダウンロードして、プリンタで文字レンダリングする方法 (フォント非内蔵プリンタ)

(1)はPC側の負担を増やすこと無く高解像度画像(特に文字)を生成するのにうってつけのシステムですが、必要なフォントを全てプリンタ側に備えなくてはならないため、どうしても高価になりますし、PC側にあってプリンタ側に無いフォントを使った場合にはPC側の処理が発生してしまいます。これを解決するために、印刷に必要なフォントデータを必要に応じて、その都度PCから受け取るようにする方法です。実際の印刷時には文字コードだけをやり取りすれば良く、PC側でのレンダリングが不要なので(1)の方法並みに快適な印刷ができます。最初からフォントを内蔵しないためプリンタが安価になりますし、どんなフォントであってもPC側にあるフォントなら全て印刷でき、レンダリング処理もプリンタで行なえます。当然PC側とプリンタ側で文字のデザインが異なることもありません。

一見、いいこと尽くめですが、当然(1)に劣る部分もあります。最初にフォントデータの転送が必要であるため、何度もフォントを切り替える場合には全部のフォントをロードするのに必要なメモリを備える必要がありますし、そのメモリが足りない場合にはフォントデータの入れ替えに伴う無駄な通信が増えます。

とはいえ、こちらの方式もPC側の負担がほとんど無いため、真の高解像度プリンタが実現できます。但し、フォントをPCから読み込むためのメモリ、およびレンダリングに必要なメモリを適度に備えておく必要があります。


[To Top] / [ページ先頭へ]

2. カラープリンタでの擬似解像度 (〜dpi相当)

2.1. DeskJetシリーズの場合

fig.5 : True 1200×1200dpi
True 1200dpi
fig.6 : Enhanced 1200×1200dpi
Enhanced 1200dpi

具体的な機種を挙げた方がわかりやすいと思うので、ここではHPのプリンタDeskJet 710C/720C/880C/895Cxi/1120Cに関して説明します。

このプリンタのカタログには1200dpi相当という記載があります。その一方でインクノズルは600dpiという数値も見つかります。また色表現の説明では85ミクロン四方(=1/300インチ四方)にインクを重ねるという記述もあります。
さてこのプリンタの解像度は?といえば、インクを配置するハードウェアの能力は600dpi (dots per inch) ですが、85ミクロン四方を画素(pixel; ピクセル)としてインクを配置するため、解像度は300ppi (pixels per inch) です(dpiとppiの違いに注意)。PCから受け取る画像データも300ppiです。

具体的には、
(1)文字の場合、PC側で300×300dpiのデータを生成し、プリンタ側でエコノ・ノーマルのそれぞれのモードに対して300×300dpi、600×600dpiのデータに補間し直します。ベストモードの場合は、PC側で直に600×600dpiのデータを生成します。
(2)画像の場合、PC側では常に300×300dpiのデータを用意し、プリンタ側でエコノ・ノーマル・ベストそれぞれに対して300×300dpi、600×300dpi、600×600dpiに相当するデータに補間し直します。

これのどこが1200dpi相当なのかについて考察してみます。1つはインクのサイズが1/1200インチであることが理由でしょう。もう1つは色の表現数から逆算した値なのか……?(後者は今一つ怪しい)

このプリンタは600dpiの能力がありますが、噴射するインクのサイズは1/600インチではなく1/1200インチサイズです。そのためfig.6に示すように、インク1滴は1/1200インチ四方のマス目に収まります(fig.6はあくまでインクサイズから考えたインク噴出可能数が明確になるようにしただけの図であり、実際に16マスとして扱っているか不明です。16マスあるとした方が考えやすいというだけです)。
しかしヘッドおよび用紙の最小移動間隔は1/600インチであるため、同じ色(例えばシアン)は1/600インチ離れた位置にしか落とせません。そのため、fig.5のTrue 1200dpiのように1/1200インチ間隔で自由にインクを落とす能力はありません。
(但し、カタログやWeb上で入手できる文書などを見ると、光沢紙の場合には同じ色を最大16回(普通紙で8回)落とすという記述もあるので、ヘッドの動作速度とインク吐出周波数さえ上手く制御すれば、1/600インチ四方のエリアに2〜4回落とせるのかもしれません。)

次に色の表現数を検討してみます。[プリンタの色数:1.2 表現可能な色の数(実際値)と同じ検討を、従来型のTrue 600dpi C/M/Y(/Bk)プリンタに当てはめてみます。インクの体積は720dpiで約20plですから600dpiプリンタならば20×(72/60)3で約35plでしょう。用紙の1/600インチ四方のインク吸収量は40plですから、2滴落とすともう許容値を越えてしまいます。
この場合の色表現数は、インク無し/C/M/Y (/Bk)の4 (5)値です。
これを1/300インチ四方のエリアを画素とした色の表現数に換算すると、4 (5)値の表現のできる1/600インチ四方のドットを4つのエリアに重複配置する組合せですから、35 (70)値です。

これに対してDeskJetの場合は、10plのインクを用いるため、1/600インチ四方には4滴インクを落とすことが可能です。
1/600インチ四方での色表現数は、4色から4/3/2/1/0滴を選ぶ組合せ(あるいは0/1滴を4種類重ねる順列組合せ)なので、4C44C34C24C14C0(=24)の16値です。
しかし、実際にはBkインクだけは35plなのでC/M/Y/Bk全部を落とすと65plとなり40plに収まりません。40plに収めるためには…C/M/Yの各1滴による組合せ+Bkの1滴だけとなりますから、23+1で9値です。

これを1/300インチ四方のエリアを画素とした色の表現数に換算すると、1/300インチ四方には160plのインク吸収能力があるので、CMYインクは合計で0〜12滴、あるいはBkは全部で0〜4滴落とせるのですが……カタログやWeb、その他の資料を見ても今一つインクの重ねあわせ方法が判然としません。

とりあえず、検討した結果(65kB; やや重め)を別ページに記しておきました。その結果、実解像度より小さなインク粒を使った上で多重噴射する方式だと、用紙のインク許容量までは幾らでも組合わせられるため、1500値程度まで出せる可能性があることだけは分かりましたが、実際的な値が分かりません。結局ドライバの作り方次第なのですが、カタログの「250値以上」という記述からみて、多分Bk無しで125値以上、Bk含めて250〜270値程度が妥当なのでしょう…。

なお、Bkを使うのは普通紙と光沢でないインクジェット用紙の場合であり、特に普通紙の場合にはインク吸収限界が100plなので、実際の表現色数は少なくなります。

1つの色を1マスにしか落とせない従来型CMY(Bk)プリンタで、1滴が10plでTrue 1200dpiだとして、C/M/Y(/Bk)の3 (4)色を使う場合の計算もしてみると…1/1200インチ四方に落とせるインクは1滴だけなので、1/600インチ四方のエリアでの色表現は8 (16)値。1/300インチ四方エリアでは、インク無し/C/M/Y(/Bk)の4 (5)値を16マスに重複配置する組合せなので、969 (4,845)値となります。

色数の実際値 (CMYBk)1/600インチ(Bk無し)1/300インチ(Bk無し)
真 600dpi (35pl)※5 (4)70 (35)
擬似 1200dpi (10pl; Bk 35pl)9 (8)約250 ? (約125 ?)
max 1,557 ? (max 817 ?)
真 1200dpi (全部 10pl)※16 (8)4,845 (969)
※同じ色を重ねない従来型として

結果として、微粒子インクを多重噴射する方式では、実解像度以上のプリンタに相当する能力を得られることが分かります。これは見方を変えれば、擬似的に高解像度化したことに相当するわけです。……やや説得力が無い… ^-^;

§1.2で触れた通り、この方式だとPC側の負荷が少なくて済みます。例えばTrue1200dpiとしてデータを要求するプリンタに対しては、例えその印刷結果(あるいはドライバによる画素単位での再サンプリング)が300ppiになるとしても、アプリケーションは1200dpiデータとして出力しなくてはなりません。それに対してDJ720Cのように元々プリンタの画素単位300dpi(ppi)でデータを要求するプリンタの場合は、アプリケーションは300dpiデータを出力すれば済みます。演算量が少ないため、若干低速なCPUでも負担なく処理できる方式、高画質出力でもPCが解放されるまでの時間が短くて済む方式と言えます。

[余談] この結果から考えれば、例えばフォトインクを使ったり、超微粒子インクを採用した、従来型でないTrue 1200dpiプリンタならば、はるかに高い色のバリエーションが出せる可能性があるわけで、安易に1200dpi相当というのはイマイチな気もします。(もちろん超微粒子にすると印刷時間が実用にならないなどの問題があるので、その時点での現実的なプリンタの比較としてはまぁ許せるのかもしれませんが)。
でも、相当などという訳の分からない用語を使うより、数値を出すことを止めた米HPと同じく、PhotoRET II for photo quality風な記述をする方が、製品の特徴を適切に示す上、ウソがない点で良い気がします。

検討終了後にGraphilのサイトを覗いてみたら、Graphil World「?に答えます」プリンタの仕様や技術についての「Q. 1200dpi相当って何?」に

600dpiに、HP独自のドットレイヤリング技術により、通常のピクセル当たり8色(CMYKRGB+紙の白)表現の1200dpiと同等の色表現ができるということで1200dpi相当です
と書かれていました。結局、基本解像度で8色が表示できる事を根拠にしていただけのようです。まぁ確かにその点は事実なんですけど…。

なお例えば1200dpiのプリンタならば、1/1200インチでの表現能力を問うべきではないか?という疑問があるかもしれません。しかし、「カラープリンタの“解像度”とは?」「フルカラー印刷に必要な画素サイズ」で触れている通り、画像印刷、特に写真画質の印刷では色表現が重要であり、概ね300dpi程度を画素とせざるを得ないのが現状です。それは1440×720dpiの解像度を誇るプリンタにさえ当てはまります。ですから300dpi程度での比較をすることは、不当ではなく妥当であると思います。


[To Top] / [ページ先頭へ]

2.2. MDシリーズの場合

fig.7 : Enhanced 2400dpi
Enhanced 2400dpi

擬似解像度の他の手法の例として、ALPSのMD-5000を例に挙げます。

このプリンタはVD(ドットサイズ可変)モードにおいて、2400dpi相当との表現がなされていますが、物理的な能力は600dpiです。ドットサイズを1/600インチ四方から1/2400インチ四方まで可変する事によって、1/600インチ四方での各色の階調数 16を得ていますが、True 2400dpiではないので、1/2400インチ間隔でドットを自由に配置することはできません(§1.3およびプリンタの色数:1. カラープリンタでの色表現を参照のこと)。配置間隔はあくまでも1/600インチです(fig.7)。
これはレーザープリンタでも行われている方法です。

ちなみに、熱転写モードでの文字印刷の場合は、fig.4に示す通りの横方向のスムージングを行ないます。但し、これはあくまで文字印刷に限られた擬似解像度であり、画像印刷には適用されません。

なお、このようにドットサイズが可変できるプリンタでの線画の表現能力は、dpi = ppi (or lpi)も成り立ち、線画の場合は600lpiの能力があります。写真画像の場合は複数のドットをまとめて1画素として扱うので dpi = ppi は成り立たず、150ppi〜200ppiです。


[To Top] / [ページ先頭へ]
※このページは、私個人がプリンタに関して考えていることをWeb上に公開しているだけであり、内容の正当性に関する保障はしません
[Jpn.Home] | [ツール] | [プログラミング] | [落書き] | [画像] | [諸々] ::プリンタ・メモ :::擬似解像度 | [関所] | [自己紹介] | [リンク]