zoukankan      html  css  js  c++  java
  • WPF中Image显示本地图片(转)

    private void SetSource(System.Windows.Controls.Image image, string fileName)
    {
    System.Drawing.Image sourceImage = System.Drawing.Image.FromFile(fileName);
    int imageWidth = 0, imageHeight = 0;
    InitializeImageSize(sourceImage, image, out imageWidth, out imageHeight);

    Bitmap sourceBmp = new Bitmap(sourceImage, imageWidth, imageHeight);
    IntPtr hBitmap = sourceBmp.GetHbitmap();
    BitmapSource bitmapSource = Imaging.CreateBitmapSourceFromHBitmap(hBitmap, IntPtr.Zero, Int32Rect.Empty,
    BitmapSizeOptions.FromEmptyOptions());
    bitmapSource.Freeze();
    WriteableBitmap writeableBmp = new WriteableBitmap(bitmapSource);
    sourceImage.Dispose();
    sourceBmp.Dispose();
    image.Source = writeableBmp;
    }

    /// <summary>
    /// Initialize ImageSize.
    /// </summary>
    /// <param name="sourceImage"></param>
    /// <param name="image"></param>
    /// <param name="imageWidth"></param>
    /// <param name="imageHeight"></param>
    private static void InitializeImageSize(System.Drawing.Image sourceImage, System.Windows.Controls.Image image,
    out int imageWidth, out int imageHeight)
    {
    int width = sourceImage.Width;
    int height = sourceImage.Height;
    float aspect = (float)width / (float)height;
    if (image.Height != double.NaN)
    {
    imageHeight = Convert.ToInt32(image.Height);
    imageWidth = Convert.ToInt32(aspect * imageHeight);
    }
    else if (image.Width != double.NaN)
    {
    imageWidth = Convert.ToInt32(image.Width);
    imageHeight = Convert.ToInt32(image.Width / aspect);
    }
    else
    {
    imageHeight = 100;
    imageWidth = Convert.ToInt32(aspect * imageHeight);
    }
    }

    调用:  SetSource(this.imageCur, “C:1.png”);

    http://www.cnblogs.com/yunyou/archive/2013/01/25/2876054.html

  • 相关阅读:
    如何修改容器内的/etc/resolv.conf
    OpenShift DNS的机制
    OpenShift 容器日志和应用日志分离问题
    python办公自动化(一)PPTX
    python装饰器 语法糖
    一步一步FLASK(一)
    linux python 安装 pymssql
    定制flask-admin的主页
    复制pycharm虚拟环境
    离线安装pycharm数据库驱动
  • 原文地址:https://www.cnblogs.com/ExMan/p/3755418.html
Copyright © 2011-2022 走看看