Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# UWP中图纸的最小划分是多少?_C#_.net_Uwp_Drawing_Shape - Fatal编程技术网

C# UWP中图纸的最小划分是多少?

C# UWP中图纸的最小划分是多少?,c#,.net,uwp,drawing,shape,C#,.net,Uwp,Drawing,Shape,我有一个关于UWP中形状绘制的问题。例如,在UWP中创建一个矩形,并将其添加到屏幕上的画布中。假设我们有一个小尺寸为10x5的矩形。将其添加到画布,并在屏幕上正确显示。然后,使用标准屏幕变换组合变换放大,但不更改矩形的大小,只更改比例: 好的,现在我们有一个10x5大小的矩形,放大50-150倍。矩形的宽度和高度接受两个值,因此假设我将矩形的大小更改为10.1x5,但矩形的大小不会按比例更改 这是一个录制的gif:矩形的起始宽度约为11.704,我使用在视频中看不到的鼠标从右侧更改宽度,因此最后

我有一个关于UWP中形状绘制的问题。例如,在UWP中创建一个矩形,并将其添加到屏幕上的画布中。假设我们有一个小尺寸为10x5的矩形。将其添加到画布,并在屏幕上正确显示。然后,使用标准屏幕变换组合变换放大,但不更改矩形的大小,只更改比例:

好的,现在我们有一个10x5大小的矩形,放大50-150倍。矩形的宽度和高度接受两个值,因此假设我将矩形的大小更改为10.1x5,但矩形的大小不会按比例更改

这是一个录制的gif:矩形的起始宽度约为11.704,我使用在视频中看不到的鼠标从右侧更改宽度,因此最后它的宽度约为4,但通常矩形的大小应线性改变。我在调试器中查看了它,计算出的值实际上在改变11.704->11.389->10.898->…,但它不会改变图形上的宽度

起初,它看起来像UWP形状会将元素的宽度转换为int,但当我在调试器中查看它时,它更像是一个近似值,当宽度小于0.6时,形状根本不可见,当>0.6时,它突然显示,但它的宽度约为1.2。因此,我的假设是,在UWP中绘制形状时,最小分割为1.2


改变比例而不改变大小是另一种选择,但我很好奇在UWP中绘制的背后是什么。如果这很重要,我已经在1920x1080的屏幕分辨率上进行了测试。

您可能遇到了布局舍入问题。在包含矩形的画布上,关闭布局舍入,如下所示:

<Canvas UseLayoutRounding="False">
   <Rectangle/>
</Canvas>

首先,这里关于复合变换的相关代码是什么,如何更改比例?缩放X或Y或两者?第二,但它不会改变图纸上的宽度。这是什么意思?请提供一些相关代码。