zoukankan      html  css  js  c++  java
  • Brush

    默认情况下,如果绘制ImageBrush区域的纵横比与图像不同,则拉伸其图像以完全填充要绘制的区域,从而扭曲图像。 可以通过Stretch将属性的Fill默认值更改为NoneUniform更改此行为。

     <Canvas
          Height="200" Width="300">
          <Canvas.Background>
            <ImageBrush ImageSource="sampleImages\Waterlilies.jpg" />
          </Canvas.Background>
        </Canvas>

     

    DrawingBrush使您能够使用形状、文本、图像和视频绘制区域。 下面是不同类型图形对象的列表。

    <Button Content="A Button">
      <Button.Background>
        <DrawingBrush>
          <DrawingBrush.Drawing>
            <GeometryDrawing Brush="LightBlue">
              <GeometryDrawing.Geometry>
                <GeometryGroup>
                  <EllipseGeometry RadiusX="12.5" RadiusY="25" Center="25,50" />
                  <EllipseGeometry RadiusX="12.5" RadiusY="25" Center="50,50" />
                  <EllipseGeometry RadiusX="12.5" RadiusY="25" Center="75,50" />
                </GeometryGroup>
              </GeometryDrawing.Geometry>
              <GeometryDrawing.Pen>
                <Pen Thickness="1" Brush="Gray" />
              </GeometryDrawing.Pen>
            </GeometryDrawing>
          </DrawingBrush.Drawing>
        </DrawingBrush>
      </Button.Background>
    </Button>

    TileBrush可对图像、绘图或视觉对象绘制区域的方式进行大量控制。 例如,不使用单个拉伸图像绘制区域,而是使用创建图案的一系列平铺图像绘制区域。

    Viewport确定基本磁贴的大小和位置,ViewportUnits该属性确定是使用绝对坐标还是相对坐标

    在下面的示例中,使用一幅图像来创建一个宽度和高度均为 50% 的图块。 基本图块位于输出区域的 (0,0) 处。

    <Rectangle
     Width="50" Height="100">
      <Rectangle.Fill>
        <!-- Paints an area with 4 tiles. -->
        <ImageBrush ImageSource="sampleImages\cherries_larger.jpg"
          Viewport="0,0,0.5,0.5"
          ViewportUnits="RelativeToBoundingBox" 
          TileMode="Tile" />
      </Rectangle.Fill>
    </Rectangle>

    下一个示例将 ImageBrush的切片设置为 25 x 25 个独立于设备的像素。

    <Rectangle
     Width="50" Height="100">
      <Rectangle.Fill>
        <!-- Paints an area with 25 x 25 tiles. -->
        <ImageBrush ImageSource="sampleImages\cherries_larger.jpg"
          Viewport="0,0,25,25"
          ViewportUnits="Absolute" 
          TileMode="Tile" />
      </Rectangle.Fill>
    </Rectangle>
  • 相关阅读:
    (40)C#windows服务控制
    (6)C#事务处理
    (1)sqlite基础
    bzoj 2456 mode
    bzoj 2763 [JLOI2011]飞行路线
    bzoj1010[HNOI2008] 玩具装箱toy
    bzoj1034 [ZJOI2008]泡泡堂BNB
    [bzoj1059] [ZJOI2007] 矩阵游戏 (二分图匹配)
    [bzoj1066] [SCOI2007] 蜥蜴
    bzoj1072 [SCOI2007]排列perm
  • 原文地址:https://www.cnblogs.com/yetsen/p/13573633.html
Copyright © 2011-2022 走看看