モジュール java.desktop
パッケージ java.awt

クラスRenderingHints

java.lang.Object
java.awt.RenderingHints
すべての実装されたインタフェース:
Cloneable, Map<Object,Object>

public class RenderingHints extends Object implements Map<Object,Object>, Cloneable
RenderingHintsクラスは、アプリケーションが、レンダリングおよびイメージ操作サービスを実行するほかのクラスによって使用されるアルゴリズムの選択を入力できるようにする、キーとそれに関連付けられた値のコレクションを定義および管理します。 Graphics2Dクラス、およびBufferedImageOpRasterOpを実装するクラスのすべてで、RenderingHintsキーとそれに関連付けられた値を個別にまたはグループで取得するメソッドや、場合によってはそれらを設定するメソッドを提供します。 これらの実装により描画またはイメージ操作の演算を実行するときは、呼出し元が要求したRenderingHintsの値を調べ、それに応じて使用されるアルゴリズムの能力が最高になるようにアルゴリズムを調整するようにしてください。

これらのキーと値はヒントなので、ある特定の実装で、後述する可能なすべての選択肢をサポートしたり、そのアルゴリズムの選択肢を修正する要求に対応できるようにしたりする必要はありません。 さまざまなヒント・キーの値が相互に作用して、ある状況ではその特定のキーのすべてのバリアントがサポートされる一方で、ほかのキーと関連付けられた値が変更されると実装がより制限される場合もあります。 たとえば一部の実装では、アンチエイリアス・ヒントがオフのときは数種類のディザリングを提供できますが、オンのときはディザリングをほとんど制御できません。 サポートされるキーとヒントの完全なセットは、描画先によって異なる場合があります。これは、ランタイムでは画面やBufferedImageオブジェクトへの描画時、または印刷時に、様々な基本モジュールを使用することがあるためです。

実装では、ヒントを完全に無視してもかまいませんが、要求にできるだけ近い実装アルゴリズムを使用するようにしてください。 関連付けられたヒント・キーに任意の値が使用されるときに特定のアルゴリズムが実装でサポートされる場合、そのヒント・キーの値がそのアルゴリズムを指定する正確な値であるときには、そのようにすることが最低限必要です。

ヒントを制御するために使用されるキーは、すべて関連付けられたRenderingHints.Keyクラスをサブクラス化した特殊な値です。 一般的なヒントの多くはこのクラスの静的定数として後述しますが、すべてを網羅しているわけではありません。 その他のヒントは、ほかのパッケージでKeyクラスをサブクラス化する新しいオブジェクトを定義して、関連する値を定義することにより作成できます。