bitmap相关内容

从位图中切割多点多边形并将其放置在透明上

我有一个位图,我正在从中切出一个多点多边形.我很好奇获取任意形状内的像素并将它们复制到新位图上的正确过程是什么,其余像素是透明的.目标是允许用户追踪形状,然后移除多边形外的所有内容. 我已经计算出多边形部分(作为一个点数组),但现在我不知道如何将选定的像素转移到新的位图. TIA 解决方案 不确定你的代码是如何工作的,但这里有一个关于如何去做的想法: 计算选定区域的边界矩 ..
发布时间:2022-01-06 11:51:08 移动开发

Android:位图、软引用和 OOM?

我在垂直 LinearLayout 中有一系列视图.当滚动到时,每个视图都会生成并绘制一个位图.出于性能原因,我宁愿不在每次调用 onDraw() 时都生成位图,但出于内存原因,我不能保留对位图的硬引用.我可以使用有关我应该采取的策略的建议. 我已经尝试了明显的路线:生成位图,然后用 SoftReference 包装它.这失败有两个原因.1. 参考资料的收集速度比我预期的要快得多.2. 我还 ..

在 C# 中将 WriteableBitmap 转换为 Bitmap

有什么方法可以转换WriteableBitmap 到 C# 中的位图? 解决方案 实际上非常简单.下面是一些应该工作的代码.我还没有测试过它,我是从头开始写的. private System.Drawing.Bitmap BitmapFromWriteableBitmap(WriteableBitmap writeBmp){System.Drawing.Bitmap bmp;使用 (Me ..
发布时间:2022-01-06 11:50:52 C#/.NET

使用抖动将 24 位位图转换为 16 位的好的、优化的 C/C++ 算法是什么?

我一直在寻找一种优化(即快速)算法,使用抖动将 24 位 RGB 位图转换为 16 位 (RGB565) 位图.我正在寻找 C/C++ 中的一些东西,我可以在其中实际控制如何应用抖动.GDI+ 似乎提供了一些方法,但我不知道它们是否会抖动.而且,如果他们确实抖动,他们使用的是什么机制(Floyd-Steinberg?) 有没有人有使用抖动进行位图颜色深度转换的好例子? 解决方案 正如 ..
发布时间:2022-01-06 11:50:44 C/C++开发

仅在垂直方向上倾斜位图

我想倾斜(如果这不是正确的词,请纠正我)一个位图,使其看起来有深度.将我所要求的内容可视化的一个好方法是星球大战的学分如何倾斜以显示深度. 我尝试了以下方法: canvas.getMatrix().postSkew(kx,ky,px,py); 和 canvas.skew(sx,sy); 但我没有取得太大的成功.上述方法似乎总是将位图转换为平行四边形.有没有办法把位图转成梯形呢? ..
发布时间:2022-01-06 11:50:36 移动开发

从文件调整图像大小

我正在将图像上传到服务器,在此之前,我想调整图像尺寸.我得到一个带有 URI 的图像,如下所示: Constants.currImageURI = data.getData(); 这是上传图片的调用: String response = uploadUserPhoto(new File(getRealPathFromURI(Constants.currImageURI)));公共字符串上传用 ..
发布时间:2022-01-06 11:50:23 移动开发

如何在不需要先绘画的情况下获得位图透明度?

默认情况下,新创建的位图似乎具有(白色)背景.至少,对 Pixels 属性的查询证实了这一点.但是为什么当 Transparent 设置为 true 时,背景颜色不用作透明颜色? 考虑这个简单的测试代码: procedure TForm1.Button1Click(Sender: TObject);无功Bmp:TBitmap;开始Bmp := TBitmap.Create;尝试Bmp.Wi ..
发布时间:2022-01-06 11:50:05 其他开发

自动将位图修剪到最小尺寸?

假设我有一个 32bpp ARGB 模式的 System.Drawing.Bitmap.这是一个大的位图,但它主要是完全透明的像素,中间有一个相对较小的图像. 检测“真实"图像边界的快速算法是什么,这样我就可以剪掉它周围的所有透明像素? 或者,.Net 中是否已经有一个函数可以用于此目的? 解决方案 基本思想是检查图像的每个像素点,找到图像的上、左、右、下边界.要有效地执行此操 ..
发布时间:2022-01-06 11:49:57 C#/.NET

C# 从 System.Drawing.Bitmap 高效获取像素数据

我在 HDD 上有几个 (~2GB) 原始 24bpp RGB 文件.现在我想检索它的一部分并将其缩放到所需的大小. (唯一允许的比例是 1, 1/2, 1/4, 1/8, ..., 1/256) 所以我目前正在将感兴趣的矩形中的每一行读取到一个数组中,这给我留下了一个高度正确但宽度错误的位图. 下一步,我将从新创建的数组中创建一个位图. 这是通过使用指针完成的,因此不涉及数据复制 ..
发布时间:2022-01-06 11:49:48 C#/.NET

如何将位图转换为 Uri?

我正在尝试使用 Android 中的 SHARE INTENT 与 Facebook、Twitter 等分享图片. 我找到了将图像发送到共享意图的代码,但此代码需要位图的 URI:fullSizeImageUri 这是完整的代码: private void startShareMediaActivity(Bitmap image) {布尔值 isVideo=false;String ..
发布时间:2022-01-06 11:49:26 移动开发

如何使用坐标在android中捕获图像

我是 android 新手,我想把我的问题摆在你面前, 我想在四个坐标之间捕捉图像,如下所示.. 首先,我将图像转换为位图,然后将其设置为相对布局的背景.而且我知道这四个坐标. 那我怎么能把图片放在盒子里,然后把它设置为另一个布局作为背景. 伙计们请让我摆脱这种逻辑...... 解决方案 我终于找到了解决我的问题的方法,我想和你分享, 首先,这是基于+12​​ ..
发布时间:2022-01-06 11:49:13 Java开发

如何将位图缩小为一组已知的 RGB 颜色

对于一个业余爱好项目,我将构建一个程序,当给定图像位图时,该程序将创建十字绣图案作为 PDF.我将在 Mac 上使用 Cocoa/Objective C. 源位图通常是 24bpp 图像,但在数百万种可用颜色中,只有少数作为十字绣线存在.线程有多种类型.DMC 是最广泛可用的,几乎它们的整个范围都可以从各种网站获得 RGB 值.例如,这是一个. DMC# 名称 R G B----- --- ..
发布时间:2022-01-06 11:48:56 其他开发

将位图转换为单色

我正在尝试将图像保存为单色(黑白,1 位深度),但我不知道该怎么做. 我从 png 开始并转换为位图进行打印(它是热敏打印机,无论如何只支持黑色 - 如果我尝试将它们作为彩色/灰度发送,它对于大图像的速度会很慢). 到目前为止,我的代码将其转换为位图非常简单,但它保留了原始颜色深度. Image image = Image.FromFile("C:\\test.png");byte[ ..
发布时间:2022-01-06 11:48:48 C#/.NET

在 xml 中调整位图中的图像大小

我是 Android 编程的新手.最近,我开始了一个项目,想为 Android 应用程序制作一个启动画面.在遵循本教程.但是,我意识到我的应用徽标超出了我的屏幕,如下所示: 以下是我的background_splash.xml: 在 中,但它不起作用.因此,我想知道除了使用 ImageView 之外,是否有一种方法可以调整图像大小(最好不使用 Java 代码).任何帮助将不胜感 ..
发布时间:2022-01-06 11:48:33 移动开发

位图 decodeStream OutOfMemory 异常

我在我的应用程序中为 Android 使用了我自己的 ViewFlow 示例实现.我正在从网络服务下载加密图像,然后将它们保存在 SD 卡上.我正在使用视图流来动态解密图像并显示它们.但问题是,当用户开始太快地更改图像时,它会向我抛出 OutOfMemoryException 并且我发现/测试的所有信息都不适用于我的情况.这是我正在使用的: @Overridepublic View getVi ..
发布时间:2022-01-06 11:48:13 移动开发

绘图画布上的 2D 阵列网格

我正在编写一个像素艺术应用程序,它将用户在屏幕上绘制的图像绘制成像素外观.有两种方法可以接近它.要么在保存后像素化图像,要么事先有一个网格,以便用户绘制像素图像.我在后面的方法中没有找到任何内容.所以我的第一个问题是绘制一个网格,如果触摸一个单元格,我会改变它的颜色.我尝试在画布上绘制矩形,但这毫无意义,因为我无法控制单元格. 我在考虑在每个单元格创建位图的嵌套 for 循环? 解决方 ..
发布时间:2022-01-06 11:47:53 Java开发

加入大图像时出现 OutOfMemory 错误

我使用下面的代码连接两个图像,但它抛出一个 OutOfMemory 错误,我的图像每个大约 1MB. 私有位图overlayMark(字符串第一,字符串第二){位图 bmp1、bmp2;bmp1 = BitmapFactory.decodeFile(first);bmp2 = BitmapFactory.decodeFile(second);if (bmp1 == null || bmp2 == ..
发布时间:2022-01-06 11:47:47 移动开发

使用 1 Mb 堆的奇怪位图

出于好奇,我最近使用 Eclipse 内存分析器测试了我的 Android 应用的内存泄漏. 我遇到了一个大小为 512 x 512 像素的奇怪位图,占用了大约 1 MB 的设备堆内存. 我检查了我的 drawables 文件夹,但找不到该尺寸 (512 x 512) 的位图. 我开始使用谷歌搜索并遇到了这个问题,其中一位用户解释了如何在内存分析器中获取“内存泄漏"引用背后的实际 ..

在 C 中创建 BMP 文件(位图)

我正在尝试用 C 语言制作位图,只是通过代码.我目前正在尝试制作一个非常简单的 .bmp 图像,高度为 1px,宽度为 4 像素,全为白色像素.我已阅读格式说明并尝试应用它.这导致了以下代码: char bitmap[1000];void BMPmake(){//-- 文件头 --////位图签名位图[0] = 'B';位图[1] = 'M';//文件大小位图[2] = 66;//40 + 14 ..
发布时间:2022-01-06 11:47:15 其他开发