草庐IT

Graphics2D

全部标签

UWP/WinUI3 Win2d PixelShaderEffect 实现GradientMappingEffect (渐变映射滤镜)。

  在上一篇文章UWP/WinUI3Win2dPixelShaderEffect实现ColorPlacementEffect(颜色替换)滤镜。-吃饭/睡觉-博客园(cnblogs.com)中实现了”颜色替换滤镜“,那么本文将制作一个“渐变映射滤镜”。  效果图:       一.渐变映射流程    1.将像素转换成灰度(0~1);    2.将转灰后的像素值跟渐变图进行查找颜色;    3.将查找后的颜色进行替换原有颜色    流程图:           1//定义输入源个数为22#defineD2D_INPUT_COUNT23//将第一张输入源设置为简单采样模式4#defineD2D_IN

UWP/WinUI3 Win2d PixelShaderEffect 实现ColorPlacementEffect (颜色替换) 滤镜。

   在上一篇:UWP/WinUI3PixelShaderEffect实现ThresholdEffect滤镜。-吃饭/睡觉-博客园(cnblogs.com) 已经价绍了如何编写hsls,编译,和使用PixelShaderEffect来实现自定义滤镜效果了,那么本编将介绍如何编写一个“颜色替换滤镜”;    效果图:       一.颜色匹配理论    1.根据指定的颜色和阈值匹配到指定颜色范围的像素。    2.利用hsv颜色模式调整选中像素的色调,饱和度,亮度;//设置输入源数量#defineD2D_INPUT_COUNT1//将输入源0设置为简单采样模式#defineD2D_INPUT0_

UWP/WinUI3 Win2d PixelShaderEffect 实现ColorPlacementEffect (颜色替换) 滤镜。

   在上一篇:UWP/WinUI3PixelShaderEffect实现ThresholdEffect滤镜。-吃饭/睡觉-博客园(cnblogs.com) 已经价绍了如何编写hsls,编译,和使用PixelShaderEffect来实现自定义滤镜效果了,那么本编将介绍如何编写一个“颜色替换滤镜”;    效果图:       一.颜色匹配理论    1.根据指定的颜色和阈值匹配到指定颜色范围的像素。    2.利用hsv颜色模式调整选中像素的色调,饱和度,亮度;//设置输入源数量#defineD2D_INPUT_COUNT1//将输入源0设置为简单采样模式#defineD2D_INPUT0_

Microsoft.Maui.Graphics.Skia 使用 DrawString 绘制文本的坐标问题

本文记录使用Microsoft.Maui.Graphics.Skia的DrawString进行绘制文本,不同的重载方法绘制的文本的坐标不同的问题本文开始之前,预期已经准备好了环境和基础项目,请参阅dotnet控制台使用Microsoft.Maui.Graphics配合Skia进行绘图入门在采用voidDrawString(stringvalue,floatx,floaty,HorizontalAlignmenthorizontalAlignment)方法进行绘制时,文本将在xy坐标开始,作为文本的BaseLine开始绘制。为了方便大家看出来效果,我在坐标点绘制一个矩形和一个文本核心代码如下va

Microsoft.Maui.Graphics.Skia 使用 DrawString 绘制文本的坐标问题

本文记录使用Microsoft.Maui.Graphics.Skia的DrawString进行绘制文本,不同的重载方法绘制的文本的坐标不同的问题本文开始之前,预期已经准备好了环境和基础项目,请参阅dotnet控制台使用Microsoft.Maui.Graphics配合Skia进行绘图入门在采用voidDrawString(stringvalue,floatx,floaty,HorizontalAlignmenthorizontalAlignment)方法进行绘制时,文本将在xy坐标开始,作为文本的BaseLine开始绘制。为了方便大家看出来效果,我在坐标点绘制一个矩形和一个文本核心代码如下va

leetcode 304. Range Sum Query 2D - Immutable 二维区域和检索 - 矩阵不可变(中等)

一、题目大意https://leetcode.cn/problems/range-sum-query-2d-immutable给定一个二维矩阵matrix,以下类型的多个请求:计算其子矩形范围内元素的总和,该子矩阵的左上角为(row1,col1),右下角为(row2,col2)。实现NumMatrix类:NumMatrix(int[][]matrix)给定整数矩阵matrix进行初始化intsumRegion(introw1,intcol1,introw2,intcol2)返回左上角(row1,col1)、右下角(row2,col2)所描述的子矩阵的元素总和。示例1:![img](images

leetcode 304. Range Sum Query 2D - Immutable 二维区域和检索 - 矩阵不可变(中等)

一、题目大意https://leetcode.cn/problems/range-sum-query-2d-immutable给定一个二维矩阵matrix,以下类型的多个请求:计算其子矩形范围内元素的总和,该子矩阵的左上角为(row1,col1),右下角为(row2,col2)。实现NumMatrix类:NumMatrix(int[][]matrix)给定整数矩阵matrix进行初始化intsumRegion(introw1,intcol1,introw2,intcol2)返回左上角(row1,col1)、右下角(row2,col2)所描述的子矩阵的元素总和。示例1:![img](images

leetcode 240. Search a 2D Matrix II 搜索二维矩阵 II(中等)

一、题目大意标签:数组https://leetcode.cn/problems/search-a-2d-matrix-ii编写一个高效的算法来搜索 m x n 矩阵matrix中的一个目标值target。该矩阵具有以下特性:每行的元素从左到右升序排列。每列的元素从上到下升序排列。示例1:输入:matrix=[[1,4,7,11,15],[2,5,8,12,19],[3,6,9,16,22],[10,13,14,17,24],[18,21,23,26,30]],target=5输出:true示例2:输入:matrix=[[1,4,7,11,15],[2,5,8,12,19],[3,6,9,16,

leetcode 240. Search a 2D Matrix II 搜索二维矩阵 II(中等)

一、题目大意标签:数组https://leetcode.cn/problems/search-a-2d-matrix-ii编写一个高效的算法来搜索 m x n 矩阵matrix中的一个目标值target。该矩阵具有以下特性:每行的元素从左到右升序排列。每列的元素从上到下升序排列。示例1:输入:matrix=[[1,4,7,11,15],[2,5,8,12,19],[3,6,9,16,22],[10,13,14,17,24],[18,21,23,26,30]],target=5输出:true示例2:输入:matrix=[[1,4,7,11,15],[2,5,8,12,19],[3,6,9,16,

UWP/WinUI3 Win2d PixelShaderEffect 实现ThresholdEffect 滤镜。

在上一遍文章中已经介绍了PixelShaderEffect用hlsl(着色器)可以实现各种自定义滤镜效果了,本文将用"ThresholdEffect"来讲解如何编写,编译hlsl,然后使用PixelShaderEffect制作自定义滤镜。效果图:  一.hlsl帮助程序介绍  在写hlsl代码前需要简单介绍下“hlsl帮助程序”.通过学习了hlsl帮助程序后我们不需要将hlsl的所有知识都掌握了就可以写一写简单的hlsl代码了。hlsl帮助程序分为两部分,宏定义和函数。  1.宏定义D2D_INPUT_COUNTN纹理输入个数。必须定义D2D_INPUTn_SIMPLE 指定第n个纹理的为简单