基于矩阵的图像处理绘图软件源码


采用矩阵实现各种图形图像效果变换 包括基本图形绘制,文件操作,图像矩阵变换,选区矩阵变换,色彩矩阵变换,卷积过滤变换。 本软件采用C#2.0开发,使用GDI+实现
资源截图
代码片段和文件信息
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Drawing.Drawing2D;
using System.Drawing.Imaging;
using System.IO;
using System.Text;
using System.Text.Regularexpressions;
using System.Windows.Forms;

namespace 毕业设计
{
    public partial class MainForm : Form
    {
        #region 内部变量

        private Point pos; // 记录鼠标位置
        private ITool canvasInterface;

        #endregion

        public MainForm()
        {
            InitializeComponent();

            // 设置撤销列表
            this.RefreshImageHistory(null BitmapEventArgs.Empty);

            ImageHistory.RecordChanged += new BitmapEventHandler(RefreshImageHistory);
            // 显示鼠标位置的匿名函数
            canvas.PictureBox.MouseMove += new MouseEventHandler(delegate(object sender MouseEventArgs e) { pos = canvas.ActualPosition(e.Location); this.posStatusLabel.Text = pos.X + “ “ + pos.Y; });

            // 初始化画刷工具栏
            InitBurshToolStrip();

            // 初始化字体工具栏
            InitFontToolStrip();

            // 初始菜单工具栏选项
            this.RefleshToolStripEnable(false);
        }

        #region 响应历史记录事件

        /// 
        /// 历史记录事件——历史记录改变
        /// 

        private void RefreshImageHistory(object sender BitmapEventArgs e)
        {
            this.undoMenuItem.Enabled = ImageHistory.CanUndo;
            this.redoMenuItem.Enabled = ImageHistory.CanRedo;
            this.undoButton.Enabled = ImageHistory.CanUndo;
            this.redoButton.Enabled = ImageHistory.CanRedo;

            if (e.Bitmap != null)
                this.sizeStatusLabel.Text = String.Format(“{0} {1}“ e.Bitmap.Width e.Bitmap.Height);
            else
                this.sizeStatusLabel.Text = ““;
        }

        #endregion

        #region 响应文件菜单事件

        /// 
        /// 设置初始菜单项和工具栏项(OnNewImage和OnOpenImage调用)
        /// 

        private void RefleshToolStripEnable(bool enable)
        {
            // 设置图像
            canvas.VisibleBitmap = enable;
            // 设置菜单项
            this.loadPrimitiveMenuItem.Enabled = enable;
            this.saveMenuItem.Enabled = enable;
            this.saveAsMenuItem.Enabled = enable;
            this.printMenuItem.Enabled = enable;
            this.cutMenuItem.Enabled = enable;
            this.copyMenuItem.Enabled = enable;
            this.pasteMenuItem.Enabled = enable;
            this.eraseSelectionMenuItem.Enabled = enable;
            this.IsFillSelectionMenuItem.Enabled = enable;
            this.selectAllMenuItem.Enabled = enable;
            this.invertSelectionMenuItem.Enabled = enable;
            this.deselectMenuItem.Enabled = enable;
            // 图像、调整、滤镜菜单项
            this.imageTransformMenuItem.Enabled = enable;
            this.ImageAdjustmentMenuItem.Enabled = enable;
            this.effectToolMenuItem.Enabled = enable;
 

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件         77  2008-11-26 02:51  毕业设计毕业设计app.config

     文件      62976  2009-01-14 23:12  毕业设计毕业设计inReleaseAutoUpdate.exe

     文件        321  2009-01-14 22:20  毕业设计毕业设计inReleaseUpdateList.xml

     文件     665088  2010-05-28 19:59  毕业设计毕业设计inRelease毕业设计.exe

     文件         77  2008-11-26 02:51  毕业设计毕业设计inRelease毕业设计.exe.config

     文件     394752  2010-05-28 19:59  毕业设计毕业设计inRelease毕业设计.pdb

     文件      14328  2010-05-28 19:59  毕业设计毕业设计inRelease毕业设计.vshost.exe

     文件         77  2008-11-26 02:51  毕业设计毕业设计inRelease毕业设计.vshost.exe.config

     文件        947  2008-12-26 10:45  毕业设计毕业设计CodeApi.cs

     文件        489  2008-12-10 13:03  毕业设计毕业设计CodeChannelMode.cs

     文件       4386  2009-01-03 13:39  毕业设计毕业设计CodeConvolutionFilter.cs

     文件        912  2008-12-10 13:09  毕业设计毕业设计CodeDirection.cs

     文件      21717  2009-01-03 13:32  毕业设计毕业设计CodeEffect.cs

     文件       2259  2009-01-05 18:37  毕业设计毕业设计CodeFilter.cs

     文件       3243  2008-12-25 20:19  毕业设计毕业设计CodeFunction.cs

     文件       7757  2008-12-03 16:24  毕业设计毕业设计CodeImageHistory.cs

     文件       7721  2008-11-26 13:35  毕业设计毕业设计CodeImageTransform.cs

     文件       8537  2009-04-23 16:34  毕业设计毕业设计CodeImageTransformMatrix.cs

     文件       3879  2008-10-28 09:23  毕业设计毕业设计CodeRegionClip.cs

     文件       3527  2008-10-13 18:09  毕业设计毕业设计ControlAnglePanel.cs

     文件       1725  2008-10-13 17:51  毕业设计毕业设计ControlAnglePanel.Designer.cs

     文件       5814  2008-10-13 17:51  毕业设计毕业设计ControlAnglePanel.resx

     文件      12292  2009-04-20 20:54  毕业设计毕业设计ControlCanvas.cs

     文件       3185  2009-01-03 14:01  毕业设计毕业设计ControlCanvas.Designer.cs

     文件       6007  2009-01-03 13:59  毕业设计毕业设计ControlCanvas.resx

     文件        766  2007-12-20 13:09  毕业设计毕业设计CursorColorPickerToolCursor.cur

     文件        326  2007-12-20 13:09  毕业设计毕业设计CursorEllipseSelectToolCursor.cur

     文件        766  2007-12-20 13:09  毕业设计毕业设计CursorEllipseToolCursor.cur

     文件        766  2007-12-20 13:09  毕业设计毕业设计CursorEraserToolCursor.cur

     文件        766  2007-12-20 13:09  毕业设计毕业设计CursorGenericToolCursor.cur

............此处省略215个文件信息

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。

发表评论

评论列表(条)