当前位置:  编程技术>.net/c#/asp.net

C# Bitmap 复制的小例子

    来源: 互联网  发布时间:2014-10-23

    本文导语:  代码如下:public Bitmap CopyBitmap(Bitmap source){    int depth = Bitmap.GetPixelFormatSize(source.PixelFormat);     if (depth != 8 && depth != 24 && depth != 32)    {        return null;    }     Bitmap destination = new Bitmap(source.Width, source.Height, source.PixelF...

代码如下:

public Bitmap CopyBitmap(Bitmap source)
{
    int depth = Bitmap.GetPixelFormatSize(source.PixelFormat);

    if (depth != 8 && depth != 24 && depth != 32)
    {
        return null;
    }

    Bitmap destination = new Bitmap(source.Width, source.Height, source.PixelFormat);

    BitmapData source_bitmapdata = null;
    BitmapData destination_bitmapdata = null;

    try
    {
        source_bitmapdata = source.LockBits(new Rectangle(0, 0, source.Width, source.Height), ImageLockMode.ReadWrite,
                                        source.PixelFormat);
        destination_bitmapdata = destination.LockBits(new Rectangle(0, 0, destination.Width, destination.Height), ImageLockMode.ReadWrite,
                                        destination.PixelFormat);

        unsafe
        {
            byte* source_ptr = (byte*)source_bitmapdata.Scan0;
            byte* destination_ptr = (byte*)destination_bitmapdata.Scan0;

            for (int i = 0; i < (source.Width * source.Height * (depth / 8)); i++)
            {
                *destination_ptr = *source_ptr;
                source_ptr++;
                destination_ptr++;
            }
        }

        source.UnlockBits(source_bitmapdata);
        destination.UnlockBits(destination_bitmapdata);

        return destination;
    }
    catch
    {
        destination.Dispose();
        return null;
    }
}


    
 
 

您可能感兴趣的文章:

 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • android中Bitmap的放大和缩小实例代码
  • bitmap图像平滑处理工具 Potrace
  • Android 的Bitmap的修改方法
  • bitmap索引压缩处理 FastBit
  • Android Bitmap和Drawable相互转换的简单代码
  • 如何使用Matrix对bitmap的旋转与镜像水平垂直翻转
  • Javascript的bitmap处理库 jsBitmap
  • Android Activity之间传递图片(Bitmap)的方法
  • android通过bitmap生成新图片关键性代码
  • C++ Bitmap Library
  • Android界面 NotificationManager使用Bitmap做图标
  • Linux下如何编程画图?比如Bitmap和Pixel
  • android保存Bitmap图片到指定文件夹示例
  • C语言实现的bitmap位图代码分享
  • mysql创建Bitmap_Join_Indexes中的约束与索引
  • 用bitmap实现磁盘的读写监控
  • android Bitmap圆角与倒影的具体实现代码
  • Android截取视频帧并转化为Bitmap示例
  • 海量数据处理系列之:用C++实现Bitmap算法
  • 数据结构之位图(bitmap)详解


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3