草庐IT

tkinter-canvas

全部标签

c# - 如何在 WPF Canvas 上绘制矩形

我正在尝试在Canvas上绘制一个Rectangle,如下所示:System.Windows.Shapes.Rectanglerect;rect=newSystem.Windows.Shapes.Rectangle();rect.Stroke=newSolidColorBrush(Colors.Black);rect.Fill=newSolidColorBrush(Colors.Black);rect.Width=200;rect.Height=200;Canvas.SetLeft(rect,0);Canvas.SetTop(rect,0);front_canvas.Children.

c# - OnMouseMove 不会在 WPF 中的 Canvas 上触发

我已经完成了自定义图表控件,我想在光标后绘制一个简单的十字。该图表作为Canvas上的PolyLine实现,我正在绘制两条线,在Canvas的OnMouseMove事件中更改它们的坐标。令人惊讶的是,当MainGUI线程空闲时,事件仅每10秒左右调用一次(UI完全响应,如果我暂停应用程序,主线程位于AppmainForm.ShowDialog()).关于如何找到发生这种情况的原因的任何想法?我使用OnMouseMove或PreviewOnMouseMove获得了相同的性能。编辑:这就是我画十字的方式(无论如何,如果我在OnMouseMove上放置一个断点,它只会不时停止)。XAML:C

c# - 如何将 UserControl 拖到 Canvas 中

我有一个Canvas,用户可以在其中添加包含表单的UserControl子类。用户应该能够在Canvas周围拖动这些UserControl。使用WPF执行此操作的最佳做​​法是什么? 最佳答案 这是在silverlight中完成的,而不是在WPF中完成的,但它的工作原理应该是一样的。在控件上创建两个私有(private)属性:protectedboolisDragging;privatePointclickPosition;然后在控件的构造函数中附加一些事件处理程序:this.MouseLeftButtonDown+=newMous

c# - 获取屏幕空间中的 UnityEngine.UI.Images 位置并计算归一化偏移量(在覆盖 Canvas 内)

手头的问题:简化GivenanUnityEngine.Ui.ImageHowdoesonefindtheX,Ypositionofanormalisedoffset(like0.4,0.3fromthetopleft)insidethatimageinScreenSpaceunitslike400,300我想我需要找到左上角的ScreenSpace值然后通过以像素表示的实际大小比率来了解图像的渲染总大小缩放归一化偏移量。图1:图2显示了要使用的normalisedOffsets图2:So,inprecis,IneedtofindtheoffsetinScreenSpacepixelso

c# - 如何在 WPF 中指定 Canvas 上椭圆形状的位置?

我正在以编程方式创建椭圆形状,但我找不到任何指定其位置的属性。Lines具有X1、Y1、X2、Y2,但在椭圆形状上没有中心、位置、X、Y等。我该怎么做? 最佳答案 将形状放在屏幕上的任意位置可能应该在Canvas面板中完成(请参阅@phoog的回复)。但是,如果您将其放置在Grid或其他面板中,则始终可以修改Margin属性以将其放置在您想要的位置。如果您想通过指定中心点而不是椭圆的左上角来这样做,您可以这样做:EllipseCreateEllipse(doublewidth,doubleheight,doubledesiredCe

c# - 删除所有添加到 Canvas 的图像

在C#(在WFP中)是否有可能移除(删除)添加到Canvas的所有图像(子图像)? 最佳答案 你的意思是你只想删除所有的子元素吗?canvas.Children.Clear();看起来它应该完成这项工作。编辑:如果您只想删除Image元素,您可以使用:varimages=canvas.Children.OfType().ToList();foreach(varimageinimages){canvas.Children.Remove(image);}虽然这假设所有图像都是直接子元素-如果您想删除其他元素下的Image元素,它会变得更

c# - WPF Canvas 缩放/变换以适合

我重新发布了这个问题,因为我上次没有得到太多回应,希望稍微重新措辞可能会有所帮助......本质上,我想做的是创建一个数据绑定(bind)Canvas,它将自动缩放其内容以“填充”可用空间。有点像缩放以适应操作。不幸的是,我的WPF技能还不是很强,我正在努力弄清楚如何完成这最后一部分。我遵循了一些数据绑定(bind)示例来绑定(bind)Canvas,但不确定它是否错误并阻碍了我。我目前有两个基本问题,具体取决于我尝试解决解决方案的方式:我不知道怎么做Canvas自动重新缩放如果可能的话,通过XAML使用转变。我好像不能在后面引用Canvas代码,我猜是因为它的一部分ItemsCont

javascript - 为什么我的 Canvas 在转换为图像后变为空白?

我正在尝试转换thispage上的canvas元素使用以下代码片段(例如,在JavaScript控制台中输入)到png:(functionconvertCanvasToImage(canvas){varimage=newImage();image.src=canvas.toDataURL("image/png");returnimage;})($$('canvas')[0]);不幸的是,我得到的png是完全空白的。另请注意,在调整页面大小后,原始Canvas变为空白。为什么canvas变成空白?如何将此canvas转换为png? 最佳答案

javascript - canvg 生成的 Canvas 在视网膜屏幕上模糊

我正在使用Raphael绘制对象,然后使用canvg将其传输到HTMLcanvas元素,以便我可以使用toDataURL将其保存为PNG。但是当我使用canvg时,生成的图像很模糊。例如,下面的代码产生了这个(顶部是raphael,底部是canvg):vartest=Raphael("raph_canvas",50,50);varrect=test.rect(0,0,50,50);rect.attr({fill:'#fff000','fill-opacity':1,'stroke-width':1})window.onload=function(){varcanvas_svg=test

javascript - 使用 putImageData 从 Canvas 上的像素数组绘制图像

我正在开发一个可以加密图像并在Canvas上重绘解密图像的项目。由于我对编码和编程还很陌生,我目前在重绘解密图像数据时遇到问题,它是R、G、B、A形式的像素阵列。我认为这可以通过简单地将数据放入ctx.putImageData(imgd,0,0);但是firebug告诉我这个值没有实现imagedata的接口(interface)。我已经发布了整个数组here.图片宽160像素,高120像素。有什么方法可以重新格式化数组,使其可以在Canvas上绘制吗? 最佳答案 使用Uint8可以更快:varcanvas=document.cre