国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發(fā)設計 > 正文

使用OctreeQuantizer提高gdi+繪圖質量

2019-11-14 16:24:47
字體:
來源:轉載
供稿:網友
   

.net中gdi+繪制的圖形質量很少,原因是gdi+使用的是256色的。

為了提高繪制圖片的質量,可以使用是“Octree“ 算法。“Octree“ 算法允許我們插入自己的算法來量子化我們的圖像。 

  一個好的“顏色量子化”算法“應該考慮在兩個像素顆粒之間填充與這兩個像素顏色相近的過渡顏色,提供更多可視顏色空間。

  Morgan Skinner提供了很好的“Octree“ 算法代碼,大家可以下載參考使用。

  使用OctreeQuantizer很方便:

     public byte[] Draw()
        {
            System.Drawing.Bitmap image = new System.Drawing.Bitmap(this.imageWidth, this.imageHeight);
            Graphics g = Graphics.FromImage(image);
            g.SmoothingMode = SmoothingMode.HighQuality;
            g.InterpolationMode = InterpolationMode.HighQualityBicubic;

            //繪制圖片
            this.RenerImage(g);
            System.IO.MemoryStream ms = new System.IO.MemoryStream();

            //使用octreequantizer清晰化圖片
            OctreeQuantizer oqt = new OctreeQuantizer(255, 8);
            System.Drawing.Bitmap highImage = oqt.Quantize(image);
            highImage.Save(ms, System.Drawing.Imaging.ImageFormat.Gif);
            byte[] buffer = ms.ToArray();
            g.Dispose();
            image.Dispose();
            highImage.Dispose();
            return buffer;
        }

                 

             
  • OctreeQuantizer.zip (6.6 KB)

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 龙山县| 沙坪坝区| 时尚| 通城县| 石嘴山市| 太白县| 邹城市| 崇文区| 从化市| 河东区| 玉田县| 平江县| 财经| 贡山| 菏泽市| 汉川市| 阳原县| 九龙县| 民勤县| 隆尧县| 都昌县| 宣化县| 班玛县| 洱源县| 上蔡县| 织金县| 石家庄市| 太白县| 乌鲁木齐县| 佛教| 石棉县| 图们市| 乐都县| 湟源县| 定边县| 工布江达县| 余江县| 拉萨市| 观塘区| 仙游县| 敦煌市|