Tag: 绘图

C#ToolStrip是透明的,但边框仍然可见?

我在C#应用程序中有一个ToolStrip,我将背景颜色设置为Transparent。 这揭示了底层forms的颜色,但遗憾的是ToolStrip边框仍然可见。 我已经实现了一个自定义渲染器,并覆盖了DrawBoarder方法,不绘制任何东西,但这似乎也适用于所有包含的按钮(即下拉按钮上的菜单也没有边框绘制)。 所以我被卡住了。 绘制透明整个ToolStrip但保留按钮的最佳方法是什么?

渐变面板在最小化时显示红叉,然后恢复

我不知道为什么会这样,但我创建了下面的代码,它是一个渐变面板,然后面板停靠在屏幕的左边。 当窗体重新resize时,它会正确显示,但是如果最小化窗体然后恢复它,则会得到一个大的红色X而不是渐变。 谁能发现错误? using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Drawing.Drawing2D; using System.Text; using System.Windows.Forms; public class GradientPanel : Panel { private Color ColorA = Color.LightBlue; private Color ColorB = Color.Red; private LinearGradientMode GradientFillStyle = LinearGradientMode.ForwardDiagonal; private Brush gradientBrush; public Color colourStart { get { return ColorA; } set { ColorA […]

如何在OnRender中重绘或刷新?

我想动态画画。 以下代码显示了我的OnRender。 我正在我的程序中的某个地方设置DrawItem,我需要它。 但是当我调用DrawItem =5; 我该怎么称呼,以便OnRender被调用? protected override void OnRender(DrawingContext drawingContext) { switch (DrawItem) { case 1: //Draw Item break; case 2: //Draw Item break; case 3: //Draw Item break; case 4: //Draw Item break; case 5: //Draw Item break; } base.OnRender(drawingContext) } public int DrawItem { get; set; }

如何关闭WPF形状中的抗锯齿?

我使用以下方法绘制矩形: 但是应用了抗锯齿function。 有没有办法把它关掉? 我希望它清晰明了。

在canvas上绘制东西

我如何在C#for Windows Phone的Canvas上绘制一些东西? 好的,让我更清楚一点。 假设用户在canvas上用386,43点击他的手指。 (canvas是768乘480) 我希望我的应用程序能够通过在canvas上放置一个红点386,43来做出响应。 我以前没有使用Canvas的经验。 如果这个问题太复杂而无法在一个问题中解答(可能是这个问题), 请通过Canvas和Drawing文章给我链接到其他网站。

C#:绘制自己的条形图

我试图通过C#绘制一个简单的条形图,但我从未尝试过使用Graphics和Drawing命名空间。 我想过生成一个“开始”和“结束”图形,然后以某种方式重复一个图像(显示“长度”),但我不知道如何做到这一点。 如果你能指出我正确的方向和/或你是否有示例代码来执行此操作,我会非常高兴。

C#用3点绘制圆弧

我需要使用GraphicsPath绘制弧并具有初始,中值和最终点。 弧必须传递它们。 我试过.DrawCurve和.DrawBezier但结果并不完全是弧形。 我能做什么? 解: 经过几个小时的代码编写后,我设法用这个算法绘制了我想要的东西(给出3点a,b,c和一个GraphicsPath路径): double d = 2 * (aX – cX) * (cY – bY) + 2 * (bX – cX) * (aY – cY); double m1 = (Math.Pow(aX, 2) – Math.Pow(cX, 2) + Math.Pow(aY, 2) – Math.Pow(cY, 2)); double m2 = (Math.Pow(cX, 2) – Math.Pow(bX, 2) + Math.Pow(cY, 2) – Math.Pow(bY, […]

如何以编程方式将文本添加到位图图像? WPF

我正在使用Kinect传感器通过将video输入设置为位图源来显示图像上的video,如下所示。 但我的问题是如何将图像添加到图像/位图,例如分数计数器,我在下面添加了一张图片来展示我想要实现的目标。 void myKinect_ColorFrameReady(object sender, ColorImageFrameReadyEventArgs e) { using (ColorImageFrame colorFrame = e.OpenColorImageFrame()) { if (colorFrame == null) return; byte[] colorData = new byte[colorFrame.PixelDataLength]; colorFrame.CopyPixelDataTo(colorData); KinectVideo.Source = BitmapSource.Create(colorFrame.Width, colorFrame.Height, 96, 96, PixelFormats.Bgr32, null, colorData, colorFrame.Width * colorFrame.BytesPerPixel); } }

画一条平行线

我有x1,y1和x2,y2,形成一个线段。 如何得到另一条线x3,y3-x4,y4,它与第一条线平行,如图所示。 我可以简单地将n添加到x1和x2以获得平行线,但它不是我想要的。 我希望线条在图片中平行。

如何用较小的正方形/矩形填充正方形?

在我工作的办公室里,我们不允许在墙上画画,所以我决定画出正方形和长方形,将一些漂亮的布料贴在墙上,并将它们排列在墙上。 我正在尝试编写一个方法,它将采用我的输入尺寸(9’x 8’8“)和最小/最大尺寸(1’x 3’,2’,4’等)并生成随机模式填充墙壁的正方形和矩形。我尝试手工完成这个,但我对我得到的布局感到不满意,每次我想“随机化”布局需要大约35分钟。