Let's write β

プログラミング中にできたことか、思ったこととか

VisualWorksでセピアフィルタ

画像をセピア化

filter: anImage

	| newImage |
	newImage := anImage copyEmpty.
	anImage pixelsDo: 
			[:x :y |
			| pxColor Red Green Blue newPxColor |
			pxColor := anImage valueAtPoint: x @ y.
			Red := (pxColor red) * 240 / 255.
			Green := (pxColor green) * 200 / 255.
			Blue := (pxColor blue) * 148 / 255.
			newPxColor := ColorValue red: Red green: Green blue: Blue.
			newImage atPoint: x @ y put: (anImage palette indexOfPaintNearest: newPxColor)].
	^newImage