图片替换颜色问题?

zhypmq 2008-06-02 10:09:25
图片替换颜色保存图片之后发现替换的颜色仍有存在?只替换了部分
原来没有"#010101"颜色的地方也会出现部份这种颜色,

寻求解决办法!
代码
public const string fileName = @"E:\ld.jpg";
public const string gName = @"e:\test1.jpg";
public string j01 = "#010101";
public string j00 = "#000000";
protected void Page_Load(object sender, EventArgs e)
{
Bitmap btm = new Bitmap(fileName);
int w = btm.Width;
int h = btm.Height;
Bitmap btm2 = new Bitmap(w, h);
int k = 0;
for (int x = 0; x < w; x++)
{
for (int y = 0; y < h; y++)
{
Color cTmp = btm.GetPixel(x, y);
Color c = ColorTranslator.FromHtml(j01);
if (cTmp.ToArgb()==c.ToArgb() )
{
btm.SetPixel(x, y, ColorTranslator.FromHtml(j00));
k = k + 1;
}
}
}
Response.Write(k);
btm.Save(gName);
Response.Write("ok!");
}
...全文
788 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
net0003 2008-06-05
  • 打赏
  • 举报
回复
图片替换颜色 是什么概念



panyang15 2008-06-04
  • 打赏
  • 举报
回复
学习
zhypmq 2008-06-04
  • 打赏
  • 举报
回复
试过了不成!也许应该换个思路了!谁有其它思路给个建议!
先谢了!!!
zhypmq 2008-06-04
  • 打赏
  • 举报
回复
我的问题解决??????????????
卧_槽 2008-06-04
  • 打赏
  • 举报
回复
设置jpg的质量为100
Deathsign 2008-06-04
  • 打赏
  • 举报
回复
看看计算机图形学把
JPG是经过压缩的图片,颜色信息和你看到的的颜色是有点出入的

BMP是未压缩的,你看到是红色 哪么颜色就是#ff0000而JPG或者GIF一类的压缩图就不是#ff0000,可能是#ff0001或者#feffff之类 有细微差别,而且不是全部都有差别···部分而已··放大了就能看出来
zhypmq 2008-06-02
  • 打赏
  • 举报
回复
不好意思,理解错误,條件去掉可以,不過全成黑的了!
加條件也可以替換不過沒有替換的會有一部份生成這種顏色!
Jave.Lin 2008-06-02
  • 打赏
  • 举报
回复
mark and mark
zhypmq 2008-06-02
  • 打赏
  • 举报
回复
试过了不行!
BIGBIRDINWOODS 2008-06-02
  • 打赏
  • 举报
回复
檢查一下邏輯,別設置條件了,全部換掉試試
zhypmq 2008-06-02
  • 打赏
  • 举报
回复
不太明白,您是指,替换转成png 然后再转成jpeg的吗? 这样转完之后010101颜色又会出现...
occam 2008-06-02
  • 打赏
  • 举报
回复
自己压缩成jpg就能解决...
zhypmq 2008-06-02
  • 打赏
  • 举报
回复
谢谢,occam了,

谢谢大家热心帮助,感激不尽!

bmp/png 没有问题,不过最好是jpg 的,有没有其它解决办法???
gomoku 2008-06-02
  • 打赏
  • 举报
回复

引用 6 楼 zhypmq 的回复:
替换#010101这个颜色,只要#010101不存就可以!


你的目的基本达到了。

不过要记住,jpg是有损的,btm.Save(gName)的时候,有可能再次引入#010101像素。
occam 2008-06-02
  • 打赏
  • 举报
回复
保存成bmp/png再看看..
zhypmq 2008-06-02
  • 打赏
  • 举报
回复
我仅替换#010101这个颜色,只要#010101不存就可以!
gomoku 2008-06-02
  • 打赏
  • 举报
回复
jpg很少有纯色的区域。

那些相近的颜色,并没有被替换。
zhypmq 2008-06-02
  • 打赏
  • 举报
回复
有没有会的????????????

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧