RGBImageFilterで色調を変更したアイコンの用意し、評価用コンポーネントを作成します。
GeneralPathなどを使って星型の図形をパネルに描画したり、アイコンを作成します。
ShapeからPathIteratorを取得し、このPathをSVGに変換します。
マウスをドラッグしてパネル上に自由曲線を描画します。
ColorConvertOpを使って画像をグレースケールに変換します。
MediaTrackerを使って画像ファイルからイメージの幅と高さを取得します。
javax.swing.Timerを使って、アニメーションするアイコンを作成します。
マウスホイールなどで画像をズームイン、ズームアウトします。
Fontから文字のアウトラインを取得し、その中心をアンカーポイントに設定して回転します。
JPEGファイルからコメントなどのメタデータをXML形式で取り出してJTreeに表示します。
AffineTransformで図形や画像を反転して表示します。
AffineTransformOpなどを使って、画像の上下反転、左右反転を行います。
破線パターンの配列からBasicStrokeを作成し、これを描画します。
JTextAreaなどのコンポーネントの背景に、Borderを使って中心揃えした画像を表示します。
TexturePaintを使用して背景にタイル状に画像を貼り付けます。
JPanelの背景に画像をタイル状に並べて表示します。
GradientPaintを使ったグラデーションで、徐々に背景色に溶け込んでいくJSeparatorを作成します。
RandomDissolve効果で表示する画像を切り替えます。
マウスカーソルに反応するコンポーネントの領域をJLabelに設定した画像アイコンの不透明領域に合わせて変更します。
画像をマウスのドラッグで任意の位置に移動、回転します。
画像の配列を取り出すPixelGrabberを生成して、角を透過色で塗りつぶします。
マウスのドラッグに応じて線を描画、消しゴムで消去する機能を実装します。
JSliderのトラックとノブを透明にし、値を半透明の色で描画します。
JProgressBarのインジケータの色を進行に応じてパレットから取得した色に変更します。
クリップを設定することで描画範囲を制限し、文字列の内部を異なる色で修飾します。
画像ファイルから90、180、270度回転したIconを作成します。
Iconインタフェースから固定サイズのアイコンを作成します。
JRootPaneの背景として画像を表示しています。
AnimatedGIFから各フレームの画像を抽出します。
JLayerを使ってJProgressBarの色相を緑から赤に変更します。
FlatteningPathIteratorを使って平坦化されたShape上の座標点を取得、描画します。
JButtonを拡大縮小しても四隅などのサイズが変更しないようにように9分割した画像を使用します。
ConvolveOpを使って、使用不可状態のJButtonにぼかしを入れます。
JPanelに表示した画像にAffineTransformによる変換を適用して、マウスを使った拡大・縮小・移動を実行します。
2つの画像からそれぞれピクセル配列を取得して比較を行い、完全に一致するピクセルのアルファ値を下げることで違いを強調表示します。
JEditorPaneに画像付きのHTMLを読み込み、描画が完了した段階で全体のスクリーンショットを撮る方法をテストします。
JScrollPane内に配置したJPanelをマウスホイールを使った拡大縮小とスクロールバーを使った表示領域の移動が可能になるように設定します。
JSplitPaneに加工前の画像と加工後の画像を重ねて表示し、Dividerで表示範囲を変更してその差分を確認します。
ImageIOを使用してAnimatedGifを生成し、これを画像ファイルとして書き出します。
JLabelなどで文字列があふれる場合、デフォルトの省略記号…ではなく、フェードアウト効果を適用して端付近の文字を透明表示します。
Windowの形を図形で切り抜きした場合に生じる縁のジャギーをソフトクリッピング効果でなめらかに変更します。
JButtonのホバーエフェクトとして円放射状グラデーションのアニメーションを実行します。
JListを使用してGIF画像のカラーパレットと透過色を一覧表示します。
JPanelに明度を最大値に固定した色相環を描画します。
JScrollBar上へのマウスカーソルの出入りをJLayerで取得してその幅を拡大・縮小します。
JPanel上にPath2Dを使用して作成した矢印付きの直線を描画します。
Iconを90度ずつ回転してJLabelに配置します。
Graphicsの論理ピクセル操作をXORモードで実行するように指定して、XOR変更色と現在の色のXORで生成したマスクでピクセルの色を再度XOR反転して描画します。
EmptyBorderをオーバーライドしてその余白に角丸図形を配置し、LinearGradientPaintで塗りつぶします。
JLabelに描画した背景画像をテキストの図形で切り抜いたように表示します。
Shapeから取得したPathIteratorに沿って図形が移動するアニメーションをJPanel上に描画します。
JLabelにIconとして画像を表示し、その画像をマウスでクリックした位置の色を取得します。
Robotでスクリーンショット画像を取得し、背景画像として描画することでJFrameを半透明に見せかけます。
GlyphVectorを使用して5段階評価の★のアウトラインを作成し、その内部を評価値の小数点一位まで塗りつぶします。
AffineTransformを使用してアナログ時計の文字盤にアラビア数字やローマ数字を配置します。
AffineTransformを使用して時計盤の上半分と下半分で異なる回転でアラビア数字を配置します。
JPanelに正六面体ワイヤーフレームを投影変換で描画し、マウスドラッグして各頂点を変換して空間内で回転します。
AffineTransformを使用してPath2Dを変換、組み合わせて7セグメントデジタル時計用の数字を作成します。
GraphicsのサブクラスであるDebugGraphicsを使用してJComponentの描画をデバッグします。
JMenuItemの選択ロールオーバーを矩形ではなくラウンド矩形で描画するよう設定します。
Path2Dを使用して指定した隅のみをベジェ曲線で丸めたランウド矩形図形を作成します。
JTreeの選択を行全体に拡張し、その隅を丸めてラウンド矩形で描画します。
JListで作成したカレンダーでセルを複数選択した領域のすべての角を丸めて描画します。
BufferedImageOpを実装するモザイクフィルタを作成してBufferedImageにブロックモザイクを適用します。
JTreeのノード選択で生成された直角多角形の角を尖点などが発生しないよう平坦化してから丸めます。
Path2Dなどの曲線上に添うよう文字列を移動・回転して配置します。
JColorChooserで選択したColorを指定したパーセントで明るめたり、暗めてカラーパレットを生成します。
JSeparatorの描画にRadialGradientPaintを使用してその両端がフェードアウトするよう描画します。
MouseEventから各マウスボタンのクリック状態を取得し、図形を組み合わせて作成したマウス型のIcon上に描画することで視覚化します。
JButtonに円形の切り抜きアイコンを設定し、これらの左右がデフォルトでは重なり、マウスオーバー時に水平方向に拡大するようレイアウトされたアバターグループを作成します。
JComponentで数字が垂直回転アニメーションするホイールコンポーネントを作成し、これを各桁に組み合わせてカウンターコンポーネントを作成します。