コンテンツにスキップ

Graphics

RGBImageFilterでアイコンの色調を変更

Section titled “RGBImageFilterでアイコンの色調を変更”
RGBImageFilterでアイコンの色調を変更

RatingLabel

RGBImageFilterで色調を変更したアイコンの用意し、評価用コンポーネントを作成します。

GeneralPathなどで星型図形を作成する

Section titled “GeneralPathなどで星型図形を作成する”
GeneralPathなどで星型図形を作成する

GeneralPath

GeneralPathなどを使って星型の図形をパネルに描画したり、アイコンを作成します。

PathIteratorからSVGを生成

PathIterator

ShapeからPathIteratorを取得し、このPathをSVGに変換します。

JPanelにマウスで自由曲線を描画

Section titled “JPanelにマウスで自由曲線を描画”
JPanelにマウスで自由曲線を描画

PaintPanel

マウスをドラッグしてパネル上に自由曲線を描画します。

ColorConvertOpで画像をグレースケールに変換

Section titled “ColorConvertOpで画像をグレースケールに変換”
ColorConvertOpで画像をグレースケールに変換

ColorConvertOp

ColorConvertOpを使って画像をグレースケールに変換します。

MediaTrackerで画像のサイズを取得

Section titled “MediaTrackerで画像のサイズを取得”
MediaTrackerで画像のサイズを取得

MediaTracker

MediaTrackerを使って画像ファイルからイメージの幅と高さを取得します。

Timerでアニメーションするアイコンを作成

Section titled “Timerでアニメーションするアイコンを作成”
Timerでアニメーションするアイコンを作成

AnimeIcon

javax.swing.Timerを使って、アニメーションするアイコンを作成します。

MouseWheelで画像のズームイン・アウト表示

Section titled “MouseWheelで画像のズームイン・アウト表示”
MouseWheelで画像のズームイン・アウト表示

Zoom

マウスホイールなどで画像をズームイン、ズームアウトします。

Fontを回転する

TransformedShape

Fontから文字のアウトラインを取得し、その中心をアンカーポイントに設定して回転します。

JPEGファイルのコメントを取り出す

Section titled “JPEGファイルのコメントを取り出す”
JPEGファイルのコメントを取り出す

IIOMetadata

JPEGファイルからコメントなどのメタデータをXML形式で取り出してJTreeに表示します。

Shapeの反転

HorizontalFlip

AffineTransformで図形や画像を反転して表示します。

AffineTransformOpで画像を反転する

AffineTransformOp

AffineTransformOpなどを使って、画像の上下反転、左右反転を行います。

BasicStrokeで点線を作成

DashedLine

破線パターンの配列からBasicStrokeを作成し、これを描画します。

JTextAreaの背景に画像を表示

CentredBackgroundBorder

JTextAreaなどのコンポーネントの背景に、Borderを使って中心揃えした画像を表示します。

TexturePaintを使って背景に画像を表示

Section titled “TexturePaintを使って背景に画像を表示”
TexturePaintを使って背景に画像を表示

TexturePaint

TexturePaintを使用して背景にタイル状に画像を貼り付けます。

JPanelの背景に画像を並べる

BackgroundImage

JPanelの背景に画像をタイル状に並べて表示します。

Separatorのグラデーション

Gradient

GradientPaintを使ったグラデーションで、徐々に背景色に溶け込んでいくJSeparatorを作成します。

RandomDissolveで表示を切り替え

RandomDissolve

RandomDissolve効果で表示する画像を切り替えます。

JComponentの形状を変更する

MoveNonRectangularImage

マウスカーソルに反応するコンポーネントの領域をJLabelに設定した画像アイコンの不透明領域に合わせて変更します。

Mouseで画像を移動、回転

MouseDrivenImageRotation

画像をマウスのドラッグで任意の位置に移動、回転します。

PixelGrabberで画像を配列として取得し編集、書出し

Section titled “PixelGrabberで画像を配列として取得し編集、書出し”
PixelGrabberで画像を配列として取得し編集、書出し

PixelGrabber

画像の配列を取り出すPixelGrabberを生成して、角を透過色で塗りつぶします。

MemoryImageSourceで配列から画像を生成

Section titled “MemoryImageSourceで配列から画像を生成”
MemoryImageSourceで配列から画像を生成

MemoryImageSource

マウスのドラッグに応じて線を描画、消しゴムで消去する機能を実装します。

JSliderのスタイルを変更する

GradientTrackSlider

JSliderのトラックとノブを透明にし、値を半透明の色で描画します。

JProgressBarにUIを設定してインジケータの色を変更

Section titled “JProgressBarにUIを設定してインジケータの色を変更”
JProgressBarにUIを設定してインジケータの色を変更

GradientPalletProgressBar

JProgressBarのインジケータの色を進行に応じてパレットから取得した色に変更します。

Fontのアウトラインを取得して文字列の内部を修飾する

Section titled “Fontのアウトラインを取得して文字列の内部を修飾する”
Fontのアウトラインを取得して文字列の内部を修飾する

LineSplittingLabel

クリップを設定することで描画範囲を制限し、文字列の内部を異なる色で修飾します。

Iconを回転する

RotatedIcon

画像ファイルから90、180、270度回転したIconを作成します。

Iconを生成する

DragHereIcon

Iconインタフェースから固定サイズのアイコンを作成します。

JRootPaneの背景として画像を表示

Section titled “JRootPaneの背景として画像を表示”
JRootPaneの背景として画像を表示

RootPaneBackground

JRootPaneの背景として画像を表示しています。

AnimatedGifからフレーム画像を抽出する

Section titled “AnimatedGifからフレーム画像を抽出する”
AnimatedGifからフレーム画像を抽出する

ExtractFramesFromAnimatedGif

AnimatedGIFから各フレームの画像を抽出します。

JLayerを使ってJProgressBarの色相を変更する

Section titled “JLayerを使ってJProgressBarの色相を変更する”
JLayerを使ってJProgressBarの色相を変更する

ColorChannelSwapFilter

JLayerを使ってJProgressBarの色相を緑から赤に変更します。

FlatteningPathIteratorでShape上の点を取得する

Section titled “FlatteningPathIteratorでShape上の点を取得する”
FlatteningPathIteratorでShape上の点を取得する

FlatteningPathIterator

FlatteningPathIteratorを使って平坦化されたShape上の座標点を取得、描画します。

JButtonに9分割した画像を使用する

Section titled “JButtonに9分割した画像を使用する”
JButtonに9分割した画像を使用する

NineSliceScalingButton

JButtonを拡大縮小しても四隅などのサイズが変更しないようにように9分割した画像を使用します。

ConvolveOpでコンポーネントにぼかしを入れる

Section titled “ConvolveOpでコンポーネントにぼかしを入れる”
ConvolveOpでコンポーネントにぼかしを入れる

BlurButton

ConvolveOpを使って、使用不可状態のJButtonにぼかしを入れます。

JPanelに表示した画像のズームとスクロール

Section titled “JPanelに表示した画像のズームとスクロール”
JPanelに表示した画像のズームとスクロール

ZoomingAndPanning

JPanelに表示した画像にAffineTransformによる変換を適用して、マウスを使った拡大・縮小・移動を実行します。

WritableRasterからDataBufferを取得して画像の比較

Section titled “WritableRasterからDataBufferを取得して画像の比較”
WritableRasterからDataBufferを取得して画像の比較

ComparisonDifferenceImages

2つの画像からそれぞれピクセル配列を取得して比較を行い、完全に一致するピクセルのアルファ値を下げることで違いを強調表示します。

JEditorPaneに読み込んだHTMLを画像に変換する

Section titled “JEditorPaneに読み込んだHTMLを画像に変換する”
JEditorPaneに読み込んだHTMLを画像に変換する

LoadsSynchronously

JEditorPaneに画像付きのHTMLを読み込み、描画が完了した段階で全体のスクリーンショットを撮る方法をテストします。

JScrollPane内に配置したJPanelをマウスで拡大、縮小、移動する

Section titled “JScrollPane内に配置したJPanelをマウスで拡大、縮小、移動する”
JScrollPane内に配置したJPanelをマウスで拡大、縮小、移動する

ZoomAndPanPanel

JScrollPane内に配置したJPanelをマウスホイールを使った拡大縮小とスクロールバーを使った表示領域の移動が可能になるように設定します。

JSplitPaneに画像を重ねて表示し差分を比較する

Section titled “JSplitPaneに画像を重ねて表示し差分を比較する”
JSplitPaneに画像を重ねて表示し差分を比較する

ImageComparisonSplitPane

JSplitPaneに加工前の画像と加工後の画像を重ねて表示し、Dividerで表示範囲を変更してその差分を確認します。

ImageIOでAnimatedGifファイルを生成する

Section titled “ImageIOでAnimatedGifファイルを生成する”
ImageIOでAnimatedGifファイルを生成する

CreateAnimatedGif

ImageIOを使用してAnimatedGifを生成し、これを画像ファイルとして書き出します。

JLabelで文字列のあふれをフェードアウト効果に変更する

Section titled “JLabelで文字列のあふれをフェードアウト効果に変更する”
JLabelで文字列のあふれをフェードアウト効果に変更する

TextOverflowFadeLabel

JLabelなどで文字列があふれる場合、デフォルトの省略記号…ではなく、フェードアウト効果を適用して端付近の文字を透明表示します。

Windowの縁をソフトクリッピングでなめらかにする

Section titled “Windowの縁をソフトクリッピングでなめらかにする”
Windowの縁をソフトクリッピングでなめらかにする

SoftClippedWindow

Windowの形を図形で切り抜きした場合に生じる縁のジャギーをソフトクリッピング効果でなめらかに変更します。

JButtonのホバーエフェクトを円放射状グラデーションで表現する

Section titled “JButtonのホバーエフェクトを円放射状グラデーションで表現する”
JButtonのホバーエフェクトを円放射状グラデーションで表現する

RadialGradientButton

JButtonのホバーエフェクトとして円放射状グラデーションのアニメーションを実行します。

JListにGIF画像のカラーパレットを表示する

Section titled “JListにGIF画像のカラーパレットを表示する”
JListにGIF画像のカラーパレットを表示する

IndexColorPalette

JListを使用してGIF画像のカラーパレットと透過色を一覧表示します。

JPanelに色相環を描画する

ColorWheel

JPanelに明度を最大値に固定した色相環を描画します。

JScrollBar上にマウスカーソルが入ったらその幅を拡張する

Section titled “JScrollBar上にマウスカーソルが入ったらその幅を拡張する”
JScrollBar上にマウスカーソルが入ったらその幅を拡張する

ChangeScrollBarWidthOnHover

JScrollBar上へのマウスカーソルの出入りをJLayerで取得してその幅を拡大・縮小します。

JPanelに矢印付きの直線を描画する

Section titled “JPanelに矢印付きの直線を描画する”
JPanelに矢印付きの直線を描画する

ArrowLines

JPanel上にPath2Dを使用して作成した矢印付きの直線を描画します。

Iconを四分円ずつ回転して表示する

Section titled “Iconを四分円ずつ回転して表示する”
Iconを四分円ずつ回転して表示する

QuadrantRotateIcon

Iconを90度ずつ回転してJLabelに配置します。

GraphicsオブジェクトをXORモードに設定してピクセルの色をXOR変更色と現在の色とで反転して描画する

Section titled “GraphicsオブジェクトをXORモードに設定してピクセルの色をXOR変更色と現在の色とで反転して描画する”
GraphicsオブジェクトをXORモードに設定してピクセルの色をXOR変更色と現在の色とで反転して描画する

XORMode

Graphicsの論理ピクセル操作をXORモードで実行するように指定して、XOR変更色と現在の色のXORで生成したマスクでピクセルの色を再度XOR反転して描画します。

LinearGradientPaintで角丸図形から作成したBorderを描画する

Section titled “LinearGradientPaintで角丸図形から作成したBorderを描画する”
LinearGradientPaintで角丸図形から作成したBorderを描画する

RoundGradientBorder

EmptyBorderをオーバーライドしてその余白に角丸図形を配置し、LinearGradientPaintで塗りつぶします。

JLabelのテキストで背景画像を切り抜いて表示する

Section titled “JLabelのテキストで背景画像を切り抜いて表示する”
JLabelのテキストで背景画像を切り抜いて表示する

KnockoutTextLabel

JLabelに描画した背景画像をテキストの図形で切り抜いたように表示します。

Shapeから取得したPathIteratorに沿って図形を移動する

Section titled “Shapeから取得したPathIteratorに沿って図形を移動する”
Shapeから取得したPathIteratorに沿って図形を移動する

MotionPathAnimation

Shapeから取得したPathIteratorに沿って図形が移動するアニメーションをJPanel上に描画します。

JLabel上に表示した画像のクリックした位置の色を取得する

Section titled “JLabel上に表示した画像のクリックした位置の色を取得する”
JLabel上に表示した画像のクリックした位置の色を取得する

ColorPicker

JLabelにIconとして画像を表示し、その画像をマウスでクリックした位置の色を取得します。

Robotを使用してスクリーンショットを取得する

Section titled “Robotを使用してスクリーンショットを取得する”
Robotを使用してスクリーンショットを取得する

ScreenCapture

Robotでスクリーンショット画像を取得し、背景画像として描画することでJFrameを半透明に見せかけます。

GlyphVectorで作成した5段階評価の結果をラベルに描画する

Section titled “GlyphVectorで作成した5段階評価の結果をラベルに描画する”
GlyphVectorで作成した5段階評価の結果をラベルに描画する

FiveStarRatingLabel

GlyphVectorを使用して5段階評価の★のアウトラインを作成し、その内部を評価値の小数点一位まで塗りつぶします。

AffineTransformを使用してアナログ時計の文字盤に数字を配置する

Section titled “AffineTransformを使用してアナログ時計の文字盤に数字を配置する”
AffineTransformを使用してアナログ時計の文字盤に数字を配置する

ClockWithArabicOrRomanNumerals

AffineTransformを使用してアナログ時計の文字盤にアラビア数字やローマ数字を配置します。

AffineTransformを使用してアラビア数字を回転して時計盤に配置する

Section titled “AffineTransformを使用してアラビア数字を回転して時計盤に配置する”
AffineTransformを使用してアラビア数字を回転して時計盤に配置する

ArabicClockFace

AffineTransformを使用して時計盤の上半分と下半分で異なる回転でアラビア数字を配置します。

JPanelに正六面体ワイヤーフレームを投影変換して描画し、マウスドラッグして空間内で回転する

Section titled “JPanelに正六面体ワイヤーフレームを投影変換して描画し、マウスドラッグして空間内で回転する”
JPanelに正六面体ワイヤーフレームを投影変換して描画し、マウスドラッグして空間内で回転する

PerspectiveCube

JPanelに正六面体ワイヤーフレームを投影変換で描画し、マウスドラッグして各頂点を変換して空間内で回転します。

AffineTransformを使用してPath2Dを変換し、7セグメントデジタル時計の数字を作成する

Section titled “AffineTransformを使用してPath2Dを変換し、7セグメントデジタル時計の数字を作成する”
AffineTransformを使用してPath2Dを変換し、7セグメントデジタル時計の数字を作成する

SevenSegmentDigitalClock

AffineTransformを使用してPath2Dを変換、組み合わせて7セグメントデジタル時計用の数字を作成します。

DebugGraphicsを使用してJComponentの描画をデバッグする

Section titled “DebugGraphicsを使用してJComponentの描画をデバッグする”
DebugGraphicsを使用してJComponentの描画をデバッグする

DebugGraphics

GraphicsのサブクラスであるDebugGraphicsを使用してJComponentの描画をデバッグします。

JMenuItemの選択ロールオーバーをラウンド矩形で描画する

Section titled “JMenuItemの選択ロールオーバーをラウンド矩形で描画する”
JMenuItemの選択ロールオーバーをラウンド矩形で描画する

RoundedSelectionMenuItem

JMenuItemの選択ロールオーバーを矩形ではなくラウンド矩形で描画するよう設定します。

Path2Dで指定した隅を丸めたランウド矩形図形を作成する

Section titled “Path2Dで指定した隅を丸めたランウド矩形図形を作成する”
Path2Dで指定した隅を丸めたランウド矩形図形を作成する

RoundingSpecificCorners

Path2Dを使用して指定した隅のみをベジェ曲線で丸めたランウド矩形図形を作成します。

JTreeの選択領域描画をラウンド矩形に変更する

Section titled “JTreeの選択領域描画をラウンド矩形に変更する”
JTreeの選択領域描画をラウンド矩形に変更する

RoundedSelectionTree

JTreeの選択を行全体に拡張し、その隅を丸めてラウンド矩形で描画します。

JListで作成したカレンダーのセル選択領域を角丸で描画する

Section titled “JListで作成したカレンダーのセル選択領域を角丸で描画する”
JListで作成したカレンダーのセル選択領域を角丸で描画する

RoundedSelectionListCalendar

JListで作成したカレンダーでセルを複数選択した領域のすべての角を丸めて描画します。

BufferedImageOpで画像にモザイク処理を適用する

Section titled “BufferedImageOpで画像にモザイク処理を適用する”
BufferedImageOpで画像にモザイク処理を適用する

MosaicImageFilter

BufferedImageOpを実装するモザイクフィルタを作成してBufferedImageにブロックモザイクを適用します。

JTreeのノード選択で生成された直角多角形の角を丸める

Section titled “JTreeのノード選択で生成された直角多角形の角を丸める”
JTreeのノード選択で生成された直角多角形の角を丸める

FlatTreeNodeRoundedCornerSelection

JTreeのノード選択で生成された直角多角形の角を尖点などが発生しないよう平坦化してから丸めます。

Shape上に文字列を配置する

TextOnPath

Path2Dなどの曲線上に添うよう文字列を移動・回転して配置します。

Colorを明るめ、暗めにパーセント単位で変換する

Section titled “Colorを明るめ、暗めにパーセント単位で変換する”
Colorを明るめ、暗めにパーセント単位で変換する

TintsAndShadesColors

JColorChooserで選択したColorを指定したパーセントで明るめたり、暗めてカラーパレットを生成します。

JSeparatorの両端をフェードアウト効果で描画する

Section titled “JSeparatorの両端をフェードアウト効果で描画する”
JSeparatorの両端をフェードアウト効果で描画する

GradientFadeOutSeparator

JSeparatorの描画にRadialGradientPaintを使用してその両端がフェードアウトするよう描画します。

MouseEventから取得したマウスボタンのクリック状態を視覚化する

Section titled “MouseEventから取得したマウスボタンのクリック状態を視覚化する”
MouseEventから取得したマウスボタンのクリック状態を視覚化する

MouseClickVisualizer

MouseEventから各マウスボタンのクリック状態を取得し、図形を組み合わせて作成したマウス型のIcon上に描画することで視覚化します。

JButtonの左右が重なるレイアウトでアバターグループを作成する

Section titled “JButtonの左右が重なるレイアウトでアバターグループを作成する”
JButtonの左右が重なるレイアウトでアバターグループを作成する

Avatars

JButtonに円形の切り抜きアイコンを設定し、これらの左右がデフォルトでは重なり、マウスオーバー時に水平方向に拡大するようレイアウトされたアバターグループを作成します。

JComponentに垂直配置した数字のカウントアップアニメーションを実行する

Section titled “JComponentに垂直配置した数字のカウントアップアニメーションを実行する”
JComponentに垂直配置した数字のカウントアップアニメーションを実行する

AnimatedCounter

JComponentで数字が垂直回転アニメーションするホイールコンポーネントを作成し、これを各桁に組み合わせてカウンターコンポーネントを作成します。