CMYK 转RGB 图片变大问题?

yhy80 2009-02-02 10:05:47
public static Bitmap ConvertCMYK(Bitmap bmp, double rate)
{
rate = rate > 1.0 ? 1.0 : rate;
rate = rate < 0.5 ? 0.5 : rate;
Bitmap tmpBmp = new Bitmap(bmp.Width, bmp.Height, PixelFormat.Format24bppRgb);

Graphics g = Graphics.FromImage(tmpBmp);
if (rate == 0.5)//低质量
{
g.CompositingQuality = CompositingQuality.HighSpeed;
g.SmoothingMode = SmoothingMode.HighSpeed;
g.InterpolationMode = InterpolationMode.NearestNeighbor;
}
else if (rate == 1.0)//高质量
{
g.CompositingQuality = CompositingQuality.HighQuality;
g.SmoothingMode = SmoothingMode.HighQuality;
g.InterpolationMode = InterpolationMode.HighQualityBicubic;
}
else
{//一般质量
g.CompositingQuality = CompositingQuality.HighQuality;
g.SmoothingMode = SmoothingMode.HighQuality;
g.InterpolationMode = InterpolationMode.HighQualityBilinear;
}

Rectangle rect = new Rectangle(0, 0, bmp.Width, bmp.Height);
// 将CMYK图片重绘一遍,此时GDI+自动将CMYK格式转换为RGB了
g.DrawImage(bmp, rect);

Bitmap returnBmp = new Bitmap(tmpBmp);

g.Dispose();
tmpBmp.Dispose();
bmp.Dispose();

return returnBmp;
}
用上面的方法 CMYK转RGB 原图 2m多 生成的RGB 图16m 有哪位知道为什么?
...全文
518 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
传智二哥 2011-11-28
  • 打赏
  • 举报
回复
问一下,各位大侠知道怎么实现图片的rgb值转化为cmyk值吗?
ZJ159 2009-02-02
  • 打赏
  • 举报
回复
楼主真实大方 谢了
yhy80 2009-02-02
  • 打赏
  • 举报
回复
bmp.Save(SavePath + FileName, ImageFormat.Jpeg); 解决啦
ZJ159 2009-02-02
  • 打赏
  • 举报
回复
顶顶
yhy80 2009-02-02
  • 打赏
  • 举报
回复
public static bool UploadPicInfo(byte[] buff, string SavePath, string FileName)
{
try
{
DirectoryInfo dir = new DirectoryInfo(SavePath);
if (!dir.Exists)
{
dir.Create();
}

//判断图片必须是RGB色彩模式
MemoryStream ms = new MemoryStream(buff);
Bitmap bmp = new Bitmap(ms);
if (AboutImages.IsCMYK(bmp))
{
//将CMYK转换为RGB模式
bmp = AboutImages.ConvertCMYK(bmp, 0.8);
bmp.Save(SavePath + FileName);
}
else
{
FileStream fs = new FileStream(SavePath + FileName, FileMode.Create);
fs.Write(buff, 0, buff.Length);
fs.Close();
}
return true;
}
catch
{
return false;
}
}

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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