三星手机可以自定义导航栏logo,可以设置成各种形状。之前乐max发给我一套Windows10的logo,后来重置手机就找不到了。今天突发奇想自己去做一套。但是我也不会用ps,ai,也不想去装adobe全家桶,然后我突然想到了可以用visual studio去做,于是开搞。
先在Microsoft Store安装阿迪王开发的character map uwp,然后在segoe MDL2 Assets里找到要用的back和taskview图标,在Hololens MDL2 Assets里找到Windows Logo
接着用visual studio创建一个WPF项目,把这3个logo的路径复制到WPF里,设置大小为48像素,再添加一个按钮并给它点击事件
<Grid ><Grid x:Name="grid" Height="96" Width="96" Background="#00000000"><Path x:Name="path" Width="48" Height="48" Data="F1 M 20 10.625 L 2.441406 10.625 L 10.126953 18.310547 L 9.248047 19.189453 L 0.058594 10 L 9.248047 0.810547 L 10.126953 1.689453 L 2.441406 9.375 L 20 9.375 Z " Fill="Cyan" Stretch="Fill"/></Grid><Button VerticalAlignment="Top" HorizontalAlignment="Right" Height="100" Width="100" Click="Button_Click"/></Grid>
在按钮里的事件就是截图图标然后保存为png图片
private void Button_Click(object sender, RoutedEventArgs e){DrawingVisual tDrawingVisual = new DrawingVisual();using (DrawingContext context = tDrawingVisual.RenderOpen()){VisualBrush tVisualBrush = new VisualBrush(grid);tVisualBrush.Stretch = Stretch.Fill;context.DrawRectangle(tVisualBrush, null, new Rect(0, 0, 96, 96));context.Close();}UpdateLayout();RenderTargetBitmap renderTargetBitmap = new RenderTargetBitmap(96, 96, 96, 96, PixelFormats.Pbgra32);renderTargetBitmap.Render(tDrawingVisual);BitmapEncoder pngBitmapEncoder = new PngBitmapEncoder();pngBitmapEncoder.Frames.Add(BitmapFrame.Create(renderTargetBitmap));using (var stream = File.Create(Environment.CurrentDirectory + "\\Task.png")){pngBitmapEncoder.Save(stream);}}
然后把这三个图标传到手机里设置一下就可以使用了
一款伪Windows10Mobile就诞生了hhhhh