• 变换与透明


    变换类:

    TranslateTransform  ——将坐标系统移动一定的距离,在不同的地方绘制相同的对象

    RotateTransform—— 旋转变换

    ScaleTransform ——放大缩小坐标系统

    SkewTransform ——通过倾斜一定的角度,扭曲坐标系统(正方形----> 平行四边形)

        <Canvas>
            <Rectangle Width="80" Height="10" Stroke="Blue" Fill="Yellow" Canvas.Left="100" Canvas.Top="100"/>
    
            <!--使用绝对坐标 CenterX、Y-->
            <Rectangle Width="80" Height="10" Stroke="Blue" Fill="Yellow" Canvas.Left="100" Canvas.Top="100">
                <Rectangle.RenderTransform>
                    <RotateTransform Angle="25" CenterX="40" CenterY="5"></RotateTransform>
                </Rectangle.RenderTransform>
            </Rectangle>
    
            <!--使用相对坐标 RenderTransformOrigin-->
            <Rectangle Width="80" Height="10" Stroke="Blue" Fill="Yellow" Canvas.Left="100" Canvas.Top="100"
                       RenderTransformOrigin="0.5,0.5">
                <Rectangle.RenderTransform>
                    <RotateTransform Angle="50"></RotateTransform>
                </Rectangle.RenderTransform>
            </Rectangle>
        </Canvas>

    RenderTransform (先布局再旋转)与LayoutTransform (先旋转再布局)

        <StackPanel Margin="5" Background="LightYellow">
            <StackPanel Margin="25" Background="AliceBlue">
                <Button Padding="5" HorizontalAlignment="Left" Content="I'm ratated 35 degrees">
                    <Button.RenderTransform >                    <!--<Button.RenderTransform 先布局再旋转>-->
                            <RotateTransform Angle="35" CenterX="35" CenterY="5"></RotateTransform>
                    </Button.RenderTransform>
                </Button>
                <Button Padding="5" HorizontalAlignment="Left" Content="I'm not"/>
            </StackPanel>
    
            <StackPanel Margin="25" Background="AliceBlue">
                <Button Padding="5" HorizontalAlignment="Left" Content="I'm ratated 35 degrees">
                    <Button.LayoutTransform >
                        <!--<Button.LayoutTransform  先旋转再布局>-->
                        <RotateTransform Angle="35" CenterX="35" CenterY="5"></RotateTransform>
                    </Button.LayoutTransform>
                </Button>
                <Button Padding="5" HorizontalAlignment="Left" Content="I'm not"/>
            </StackPanel>
        
        </StackPanel>

    透明:

    1. Opacity="0.4"
    2. Background="#A0FF0000"     前两个字符表示 透明度,FF 表示完全不透明
     <StackPanel Margin="25" Background="#A0FF0000" >   <!--前两个字符表示 透明度,FF 表示完全不透明-->
                <!--<StackPanel.Background>
                    <ImageBrush ImageSource="/Demo.WPFLearning;component/Assets/SplashScreen/photo.jpeg" Opacity="0.4"/>
                </StackPanel.Background>-->
     </StackPanel>

    透明掩码:  (映射不了??)

           <Grid>
                <Grid.RowDefinitions>
                    <RowDefinition/>
                    <RowDefinition/>
                </Grid.RowDefinitions>
                <TextBox Name="txt" FontSize="30" >Here is some reflected text</TextBox>
                <Rectangle Grid.Row="1" RenderTransformOrigin="1,0.5" >
                    <Rectangle.Fill>
                        <VisualBrush Visual="{Binding ElementName=txt}"></VisualBrush>
                    </Rectangle.Fill>
                    <Rectangle.OpacityMask>
                        <LinearGradientBrush StartPoint="0,0" EndPoint="0,1">
                            <GradientStop Offset="0.3" Color="Transparent"/>
                            <GradientStop Offset="1" Color="DarkViolet"/>
                        </LinearGradientBrush>
                    </Rectangle.OpacityMask>
                    <Rectangle.RenderTransform>
                        <ScaleTransform ScaleY="-1"></ScaleTransform>
                    </Rectangle.RenderTransform>
                </Rectangle>
            </Grid>
  • 相关阅读:
    MVC身份验证及权限管理
    EasyPR--开发详解
    ASP.NET 安全认证
    将Excel导入到数据中
    ExtJS 4 树
    ExtJS 4 表单
    ExtJS 4 Grids 详解
    ExtJS 4 类系统
    第4章 类型基础 -- 4.1 所有类型都从System.Object派生
    随滚动条浮动的链接块层
  • 原文地址:https://www.cnblogs.com/codinghard/p/15708573.html
Copyright © 2020-2023  润新知