{"id":347,"date":"2007-05-15T14:26:00","date_gmt":"2007-05-15T14:26:00","guid":{"rendered":"http:\/\/www.gisdeveloper.co.kr\/?p=347"},"modified":"2017-01-29T13:15:47","modified_gmt":"2017-01-29T04:15:47","slug":"2d-graphics-effect-part-1","status":"publish","type":"post","link":"http:\/\/www.gisdeveloper.co.kr\/?p=347","title":{"rendered":"Brush for WPF"},"content":{"rendered":"<p>WPF\uc758 2D Graphic\uc758 \ud6a8\uacfc \uc911\uc5d0 \ucc44\uc6c0(Fill) \ud6a8\uacfc\uc5d0 \ub300\ud55c \uac83\uc774\ub2e4. WPF\uc758 \ucc44\uc6c0\uc740 Brush\ub77c\ub294 \uac1c\ub150\uc73c\ub85c \uc774\ub8e8\uc5b4\uc9c0\uba70 \ub2e4\uc74c\uacfc \uac19\uc740 \uc885\ub958\uac00 \uc788\ub2e4.<\/p>\n<ul>\n<li>SolidColorBrush\n<li>LinearGradientBrush\n<li>RadialGradientBrush\n<li>ImageBrush\n<li>DrawingBrush\n<li>VisualBrush<\/li>\n<\/ul>\n<p>SolidBrush\ub294 Geometry\uc5d0 \ub300\ud574 \ub2e8\uc0c9\uc73c\ub85c \uce60\ud558\ub294 \ube0c\ub7ec\uc26c\uc774\uace0 LinearGradientBrush\ub294 Gradient \uc0c9\uc0c1\uc744 \uc120\ud615\uc73c\ub85c \uc0dd\uc131\ud558\uc5ec \ucc44\uc6cc\uc900\ub2e4. \ub610\ud55c RadialGradientBrush\ub294 \ubc29\uc0ac\ud615\uc73c\ub85c Gradient \uc0c9\uc0c1\uc744 \uc0dd\uc131\ud558\uc5ec \ucc44\uc6cc\uc8fc\uba70 ImageBrush\ub294 Image\ub97c \uc774\uc6a9\ud574 \uc6d0\ud558\ub294 Geometry\uc758 \uc548\uc744 \ucc44\uc6cc\uc900\ub2e4. \uadf8\ub9ac\uace0 DrawingBrush\ub294 \ucc44\uc6b0\uae30 \uc704\ud55c \ub0b4\uc6a9\uc744 \uc0ac\uc6a9\uc790\uac00 \uc9c1\uc811 \ub610 \ub2e4\ub978 Geometry\ub97c \uc774\uc6a9\ud558\uc5ec \ub9cc\ub4e4\uc5b4 \ucc44\uc6b8 \uc218 \uc788\ub2e4.&nbsp; \ub9c8\uc9c0\ub9c9\uc73c\ub85c VisualBrush\ub294 Control \ub4f1\uacfc \uac19\uc740 \ub0b4\uc6a9(Content)\ub97c \uc774\uc6a9\ud558\uc5ec \uadf8 UI\uc758 \uc678\ud615\uc744 Geometry\uc5d0 \ucc44\uc6b8 \uc218 \uc788\ub294 \ube0c\ub7ec\uc26c\uc774\ub2e4. \ucc38\uace0\ub85c \ube0c\ub7ec\uc26c\ub294 2\ucc28\uc6d0\ubfd0\ub9cc\uc774 \uc544\ub2c8\ub77c 3\ucc28\uc6d0\uc5d0\uc11c\ub3c4 \uc0ac\uc6a9\ud560 \uc218 \uc788\ub2e4.<\/p>\n<p>\uadf8\ub7fc 6\uac1c\uc758 \ube0c\ub7ec\uc26c\uc5d0 \ub300\ud574 \ud558\ub098 \ud558\ub098 \uc0b4\ud3b4 \ubcf4\uae30\ub85c \ud558\uc790.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.gisdeveloper.co.kr\/wp-content\/uploads\/1\/1110015471.png\" class=\"aligncenter\" width=\"229\" height=\"103\" alt=\"\" \/><\/p>\n<pre>  <StackPanel Orientation=\"Horizontal\" \r\n              VerticalAlignment=\"Top\" Margin=\"10,10,10,10\">\r\n    <Rectangle Width=\"50\" Height=\"50\" Stroke=\"White\" StrokeThickness=\"1\">\r\n      <Rectangle.Fill>\r\n        <SolidColorBrush Color=\"Blue\" Opacity=\"1.0\" \/>\r\n      <\/Rectangle.Fill>\r\n    <\/Rectangle>\r\n\r\n    <Rectangle Width=\"50\" Height=\"50\" Stroke=\"White\" StrokeThickness=\"1\">\r\n      <Rectangle.Fill>\r\n        <SolidColorBrush Color=\"Blue\" Opacity=\"0.8\" \/>\r\n      <\/Rectangle.Fill>\r\n    <\/Rectangle>\r\n\r\n    <Rectangle Width=\"50\" Height=\"50\" Stroke=\"White\" StrokeThickness=\"1\">\r\n      <Rectangle.Fill>\r\n        <SolidColorBrush Color=\"Blue\" Opacity=\"0.6\" \/>\r\n      <\/Rectangle.Fill>\r\n    <\/Rectangle>\r\n\r\n    <Rectangle Width=\"50\" Height=\"50\" Stroke=\"White\" StrokeThickness=\"1\">\r\n      <Rectangle.Fill>\r\n        <SolidColorBrush Color=\"Blue\" Opacity=\"0.4\" \/>\r\n      <\/Rectangle.Fill>\r\n    <\/Rectangle>    \r\n  <\/StackPanel><\/pre>\n<p>Geometry\ub294 Rectangle\uc774\uace0 \ucd1d 4\uac1c\ub97c \ud654\uba74\uc0c1\uc5d0 \ub80c\ub354\ub9c1\ud588\uc73c\uba70 Geometry\uc758 Fill\uc744 \uc704\ud574 SolidColorBrush\ub97c \uc0ac\uc6a9\ud558\uc600\ub2e4. \ucc44\uc6c0\uc0c9\uc758 \uc9c0\uc815\uc744 \uc704\ud574 Color \uc18d\uc131\uc744 \uc0ac\uc6a9\ud558\uc600\uace0 \ud22c\uba85\ub3c4\ub97c \uc704\ud574 Opacity\ub97c \uc0ac\uc6a9\ud558\uc600\ub2e4.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.gisdeveloper.co.kr\/wp-content\/uploads\/1\/1300605225.png\" class=\"aligncenter\" width=\"189\" height=\"270\" alt=\"\" \/><\/p>\n<pre>  <StackPanel Orientation=\"Vertical\" VerticalAlignment=\"Top\" Margin=\"10,10,10,10\">\r\n   <Rectangle Width=\"150\" Height=\"150\" Grid.Row=\"0\" Margin=\"2,2,2,2\">\r\n     <Rectangle.Fill>\r\n       <LinearGradientBrush>\r\n         <GradientStop Color=\"Yellow\" Offset=\"0.0\" \/>\r\n         <GradientStop Color=\"Orange\" Offset=\"0.5\" \/>\r\n         <GradientStop Color=\"Red\" Offset=\"1.0\" \/>\r\n       <\/LinearGradientBrush>\r\n     <\/Rectangle.Fill>\r\n   <\/Rectangle>\r\n\r\n   <Rectangle Width=\"150\" Height=\"150\" Margin=\"2,2,2,2\">\r\n     <Rectangle.Fill>\r\n       <LinearGradientBrush>\r\n         <GradientStop Color=\"Blue\" Offset=\"0.0\" \/>\r\n         <GradientStop Color=\"Purple\" Offset=\"1.0\" \/>\r\n       <\/LinearGradientBrush>\r\n     <\/Rectangle.Fill>\r\n   <\/Rectangle>\r\n\r\n   <Rectangle Width=\"150\" Height=\"150\" Margin=\"2,2,2,2\">\r\n     <Rectangle.Fill>\r\n       <LinearGradientBrush>\r\n         <GradientStop Color=\"Purple\" Offset=\"0.0\" \/>\r\n         <GradientStop Color=\"BlueViolet\" Offset=\"0.5\" \/>\r\n         <GradientStop Color=\"White\" Offset=\"1.0\" \/>\r\n       <\/LinearGradientBrush>\r\n     <\/Rectangle.Fill>\r\n   <\/Rectangle>\r\n\r\n   <Rectangle Width=\"150\" Height=\"150\" Margin=\"2,2,2,2\">\r\n     <Rectangle.Fill>\r\n       <LinearGradientBrush>\r\n         <GradientStop Color=\"Gold\" Offset=\"0.0\" \/>\r\n         <GradientStop Color=\"Red\" Offset=\"0.5\" \/>\r\n         <GradientStop Color=\"Orange\" Offset=\"1.0\" \/>\r\n       <\/LinearGradientBrush>\r\n     <\/Rectangle.Fill>\r\n   <\/Rectangle>\r\n  <\/StackPanel><\/pre>\n<p>\ub9c8\ucc2c\uac00\uc9c0\ub85c Rectangle Geometry\ub97c \uc774\uc6a9\ud558\uc5ec \ud654\uba74\uc0c1\uc5d0 \ucd1d 4\uac1c\ub97c \uadf8\ub838\ub2e4. \uc5ec\ub7ec\uac1c\uc758 GradientStop Element\ub97c \uc0ac\uc6a9\ud574\uc11c \uc120\ud615\uc73c\ub85c \uc0dd\uc131\ud560 Gradient \uc0c9\uc0c1\uc744 \ub2e8\uacc4\uc801\uc73c\ub85c \uc9c0\uc815\ud560 \uc218 \uc788\ub2e4.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.gisdeveloper.co.kr\/wp-content\/uploads\/1\/1090853246.png\" class=\"aligncenter\" width=\"372\" height=\"142\" alt=\"\" \/><\/p>\n<pre>  <StackPanel Orientation=\"Horizontal\" \r\n              VerticalAlignment=\"Top\" Margin=\"10,10,10,10\">\r\n  <Rectangle Width=\"150\" Height=\"150\" Grid.Row=\"0\" Margin=\"2,2,2,2\">\r\n     <Rectangle.Fill>\r\n       <RadialGradientBrush GradientOrigin=\"0.75,0.25\">\r\n         <GradientStop Color=\"Yellow\" Offset=\"0.0\" \/>\r\n         <GradientStop Color=\"Orange\" Offset=\"0.5\" \/>\r\n         <GradientStop Color=\"Red\" Offset=\"1.0\" \/>\r\n       <\/RadialGradientBrush>\r\n     <\/Rectangle.Fill>\r\n  <\/Rectangle>\r\n\r\n  <Ellipse Width=\"150\" Height=\"150\" Margin=\"2,2,2,2\">\r\n     <Ellipse.Fill>\r\n       <RadialGradientBrush GradientOrigin=\"0.75,0.25\">\r\n         <GradientStop Color=\"White\" Offset=\"0.0\" \/>\r\n         <GradientStop Color=\"MediumBlue\" Offset=\"0.5\" \/>\r\n         <GradientStop Color=\"Black\" Offset=\"1.0\" \/>\r\n       <\/RadialGradientBrush>\r\n     <\/Ellipse.Fill>\r\n  <\/Ellipse>\r\n  <Ellipse Width=\"150\" Height=\"150\" Margin=\"2,2,2,2\">\r\n     <Ellipse.Fill>\r\n       <RadialGradientBrush GradientOrigin=\"0.75,0.25\">\r\n         <GradientStop Color=\"AliceBlue\" Offset=\"0.0\" \/>\r\n         <GradientStop Color=\"Purple\" Offset=\"0.5\" \/>\r\n         <GradientStop Color=\"#330033\" Offset=\"1.0\" \/>\r\n       <\/RadialGradientBrush>\r\n     <\/Ellipse.Fill>\r\n  <\/Ellipse>\r\n  <Ellipse Width=\"150\" Height=\"150\" Margin=\"2,2,2,2\">\r\n     <Ellipse.Fill>\r\n       <RadialGradientBrush GradientOrigin=\"0.75,0.25\">\r\n         <GradientStop Color=\"Yellow\" Offset=\"0.0\" \/>\r\n         <GradientStop Color=\"Orange\" Offset=\"0.5\" \/>\r\n         <GradientStop Color=\"Red\" Offset=\"1.0\" \/>\r\n       <\/RadialGradientBrush>\r\n     <\/Ellipse.Fill>\r\n  <\/Ellipse>\r\n  <\/StackPanel><\/pre>\n<p>\ubc29\uc0ac\ud615\uc758 Gradient \uc0c9\uc0c1\uc744 \uc0dd\uc131\ud558\ub294 \uac83\uc73c\ub85c RadialGradientBrush Element\ub97c \uc0ac\uc6a9\ud558\uc600\uace0 \ubc29\uc0ac\ud615\uc758 \uc911\uc2ec\uc744 \uc9c0\uc815\ud558\uae30 \uc704\ud574 GradientOrigin\uc744 \uc0ac\uc6a9\ud558\uc600\ub2e4. GradientOrigin\uc758 \ubc24\uc704\ub294 0~1 \uc0ac\uc774\uc758 \uc2e4\uc218\uac12\uc774\ub2e4. LinearGradientBrush\uc640 \ub9c8\ucc2c\uac00\uc9c0\ub85c \ub2e4\uc218\uc758 GradientStop\uc744 \uc0ac\uc6a9\ud558\uc5ec \uc0c9\uc0c1\uacfc Offset \uc704\uce58\ub97c \uc9c0\uc815\ud560 \uc218 \uc788\ub2e4. \ud6a8\uacfc\uc801\uc778 \ubc29\uc0ac\ud615\uc758 Gradient \uc801\uc6a9\uc744 \uc0b4\ud3b4\ubcf4\uae30 \uc704\ud574 Geometry\ub85c Ellipse\ub97c \uc0ac\uc6a9\ud574\ubcf4\uc558\ub2e4.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.gisdeveloper.co.kr\/wp-content\/uploads\/1\/1091213785.png\" class=\"aligncenter\" width=\"472\" height=\"200\" alt=\"\" \/><\/p>\n<pre>  <StackPanel Orientation=\"Horizontal\" \r\n              VerticalAlignment=\"Top\" Margin=\"10,10,10,10\">\r\n  <Rectangle Width=\"140\" Height=\"140\" Grid.Row=\"0\" \r\n             Margin=\"2,2,2,2\" Stroke=\"Black\">\r\n     <Rectangle.Fill>\r\n       <ImageBrush ImageSource=\"pinkcherries.jpg\"  \/>\r\n     <\/Rectangle.Fill>\r\n  <\/Rectangle>\r\n\r\n  <Rectangle Width=\"140\" Height=\"140\" \r\n             Margin=\"2,2,2,2\" Stroke=\"Black\">\r\n     <Rectangle.Fill>\r\n       <ImageBrush Stretch=\"None\" ImageSource=\"pinkcherries.jpg\"  \/>\r\n     <\/Rectangle.Fill>\r\n  <\/Rectangle>\r\n\r\n  <Rectangle Width=\"70\" Height=\"70\" \r\n             Margin=\"2,2,2,2\" Stroke=\"Black\">\r\n     <Rectangle.Fill>\r\n       <ImageBrush Viewport=\"0,0,25,25\" \r\n                   ViewportUnits=\"Absolute\" TileMode=\"Tile\"\r\n                   ImageSource=\"pinkcherries.jpg\" \/>\r\n     <\/Rectangle.Fill>\r\n  <\/Rectangle>\r\n\r\n  <Rectangle Width=\"70\" Height=\"70\" \r\n             Margin=\"2,2,2,2\" Stroke=\"Black\">\r\n     <Rectangle.Fill>\r\n       <ImageBrush Viewport=\"0,0,10,10\" \r\n                   ViewportUnits=\"Absolute\" TileMode=\"Tile\"\r\n                   ImageSource=\"pinkcherries.jpg\" \/>\r\n     <\/Rectangle.Fill>\r\n  <\/Rectangle><\/pre>\n<p>\uc774\ubbf8\uc9c0\ub97c \uc774\uc6a9\ud558\uc5ec Geometry\ub97c \ucc44\uc6b0\ub294 \uac83\uc73c\ub85c\uc368 Geometry\uc758 \ud06c\uae30\uc5d0 \ub9de\uac8c \uc774\ubbf8\uc9c0\ub97c \ud0a4\uc6b8 \uc218 \ub3c4 \uc788\uace0, \ud0a4\uc6b0\uc9c0 \uc54a\uace0 \uc6d0\ub798 \ud06c\uae30\ub300\ub85c \ucc44\uc6cc \uadf8\ub9b4 \uc218\ub3c4 \uc788\uc73c\uba70, \ud0c0\uc77c\ud615\uc2dd\uc73c\ub85c \ucc44\uc6cc \ub123\uc744 \uc218\ub3c4 \uc788\ub2e4. \uc0ac\uc6a9\ud558\ub294 Element\ub294 ImageBrush\uc774\ub2e4. &nbsp; &nbsp;<br \/>\n&nbsp;<br \/>\n<img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.gisdeveloper.co.kr\/wp-content\/uploads\/1\/1407276932.png\" class=\"aligncenter\" width=\"333\" height=\"130\" alt=\"\" \/><\/p>\n<pre>  <StackPanel Orientation=\"Horizontal\" VerticalAlignment=\"Top\" Margin=\"10,10,10,10\">\r\n  <Rectangle Width=\"150\" Height=\"150\" Margin=\"2,2,2,2\">\r\n     <Rectangle.Fill>\r\n       <DrawingBrush Viewport=\"0,0,0.25,0.25\" TileMode=\"Tile\">\r\n         <DrawingBrush.Drawing>\r\n           <DrawingGroup>\r\n             <GeometryDrawing Brush=\"White\">\r\n               <GeometryDrawing.Geometry>\r\n                 <RectangleGeometry Rect=\"0,0,1,1\" \/>\r\n               <\/GeometryDrawing.Geometry>\r\n             <\/GeometryDrawing>\r\n             <GeometryDrawing Brush=\"Black\"\r\n               Geometry=\"M 0,0 L0,0.5 0.5,0.5 0.5,1 1,1 1,0.5 0.5,0.5 0.5,0\" \/>\r\n           <\/DrawingGroup>\r\n         <\/DrawingBrush.Drawing>\r\n       <\/DrawingBrush>\r\n     <\/Rectangle.Fill>\r\n  <\/Rectangle>\r\n\r\n  <Rectangle Width=\"150\" Height=\"150\" Margin=\"2,2,2,2\">\r\n     <Rectangle.Fill>\r\n       <DrawingBrush Viewport=\"0,0,1,1\" TileMode=\"Tile\">\r\n         <DrawingBrush.Drawing>\r\n           <DrawingGroup>\r\n             <GeometryDrawing Brush=\"Pink\">\r\n               <GeometryDrawing.Geometry>\r\n                 <RectangleGeometry Rect=\"0,0,1,1\" \/>\r\n               <\/GeometryDrawing.Geometry>\r\n             <\/GeometryDrawing>\r\n             <GeometryDrawing>\r\n               <GeometryDrawing.Brush>\r\n                 <ImageBrush ImageSource=\"cherries.jpg\"  \/>\r\n               <\/GeometryDrawing.Brush>\r\n               <GeometryDrawing.Geometry>\r\n                 <RectangleGeometry Rect=\"0,0,0.5,0.5\" \/>\r\n               <\/GeometryDrawing.Geometry>\r\n             <\/GeometryDrawing>\r\n             <GeometryDrawing>\r\n               <GeometryDrawing.Brush>\r\n                 <ImageBrush ImageSource=\"cherries.jpg\"  \/>\r\n               <\/GeometryDrawing.Brush>\r\n               <GeometryDrawing.Geometry>\r\n                 <RectangleGeometry Rect=\"0.5,0.5,0.5,0.5\" \/>\r\n               <\/GeometryDrawing.Geometry>\r\n             <\/GeometryDrawing>\r\n           <\/DrawingGroup>\r\n         <\/DrawingBrush.Drawing>\r\n       <\/DrawingBrush>\r\n     <\/Rectangle.Fill>\r\n  <\/Rectangle>\r\n\r\n  <Rectangle Width=\"150\" Height=\"150\" Margin=\"2,2,2,2\">\r\n     <Rectangle.Fill>\r\n       <DrawingBrush Viewport=\"0,0,10,10\" ViewportUnits=\"Absolute\" TileMode=\"Tile\">\r\n         <DrawingBrush.Drawing>\r\n           <DrawingGroup>\r\n             <GeometryDrawing Brush=\"White\">\r\n               <GeometryDrawing.Geometry>\r\n                 <RectangleGeometry Rect=\"0,0,1,1\" \/>\r\n               <\/GeometryDrawing.Geometry>\r\n             <\/GeometryDrawing>\r\n             <GeometryDrawing Brush=\"Blue\"\r\n               Geometry=\"M 0,0 L 0,1 0.1,1 0.1,0.1 1,0.1 1,0 Z\" \/>\r\n           <\/DrawingGroup>\r\n         <\/DrawingBrush.Drawing>\r\n       <\/DrawingBrush>\r\n     <\/Rectangle.Fill>\r\n  <\/Rectangle>\r\n\r\n  <Rectangle Width=\"150\" Height=\"150\" Margin=\"2,2,2,2\">\r\n     <Rectangle.Fill>\r\n       <DrawingBrush Viewport=\"0,0,1,1\" TileMode=\"Tile\">\r\n         <DrawingBrush.Drawing>\r\n           <DrawingGroup>\r\n             <GeometryDrawing>\r\n               <GeometryDrawing.Geometry>\r\n                 <RectangleGeometry Rect=\"0,0,1,1\" \/>\r\n               <\/GeometryDrawing.Geometry>\r\n               <GeometryDrawing.Brush>\r\n                 <LinearGradientBrush StartPoint=\"0.5,0\" EndPoint=\"0.5,1\">\r\n                   <LinearGradientBrush.GradientStops>\r\n                     <GradientStop Color=\"Blue\" Offset=\"0.0\" \/>\r\n                     <GradientStop Color=\"#9966CC\" Offset=\"0.5\" \/>\r\n                     <GradientStop Color=\"MediumBlue\" Offset=\"1.0\" \/>\r\n                   <\/LinearGradientBrush.GradientStops>\r\n                 <\/LinearGradientBrush>\r\n               <\/GeometryDrawing.Brush>\r\n             <\/GeometryDrawing>\r\n             <GeometryDrawing>\r\n               <GeometryDrawing.Geometry>\r\n                 <RectangleGeometry Rect=\"0,0,1,1\" \/>\r\n               <\/GeometryDrawing.Geometry>\r\n               <GeometryDrawing.Brush>\r\n                 <RadialGradientBrush GradientOrigin=\"0.75,0.25\">\r\n                   <RadialGradientBrush.GradientStops>\r\n                     <GradientStop Color=\"White\" Offset=\"0.0\" \/>\r\n                     <GradientStop Color=\"Transparent\" Offset=\"0.5\" \/>\r\n                     <GradientStop Color=\"Transparent\" Offset=\"0.9\" \/>\r\n                     <GradientStop Color=\"Black\" Offset=\"1.0\" \/>\r\n                   <\/RadialGradientBrush.GradientStops>\r\n                 <\/RadialGradientBrush>\r\n               <\/GeometryDrawing.Brush>\r\n             <\/GeometryDrawing>\r\n           <\/DrawingGroup>\r\n         <\/DrawingBrush.Drawing>\r\n       <\/DrawingBrush>\r\n     <\/Rectangle.Fill>\r\n  <\/Rectangle>\r\n  <\/StackPanel><\/pre>\n<p>Effect\uac00 \uc801\uc6a9\ub41c Geometry \uc790\uccb4\ub97c \ucc44\uc6c0\uc744 \uc704\ud55c \ube0c\ub7ec\uc26c\ub85c\uc368 \uc0ac\uc6a9\ud560 \uc218 \uc788\ub294 DrawingBrush Element\uc758 \uc0ac\uc6a9\uc608\uc774\ub2e4. \uc55e\uc11c \uc0ac\uc6a9\ud588\ub358 \ub2e4\uc591\ud55c Brsuh\ub4e4\uc774 \uc801\uc6a9\ub41c Geometry\uac00 \ub2e4\uc2dc Brush\ub85c\uc368 \uc0ac\uc6a9\ub418\ub294 \uac83\uc744 \uc54c \uc218 \uc788\ub2e4.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.gisdeveloper.co.kr\/wp-content\/uploads\/1\/1038834367.png\" class=\"aligncenter\" width=\"455\" height=\"160\" alt=\"\" \/><\/p>\n<pre>  <StackPanel Orientation=\"Horizontal\" VerticalAlignment=\"Top\" Margin=\"10,10,10,10\">\r\n  <Rectangle Width=\"150\" Height=\"150\" Grid.Row=\"0\" Margin=\"2,2,2,2\">\r\n     <Rectangle.Fill>\r\n       <VisualBrush TileMode=\"Tile\">\r\n         <VisualBrush.Visual>\r\n           <StackPanel>\r\n             <StackPanel.Background>\r\n               <DrawingBrush>\r\n                 <DrawingBrush.Drawing>\r\n                   <GeometryDrawing>\r\n                     <GeometryDrawing.Brush>\r\n                       <RadialGradientBrush>\r\n                         <GradientStop Color=\"MediumBlue\" Offset=\"0.0\" \/>\r\n                         <GradientStop Color=\"White\" Offset=\"1.0\" \/>\r\n                       <\/RadialGradientBrush>\r\n                     <\/GeometryDrawing.Brush>\r\n                     <GeometryDrawing.Geometry>\r\n                       <GeometryGroup>\r\n                         <RectangleGeometry Rect=\"0,0,0.5,0.5\" \/>\r\n                         <RectangleGeometry Rect=\"0.5,0.5,0.5,0.5\" \/>\r\n                       <\/GeometryGroup>\r\n                     <\/GeometryDrawing.Geometry>\r\n                   <\/GeometryDrawing>\r\n                 <\/DrawingBrush.Drawing>\r\n               <\/DrawingBrush>\r\n             <\/StackPanel.Background>\r\n             <TextBlock FontSize=\"10pt\" Margin=\"10\">Hello, World!<\/TextBlock>\r\n           <\/StackPanel>\r\n         <\/VisualBrush.Visual>\r\n       <\/VisualBrush>\r\n     <\/Rectangle.Fill>\r\n  <\/Rectangle>\r\n\r\n  <Rectangle Width=\"150\" Height=\"150\" Margin=\"2,2,2,2\">\r\n     <Rectangle.Fill>\r\n       <VisualBrush Viewport=\"0,0,1,0.25\" TileMode=\"Tile\" Stretch=\"Uniform\">\r\n         <VisualBrush.Visual>\r\n           <StackPanel Background=\"White\">\r\n             <TextBlock FontSize=\"10pt\" Margin=\"1\">Hello, World!<\/TextBlock>\r\n           <\/StackPanel>\r\n         <\/VisualBrush.Visual>\r\n       <\/VisualBrush>\r\n     <\/Rectangle.Fill>\r\n  <\/Rectangle>\r\n\r\n  <Rectangle Width=\"150\" Height=\"150\" Margin=\"2,2,2,2\">\r\n     <Rectangle.Fill>\r\n       <VisualBrush Viewport=\"0,0,1,0.25\" TileMode=\"Tile\" Stretch=\"Uniform\">\r\n         <VisualBrush.Visual>\r\n           <StackPanel Background=\"White\">\r\n             <TextBlock FontSize=\"10pt\" Margin=\"1\">Hello, World!<\/TextBlock>\r\n           <\/StackPanel>\r\n         <\/VisualBrush.Visual>\r\n         <VisualBrush.RelativeTransform>\r\n           <RotateTransform Angle=\"-45\" CenterX=\"0.5\" CenterY=\"0.5\" \/>\r\n         <\/VisualBrush.RelativeTransform>\r\n       <\/VisualBrush>\r\n     <\/Rectangle.Fill>\r\n  <\/Rectangle>\r\n\r\n  <Rectangle Width=\"150\" Height=\"150\" Margin=\"2,2,2,2\">\r\n     <Rectangle.Fill>\r\n       <VisualBrush>\r\n         <VisualBrush.Visual>\r\n           <StackPanel Background=\"White\">\r\n             <Button Margin=\"1\">Button Control<\/Button>\r\n             <Button Margin=\"1\">Another Button<\/Button>\r\n           <\/StackPanel>\r\n         <\/VisualBrush.Visual>\r\n       <\/VisualBrush>\r\n     <\/Rectangle.Fill>\r\n  <\/Rectangle>\r\n  <\/StackPanel><\/pre>\n<p>\ub9c8\uc9c0\ub9c9\uc73c\ub85c \uac00\uc7a5 \uc735\ud1b5\uc131\uc774 \ub6f0\uc5b4\ub09c VisualBrush\uc774\ub2e4. Control\uc740 \ubb3c\ub860\uc774\uac70\ub2c8\uc640 DrawingBrush\uc758 \uae30\ub2a5\uae4c\uc9c0\ub3c4 \ud3ec\ud568\ud560 \uc218 \uc788\ub294 \ube0c\ub7ec\uc26c\ub85c\uc368 3\ucc28\uc6d0\uc73c\ub85c \ub80c\ub354\ub9c1\ub41c \uc7a5\uba74\uae4c\uc9c0\ub3c4 \ub2f4\uc744 \uc218 \uc788\ub294 Brush\uc774\ub2e4. \ub610\ud55c \uc774 \ube0c\ub7ec\uc26c\ub97c \uc774\uc6a9\ud558\uba74 3\ucc28\uc6d0 \uc7a5\uba74\uc5d0\uc11c 2D GUI\ub97c \ud65c\uc6a9\ud560 \uc218 \uc788\uac8c \ud558\ub294 \uac00\uc7a5 \ud654\ub824\ud55c \ube0c\ub7ec\uc26c\uc774\ub2e4.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>WPF\uc758 2D Graphic\uc758 \ud6a8\uacfc \uc911\uc5d0 \ucc44\uc6c0(Fill) \ud6a8\uacfc\uc5d0 \ub300\ud55c \uac83\uc774\ub2e4. WPF\uc758 \ucc44\uc6c0\uc740 Brush\ub77c\ub294 \uac1c\ub150\uc73c\ub85c \uc774\ub8e8\uc5b4\uc9c0\uba70 \ub2e4\uc74c\uacfc \uac19\uc740 \uc885\ub958\uac00 \uc788\ub2e4. SolidColorBrush LinearGradientBrush RadialGradientBrush ImageBrush DrawingBrush VisualBrush SolidBrush\ub294 Geometry\uc5d0 \ub300\ud574 \ub2e8\uc0c9\uc73c\ub85c \uce60\ud558\ub294 \ube0c\ub7ec\uc26c\uc774\uace0 LinearGradientBrush\ub294 Gradient \uc0c9\uc0c1\uc744 \uc120\ud615\uc73c\ub85c \uc0dd\uc131\ud558\uc5ec \ucc44\uc6cc\uc900\ub2e4. \ub610\ud55c RadialGradientBrush\ub294 \ubc29\uc0ac\ud615\uc73c\ub85c Gradient \uc0c9\uc0c1\uc744 \uc0dd\uc131\ud558\uc5ec \ucc44\uc6cc\uc8fc\uba70 ImageBrush\ub294 Image\ub97c \uc774\uc6a9\ud574 \uc6d0\ud558\ub294 Geometry\uc758 \uc548\uc744 \ucc44\uc6cc\uc900\ub2e4. \uadf8\ub9ac\uace0 DrawingBrush\ub294 \ucc44\uc6b0\uae30 \uc704\ud55c \ub0b4\uc6a9\uc744 &hellip; <\/p>\n<p class=\"link-more\"><a href=\"http:\/\/www.gisdeveloper.co.kr\/?p=347\" class=\"more-link\">\ub354 \ubcf4\uae30<span class=\"screen-reader-text\"> &#8220;Brush for WPF&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[20],"tags":[21],"class_list":["post-347","post","type-post","status-publish","format-standard","hentry","category-wpf","tag-wpf"],"_links":{"self":[{"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/posts\/347","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=347"}],"version-history":[{"count":1,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/posts\/347\/revisions"}],"predecessor-version":[{"id":3634,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/posts\/347\/revisions\/3634"}],"wp:attachment":[{"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=347"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=347"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=347"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}