精华内容
下载资源
问答
  • 摘要:C#源码,图形图像,图像转换 C#转换BMP图像为wmf格式C#图像转换程序源码,在这里简要说一下wmf格式文件:wmf是Microsoft Windows操作平台所支持的一种图形格式文件,目前,其它操作系统尚不支持这种格式,如...
  • c# bmp格式图片压缩

    热门讨论 2008-12-16 23:53:11
    用windows附件里面的画图软件按默认方式保存的图片都比较大,或者其他屏幕截图软件保存的比较大的bmp格式图片……这里用C#写了一个小程序,可以批量压缩一文件夹内所有bmp格式图片,效果还可以,对图片要求不高...
  • /// <summary>  /// 生成二维码  /// </summary> ...//生成数据 "1234567890" 的二维码,返回bmp图片 string QRCodestr = "1234567890"; string QRCodeImage = QRCodeSave(QRCodestr);  

    /// <summary>                                                                     
            /// 生成二维码                                                                    
            /// </summary>                                                                    
            /// <param name="msg">二维码信息</param>                                          
            /// <returns>图片</returns>                                                       
            public Bitmap QRCodeBimapForString(string nr)
            {
                string enCodeString = nr;
                QRCodeEncoder qrCodeEncoder = new QRCodeEncoder();
                //编码方式(注意:BYTE能支持中文,ALPHA_NUMERIC扫描出来的都是数字)
                qrCodeEncoder.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE;
                qrCodeEncoder.QRCodeScale = 15;//大小(值越大生成的二维码图片像素越高)
                                               //版本(注意:设置为0主要是防止编码的字符串太长时发生错误)
                qrCodeEncoder.QRCodeVersion = 2;
                //错误效验、错误更正(有4个等级)
                qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.M;

                return qrCodeEncoder.Encode(enCodeString, Encoding.GetEncoding("GB2312"));
            }


            public string QRCodeSave(string nr)
            {
                Bitmap bt = QRCodeBimapForString(nr);
                System.Drawing.Image img = bt;
                string filePath = my_Path + "/capture";
                string fileName = DateTime.Now.ToString("yyyyMMddHHmmss") + ".bmp";
                if (!Directory.Exists(filePath))
                {
                    Directory.CreateDirectory(filePath);
                }
                string path = Path.Combine(filePath, fileName);

                
                System.Drawing.Bitmap objNewPic = new System.Drawing.Bitmap(bt, 230, 230);//图片保存的大小尺寸   

                //保存bmp图片
                objNewPic.Save(path, ImageFormat.Bmp);

                //bt.Save(path);
                //如果要显示图片就要有返回值
                return path;
            }

     

    //生成数据 "1234567890" 的二维码,返回bmp图片

    string QRCodestr = "1234567890";
    string QRCodeImage = QRCodeSave(QRCodestr);

     

    展开全文
  • PGM格式图像BMP 关于PGM文件格式的详细介绍请参考https://blog.csdn.net/xiaoxin_ling/article/details/3980642 //PGM转BMP类 class PGM2BMP { private static ColorPalette grayScale;//定义调色板类 ...

    C# PGM格式图像与BMP格式图像相互转换

    关于PGM文件格式的详细介绍请参考https://blog.csdn.net/xiaoxin_ling/article/details/3980642

    //PGM转BMP/BMP转PGM类
    	class PGM2BMP
    	{
    		private static ColorPalette grayScale;//定义调色板类
    		public Bitmap PGMToBitmap(string filePath)//PGM 转 BMP
    		{
    			using (FileStream fs = new FileStream(filePath, FileMode.Open))
    			{
    				using (BinaryReader reader = new BinaryReader(fs, Encoding.ASCII))
    				{
    					if (reader.ReadChar() == 'P' && reader.ReadChar() == '5')//针对P5类型的PGM文件,适用于P5类型的PGM文件,对于P2类型的PGM类型的图像文件需要修改
    					{
    						reader.ReadChar();               //读完当前行的结束符“\n”,切换至下一行
    						if (reader.PeekChar() == '#')    //有的PGM文件中含有#开头的行,这个是comment
    						{
    							while (reader.PeekChar() != '\n')
    							{
    								reader.ReadChar();
    							}
    							reader.ReadChar();
    						}
    
    						StringBuilder sbTemp = new StringBuilder();
    						int width = ReadNumber(reader, sbTemp);   //获取图片宽
    						int height = ReadNumber(reader, sbTemp);  //获取图片高
    						int level = ReadNumber(reader, sbTemp);   //获取图片像素中最高像素值
    						bool bTwo = (level > 255);             //一个像素占字节数,默认占1byte
    
    						Bitmap bmp = new Bitmap(width, height, PixelFormat.Format8bppIndexed);
    						if (grayScale == null)
    						{
    							grayScale = bmp.Palette;
    							for (int i = 0; i < 256; i++)
    							{
    								grayScale.Entries[i] = Color.FromArgb(i, i, i);
    							}
    						}
    						bmp.Palette = grayScale;
    						BitmapData dt = bmp.LockBits(new Rectangle(0, 0, width, height), ImageLockMode.WriteOnly, PixelFormat.Format8bppIndexed);
    						int offset = dt.Stride - dt.Width;//位图要求像素宽为4的整数倍,因此当被转换图像宽不是4的整数倍时就会有偏差,最大位3个像素
    
    						//指针的使用必须放在unsafe的区域里
    						unsafe
    						{
    							byte* ptr = (byte*)dt.Scan0;
    
    							for (int i = 0; i < height; i++)
    							{
    								for (int j = 0; j < width; j++)
    								{
    									byte v;
    									if (bTwo)
    									{
    										v = (byte)(((double)((reader.ReadByte() << 8) + reader.ReadByte()) / level) * 255.0);
    									}
    									else
    									{
    										v = reader.ReadByte();
    									}
    									*ptr = v;
    									ptr++;
    								}
    								ptr += offset;
    							}
    						}
    
    						bmp.UnlockBits(dt);
    						return bmp;
    					}
    					else
    					{
    						throw new InvalidOperationException("Target file is not a PGM file");
    					}
    				}
    			}
    		}
    
    		public void SaveAsBitmap(string src, string dest)
    		{
    			PGMToBitmap(src).Save(dest, ImageFormat.Bmp);
    		}
    
    		private int ReadNumber(BinaryReader reader, StringBuilder sb)
    		{
    			char c = '\0';
    			sb.Length = 0;
    			while (Char.IsDigit(c = reader.ReadChar()))
    			{
    				sb.Append(c);
    			}
    			return int.Parse(sb.ToString());
    		}
    
    		/// <summary>
    		/// 将bmp保存为PGM格式文件(P5)
    		/// </summary>
    		/// <param name="bm"></param>
    		/// <param name="iw"></param>
    		/// <param name="ih"></param>
    		/// <param name="icolor"></param>
    		/// <param name="filePath"></param>
    		public void WritePGM(Bitmap bm, int iw, int ih, int icolor, string filePath)
    		{
    			string PGMINfo = "P5" + Convert.ToChar(10) + '#'
    				+ "Generated by OpenCV 3.3.1-dev" + Convert.ToChar(10) +
    				iw.ToString() + " " +
    				ih.ToString() + Convert.ToChar(10) +
    				icolor.ToString() + Convert.ToChar(10);
    
    			FileStream OutputStream = File.Create(filePath);
    			BinaryWriter PGMWriter = new BinaryWriter(OutputStream);
    			byte[] PGMInfoBuffer = System.Text.ASCIIEncoding.Default.GetBytes(PGMINfo);
    			PGMWriter.Write(PGMInfoBuffer);
    
    			byte[] data = new byte[iw*ih];
    			for (int j = 0; j < ih; j++)
    			{
    				for (int i = 0; i < iw; i++)
    				{
    					data[i + j * iw] = (byte)bm.GetPixel(i, j).R;
    				}
    			}
    			PGMWriter.Write(data);
    			PGMWriter.Close();
    		}
    	}
    

    注意:类中使用了unsafe关键字,直接使用会报错,编译无法通过。
    error CS0227: 不安全代码只会在使用 /unsafe 编译的情况下出现
    解决:VS2017下,项目-》右键-》属性-》生成: 将“允许不安全代码(F)”勾选上,重新编译即可。
    在这里插入图片描述
    参考Demo链接https://download.csdn.net/download/CXYLVCHF/13986132

    展开全文
  • 摘要:C#源码,图形图像,图像格式转换 批量图像格式转换,为了使大批量的图像格式转换变的简单,因此开发出批量图像格式转换工具,图像格式转换主要通过Bitmap类的Save方法实现,将Image以指定的格式保存到指定文件,...
  • 导师接了校医院的项目,涉及到dcm医学图像的显示和存储问题。 demo实现 将本地的dcm图像转存为bmp图像 使用时 需要导入dicom包,只需修改dcm 路径即可。
  • 因为.NET绘图类不支持PGM格式图片,所以本代码实现将PGM格式转化为可以处理BMP格式,便于Image等类使用,本人菜鸡写的,没有太多花哨的操作,但保证简单实用
  • C# bmp转换成jpg格式

    2012-06-18 15:26:09
    C# bmp转换成jpg格式 完整版 含工程源代码 、界面
  • 摘要:C#源码,图形图像,批量图片格式转换 C#批量转换图片格式,支持的图片格式为:BMP/JPG/PNG/GIF,为了使大批量的图像格式转换变的简单,因此开发出批量图像格式转换工具,图像格式转换主要通过Bitmap类的Save方法...
  • 各位大咖,想要把一幅图片png格式bmp格式转换为ImageBGRA32格式。 public ImageBGRA32(uint width, uint height, IntPtr imageData);
  • C#中,有时为解决几个图片显示的问题,比如有一张背景图,还有一直是要显示在背景图上的图片,如何能将这2张图片合成一张图片显示呢? 下面的例子提供了这样一个解决的方法,代码如下: //strwinepath酒的图片 ...

             在C#中,有时为解决几个图片显示的问题,比如有一张背景图,还有一直是要显示在背景图上的图片,如何能将这2张图片合成一张图片显示呢?

    下面的例子提供了这样一个解决的方法,代码如下:

    //strwinepath酒的图片

    //strBackPic 背景图片

    private void TestPaint(string strwinepath,string strWineDetailBackPic)

    {

                //获取酒的图片,酒的图片格式为jpg格式

                Image imgWine = Image.FromFile(strwinepath);

                //获取背景图片,背景图片格式也为jpg格式,现在读取为bmp格式
                Bitmap bmp = new Bitmap(strBackPic);

               获取背景图的绘图图面
                Graphics g = Graphics.FromImage(bmp);

                //将酒的图片绘制到背景图上
                g.DrawImage(imgWine, 149, 209,100,416);

                //将背景图片加载显示到背景上
                this.BackgroundImage = bmp;
                this.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;

    }

    这样就完成了将2张图片合成了一张。

    转载于:https://www.cnblogs.com/kevinGao/archive/2011/12/19/2294467.html

    展开全文
  • 实现图像格式的转化,将bmp的彩色图像转化为其他简单格式,便于使用。
  • C#BMP文件格式分析并读取

    千次阅读 2018-12-27 11:13:11
    扣扣技术交流群:460189483 主要是方便自己用,复制了一下,建议...BMP(Bitmap-File)图形文件是Windows采用的图形文件格式,在Windows环境下运行的所有图象处理软件都支持BMP图象文件格式。Windows系统内部各图...

    原文地址:https://blog.csdn.net/guanchanghui/article/details/1172092

    扣扣技术交流群:460189483

    主要是方便自己用,复制了一下,建议大家看原文

    简介

    BMP(Bitmap-File)图形文件是Windows采用的图形文件格式,在Windows环境下运行的所有图象处理软件都支持BMP图象文件格式。Windows系统内部各图像绘制操作都是以BMP为基础的。Windows 3.0以前的BMP图文件格式与显示设备有关,因此把这种BMP图象文件格式称为设备相关位图DDB(device-dependent bitmap)文件格式。Windows 3.0以后的BMP图象文件与显示设备无关,因此把这种BMP图象文件格式称为设备无关位图DIB(device-independent bitmap)格式(注:Windows 3.0以后,在系统中仍然存在DDB位图,象BitBlt()这种函数就是基于DDB位图的,只不过如果你想将图像以BMP格式保存到磁盘文件中时,微软极力推荐你以DIB格式保存),目的是为了让Windows能够在任何类型的显示设备上显示所存储的图象。BMP位图文件默认的文件扩展名是BMP或者bmp(有时它也会以.DIB或.RLE作扩展名)。

    6.1.2 文件结构

    位图文件可看成由4个部分组成:位图文件头(bitmap-file header)、位图信息头(bitmap-information header)、彩色表(color table)和定义位图的字节阵列,它具有如下所示的形式。


    位图文件结构可综合在表6-01中。

    表01 位图文件结构内容摘要

         

    bmp文件的读取

    FileStream fs = new FileStream("led.bmp",FileMode.Open);
    byte[] bmpdata=new byte[fs.length];
    fs.Read(bmpdata,0,bmpdata.Length);
    fs.Close();

     

    展开全文
  • 各位大佬,本人c#渣渣,目前做项目遇到一个问题,就是我的所有图像读取,处理都是bmp类的,结果目前底层给我的图片格式只有PGM的格式,我上网查了查 framework 刚好就不支持这种格式,所以我在这里想问下有什么办法...
  • 现在有一个IntPtr指针,指向的是.bmp图像文件的裸数据(不包含.bmp图像文件头那些的结构体),怎么这个数据通工picturebox显示出来
  • C#调用动态链接库(libpng.dll)将bmp格式图片转换为png格式链接库下载编译bmp图像转换为png函数实现unity下C#调用动态链接库测试效果 链接库下载编译 libpng下载地址,我下载的是lpng1637.zip; zlib,我下载在...
  • 格式转换很常见,其实在我实现了 Mat 转 bmp 之后才发现原来 imwrite 接口可以直接将 Mat 数据保存为 .bmp图像,不过下文所谈及的转换是在内存中的转换,因为将图像发送给识别服务器时显然不能先将 Mat 保存为 .bmp ...
  • c#图像处理(bmp转化为灰度图片

    热门讨论 2012-06-11 10:59:16
    c#图像处理(bmp转化为灰度图片),详细,简单,文件包有创建说明,相当详细。
  • 里介绍将PDF转换多种不同格式图像文件格式,如PNG,BMP,EMF,TIFF等,同时,转换文档也分为转换全部文档和转换部分文档为图片两种情况,本文也将作进一步介绍
  • C#批量图像格式转换

    2012-03-03 16:30:47
    批量图像格式转换 c#图片格式转换 c#图片转换 图像转换 图像格式转换
  • @[TOC](C# png格式图像BMP时透明背景变更) ## 代码 ```C# Image img = Image.FromFile(filename); // Assumes myImage is the PNG you are converting using (var b = new Bitmap(img.Width, img.Height)) { b....
  • C#bmp单色生成

    2019-01-05 18:40:43
    C#bmp单色生成,主要实现bmp格式图片的生成单一颜色。
  • dat文件的原始图像格式:每两个字节代表一个像素点(低位低字节,高位高字节)(最大值为16383),数据按照按照先行后列的顺序存储(1280X1024)怎么读取来生成BMP图像 没这方面经验 请指教
  • 提供两个程序,能够分别完成raw格式图像转换为bmp格式图像bmp格式图像转换为raw格式图像,程序基于vs2010编写

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 14,844
精华内容 5,937
关键字:

bmp图片的格式c#

c# 订阅