问题标签 [bitmap]

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 投票
2 回答
7614 浏览

c# - 从 UIElement 生成 BitmapSource

我正在尝试生成一个BitmapFrame基于UIElement. 这是我的功能:

出于测试和调试目的,我使用了一个额外的函数来创建一个简单的 StackFrame,它应该创建一个可以表示的有效视觉元素:

出于某种原因,VisualBrush 没有在 DrawRetangle(...) 函数中呈现。我可以看到绿色边框,但没有别的。此外,如果我用标准画笔换掉 VisualBrush,效果很好:

提前致谢!

0 投票
1 回答
6938 浏览

c# - 覆盖图像文件(位图)

您好我正在尝试将位图图像保存在基本图像编辑器程序中。

这是代码:

[编辑]我用这个打开图像

所以当我尝试这个时,我会收到一个Generic GDI+ error. 所以我找到了一个解决方案,它看起来像这样:

但是当我尝试这样做时,我收到另一个错误,说我正在删除的文件当前是打开的。这是因为这是我要编辑的文件。

如何在不实际关闭应用程序的情况下“关闭”文件?还是有替代解决方案?

谢谢!

0 投票
2 回答
12931 浏览

c - 在 WIN32 中的“BUTTON”类窗口上显示位图

编辑:我认为在创建子窗口(即我的按钮)期间不会发送 WM_CREATE 消息。因此,通过在 WM_CREATE 期间调用 SendMessage,我正在向尚未创建的窗口发送消息。现在的解决方案是在 WM_SHOWWINDOW 消息期间调用 SendMessage()。子窗口是否在创建时发送 WM_CREATE 消息?

为什么按钮上不显示位图?位图为 180x180 像素。

我有一个资源文件:

然后我创建主窗口和一个子“按钮”窗口:

然后,在我的 Windows 程序中,我向“BUTTON”窗口发送“BM_SETIMAGE”消息:

LoadBitmap() 返回一个有效的句柄,因为它没有返回 NULL,而且我可以使用 BitBlt() 函数在客户区显示位图。所以我要么没有正确发送消息,要么没有正确创建“按钮”窗口。

我究竟做错了什么?

谢谢!

0 投票
5 回答
5895 浏览

c# - Bitmap.Save,巨大的内存泄漏

我有一个应用程序,我在其中获取位图并使用 GZipStream 压缩它并通过套接字发送它,所有这些都在内存中。我已经将肮脏的垃圾内存泄漏追踪到以下行:

浏览良好的信息高速公路,我发现了许多关于图像类在各种编解码器的保存方法中泄漏内存的主题。问题是我真的找不到任何修复程序。所以我的问题如下:

  1. 这是什么原因造成的
  2. 我怎样才能解决这个问题

这是泄漏所在的 FrameStream 类中的完整 Write() 方法。

0 投票
4 回答
4398 浏览

c# - c# GDI+ 中的外部异常

我想运行这段代码

如果我运行代码,我会在这一行出现异常: grayImage.SetPixel(x, y, grau);

以下是异常详细信息:

System.Runtime.InteropServices.ExternalException wurde nicht behandelt。Message="GDI+ 中出现一般错误。" Source="System.Drawing" ErrorCode=-2147467259 StackTrace: 在 System.Drawing.Bitmap.SetPixel(Int32 x, Int32 y, Color color) 在 Metalldetektor.Bild.ArrToPic(Int32[,] arr, Image img) 在 D: \Documents\Visual Studio 2008\Projects\WindowsFormsApplication1\WindowsFormsApplication1\Bild.cs:D:\Documents\Visual Studio 2008\Projects\WindowsFormsApplication1\WindowsFormsApplication1\Form1 中 Metalldetektor.Form1.button2_Click(Object sender, EventArgs e) 的第 44 行。 cs:System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button,

我不知道该怎么做所以请帮忙!

0 投票
2 回答
6194 浏览

c# - 如何在没有第三方库的情况下在 CF 2.0 中制作透明图像?

有没有办法让CF2.0中的图片透明?我必须在文本框上放置一个小图像,但它必须是透明的,以便用户无论如何都能看到文本。你有想法吗?

非常感谢你

twickl

编辑:

感谢您的回答,我会检查这些链接!为了完成我的帖子,这是我想要做的:

我想显示一个小图像(图像尚不存在,我必须制作 ist,所以我对所有格式完全开放),它是文本框右端的 X。通过单击 X,文本框内的文本将被删除……就像在 iPhone 上一样。但是我无法构建自己的控件,因为在我的项目中,有太多的 TextBoxes 已经是带有 windows TextBox 的自定义控件,因此将它们全部切换到自定义控件将需要大量的工作和测试。所以我想在文本框上方制作一个小面板、图片框等等。但它必须是透明的。操作系统是带有 CF 2.0 的 Windows CE 5.0。

0 投票
1 回答
507 浏览

wpf - WPF:使用图像蒙皮

有很多示例展示了如何使用从 .xaml 文件动态加载的 DynamicResources 和 ResourceDictionaries 对 WPF 应用程序进行皮肤处理。

我的问题是我的皮肤使用图像,我想将样式定义和图像包含在一个文件中,这样用户只需要下载它。

任何想法如何做到这一点?有没有办法打包多个资源?

0 投票
2 回答
6194 浏览

.net - 合并两张图片,一张是透明的

我有两个位图图像。其中一个包含使用 USB 相机拍摄的照片。另一个将包含一个形状,如矩形,但它也可以是梯形,或者可以说是只有一种颜色的随机形状。图像的其余部分现在是白色的。

这两个图像的大小不同,但缩放算法并不是这里最困难的部分,因此假设它们具有完全相同的尺寸。

我想在 USB 相机图片上显示我的形状。出于组合目的,白色部分将被视为透明。现在我正在考虑逐个像素地编辑图像,但我正在寻找一个可以为我做这件事的 API。

因此,如果我拍摄一张中间有房子的照片并覆盖一个红色矩形,则生成的图像将是原始图片,房子周围有一个红色矩形。

如果有帮助,我正在使用 .NET。如果它包含一些有用的功能,我也可以使用 win32 API。

编辑:我接受了答案,因为它让我走上了正轨。这实际上非常容易做到。

瞧,original_image现在上面有一个红色矩形。它实际上对于我的 30fps USB 相机来说已经足够快了,所以我可以实时获取它。

目前没有进行缩放。此外,它假设覆盖图像背景是白色的,这将是透明的。

0 投票
6 回答
27196 浏览

c# - 使用 C# 在位图上锐化

我想在图像上放置一个锐化滤镜。我找到了一个简短教程的网站。我试图在 C# 中做到这一点,所以这是我的代码。无论如何,我试图找出它为什么不起作用。我不知道我是否做错了什么,如果是,请告诉我该怎么做才能使其正常工作。谢谢

0 投票
2 回答
1436 浏览

c# - 将 GD-Sharp 流转换为位图

我目前正在尝试 GD-Sharp 并希望将图形转换为位图而不将其保存到图像文件中。

保存到流的 GD-Sharp 方法是

bool GB.Save(流输出);

使用流保存是

由于位图支持流,它如何将 GD-Sharp 转换为位图?谢谢。