• 图形技术(BMP转换成JPG格式)


    记忆是有限的,你们应该知道我想说什么了。

     //核心代码

    Bitmap bitmap;

     private void buttonOpen_Click(object sender, EventArgs e)
            {
                OpenFileDialog openFileDialog = new OpenFileDialog();
                openFileDialog.Filter = "*.bmp|*.bmp";
                openFileDialog.Title = "打开图像文件";
                openFileDialog.Multiselect = false;
                if (openFileDialog.ShowDialog() == DialogResult.OK)
                {
                    if (bitmap != null)
                    {
                        bitmap.Dispose();
                    }
                    string fileName = openFileDialog.FileName;
                    bitmap = new Bitmap(fileName);
                    if (bitmap.Width > bitmap.Height)
                    {
                        pictureBox.Width = panel2.Width;
                        pictureBox.Height = (int)((double)bitmap.Height * panel2.Width / bitmap.Width);
                    }
                    else
                    {
                        pictureBox.Height = panel2.Height;
                        pictureBox.Width = (int)((double)bitmap.Width * panel2.Height / bitmap.Height);
                    }
                    pictureBox.Image = bitmap;
                    FileInfo f = new FileInfo(fileName);
                    this.Text = "图像转换:" + f.Name;
                    this.label1.Text = f.Name;
                    buttonConvert.Enabled = true;
                }
            }

            private void buttonConvert_Click(object sender, EventArgs e)
            {
                if (comboBox.SelectedItem == null)
                {
                    return;
                }
                else
                {
                    SaveFileDialog saveFileDialog = new SaveFileDialog();
                    saveFileDialog.Title = "转化为:";
                    saveFileDialog.OverwritePrompt = true;
                    saveFileDialog.CheckPathExists = true;
                    saveFileDialog.Filter = comboBox.Text + "|" + comboBox.Text;
                    if (saveFileDialog.ShowDialog() == DialogResult.OK)
                    {
                        string fileName = saveFileDialog.FileName;
                        bitmap.Save(fileName, ImageFormat.Jpeg);
                      /*  FileInfo f = new FileInfo(fileName);
                        this.Text = "图像转换:" + f.Name;
                        label1.Text = f.Name;*/
                    }
                }
            }

            private void panel2_Resize(object sender, EventArgs e)
            {
                pictureBox.Top = panel1.Top;
                pictureBox.Left = panel1.Left;
                if (bitmap != null)
                {
                    if (bitmap.Width > bitmap.Height)
                    {
                        pictureBox.Width = panel2.Width;
                        pictureBox.Height = (int)((double)bitmap.Height * panel2.Width / bitmap.Width);
                    }
                    else
                    {
                        pictureBox.Height = panel2.Height;
                        pictureBox.Width = (int)((double)bitmap.Width * panel2.Height / bitmap.Height);
                    }
                }
                else
                {
                    pictureBox.Width = panel2.Width;
                    pictureBox.Height = panel2.Height;
                }
                pictureBox.Refresh();
            }

  • 相关阅读:
    委托系列整理
    EF Lambda 多表查询
    枚举,Enum,常规使用demo记录
    自定义Window 服务
    xpath 操作XML
    MVC 自定义过滤器
    时间比对,常用细节记录
    Lock锁_线程_线程域
    break、continue和goto 三者作用介绍
    .net 学习路线感想
  • 原文地址:https://www.cnblogs.com/msAspnet/p/2097293.html
Copyright © 2020-2023  润新知