问题标签 [system.drawing]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
8 回答
12203 浏览

c# - 执行打印预览时如何防止出现“打印进度”对话框

在我的 C# 应用程序中,我试图生成打印预览,但屏幕上没有出现进度对话框。

我相信您可以在实际打印(即不是打印预览)时使用PrintDocument.PrintController来防止这种情况发生,但是在执行打印预览时它似乎不起作用。

我的代码如下:

除了显示打印预览进度对话框之外,打印预览完全按照我的意愿工作。

请问有什么建议吗?

0 投票
1 回答
4696 浏览

c# - 绘制二次曲线

如何使用 C# System.Drawing 命名空间通过 3 个点绘制二次曲线?

0 投票
5 回答
1357 浏览

c# - 在 .NET 中“着色”位图

如果您有一个System.Drawing.Bitmap包含灰度图像的实例,是否有一种内置方法可以在另一种颜色的影响下“着色”它?

例如,如果您有一张咖啡杯的黑白(灰度)图片,并且您想以编程方式创建红色、绿色和紫色版本的单独图像。

0 投票
4 回答
1212 浏览

c# - 在 WinForms 中绘制垂直堆叠的文本

最好使用Graphics对象,如何绘制字符串以使字符仍然正常定向,但垂直堆叠?

0 投票
8 回答
17426 浏览

c# - 用于 ASP.NET 的 System.Drawing 的替代品?

在追踪奇怪的 GDI+ 错误几天后,我偶然发现了MSDN上的这个小宝石:

不支持在 Windows 或 ASP.NET 服务中使用 System.Drawing 命名空间中的类。尝试从这些应用程序类型之一中使用这些类可能会产生意想不到的问题,例如服务性能下降和运行时异常。

我不知道“ASP.NET 服务”在这种情况下是否意味着“Web 应用程序”,但“服务性能下降”当然似乎涵盖了“GDI+ 中发生一般错误”和“内存不足”错误的随机分类我的应用程序抛出 - 读取和写入 JPEG 图像的间歇性、不可重现的错误 - 在许多情况下 - 实际上是由 System.Drawing.Imaging 首先创建的。

所以 - 如果 GDI+ 不能在 Web 应用程序中可靠地读取和写入 JPEG 文件,我应该使用什么来代替?

我希望用户能够上传图像(需要 JPEG,其他格式也不错),可靠地重新采样,并在出现任何问题时显示有用的错误消息。有任何想法吗?WPF 中的 System.Media 命名空间值得考虑吗?

编辑:是的,我知道 GDI+“大部分时间”都在工作。这还不够好,因为当它失败时,它会以一种无法优雅地隔离或恢复的方式这样做。我对适用于您的 GDI+ 代码示例不感兴趣:我正在寻找用于图像处理的替代库。

0 投票
1 回答
1824 浏览

c# - 更改 System.Drawing.Bitmap.Palette

我在内存中有一个 TIFF 文件,我通过以下代码的变体获得了该文件:

目前,myImage.Palette 只返回两种颜色,黑色和白色。我想扩展它以包括整个色谱。但是,myImage.Palette 没有添加其他颜色的功能。

有人可以帮我的 TIFF 上色吗?谢谢。

0 投票
2 回答
1050 浏览

c# - 如何在图片框中拖动形状?

我有一个项目,在这些项目中我从某个图层绘制了一些形状。例如,我在圆形图层中有两个圆圈,在矩形图层中有三个矩形,依此类推。我通过调用 Layer.Draw 绘制结果,并使用 Graphics 对象对图层结果进行标记。我可以在图片框中选择一个形状并在图层上指定它。我可以用重绘它的图层来拖动它,然后用图形重新标记它。它有效!但是太慢了!!

我该如何优化呢?

0 投票
1 回答
1365 浏览

c# - C# Console App System.Drawing 背景透明度问题

应该是一个快速而简单的问题。

System.Drawing.Graphics.DrawImage() 或 Image.Save() 默认是否使图像背景透明?我不得不使用 System.Drawing.Bitmap 来调整图像分辨率,现在所有转换后的图像都有透明背景。

更多细节:我们正在使用 ImageMagick 进行从 .eps 到 .jpg 的基本图像转换,但我们似乎无法确定 ImageMagick 中的分辨率转换,因此我们决定使用 System.Drawing 来处理该部分。我们还将 InterpolationMode 设置为 HighQualityBicubic。

如果您需要任何其他详细信息,请告诉我!

提前致谢!

  • 杰西
0 投票
1 回答
298 浏览

.net - .NET 的 System.Drawing.Pen 与小数宽度的行为

我一直看到分数笔宽度的一些奇怪行为,我想知道是否有人可以解释发生了什么。在表单上绘制一个矩形以响应 Paint 事件:

宽度在 0 到 1.996093 之间,我得到一个 1 像素宽的矩形。宽度在 1.996094 和 2.003906 之间,我得到一个 2 像素宽的矩形;从 2.003907 到 3.996093 我得到 3 个像素,依此类推。更奇怪的是,在宽度为 1.9960937 的情况下,我得到了一个矩形,其顶部边缘宽 2 个像素,其他边缘宽 1 个像素。

谁能解释这里发生了什么?我有点希望分界点是 1.5、2.5、3.5 等。

0 投票
2 回答
9990 浏览

.net - GDI+ 性能技巧

有谁知道讨论 GDI+ 性能(除了显而易见的)的任何可靠(并且希望是广泛的)书籍/网站吗?

例如,我最近遇到了这个出色的实验。我最近还注意到这Graphics.FillPath()Graphics.DrawPath(). 我很想知道我还缺少哪些其他重要信息。

善意,大卫