• 大小: 152KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-16
  • 语言: C#
  • 标签:

资源简介

实现图片的查看放大缩小旋转功能,与windows 图片查看器的原理一样

资源截图

代码片段和文件信息

using System;
using System.Collections.Generic;
using System.Drawing;
using System.Drawing.Imaging;
using System.IO;
using System.Windows.Forms;

namespace 图片查看器
{
    public partial class Form1 : Form
    {
        // 保存打开图片的路径
        string imgPath = null;
        Image newbitmap = null;
        // 打开图片的目录
        string directory = null;

        // 目录下的图片集合
        List imgArray = null;
        bool isRotate = false;

        public Form1()
        {
            InitializeComponent();

            // 必须先打开图片,旋转按钮才可以用
            btnClockwiseRotate.Visible = false;
            btncounterclockwiseRotate.Visible = false;
            btnPre.Visible = false;
            btnNext.Visible = false;
        }

        // 打开图片
        private void btnOpen_Click(object sender EventArgs e)
        {
            using (OpenFileDialog fileDialog = new OpenFileDialog())
            {
                fileDialog.Filter = “图片文件(*.jpg;*.bmp;*.png)|*.jpg;*.bmp;*.png|(All file(*.*)|*.*“;
                fileDialog.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyPictures);
                if (fileDialog.ShowDialog() == DialogResult.OK)
                {
                    picBoxView.SizeMode = PictureBoxSizeMode.Zoom;
                    imgPath = fileDialog.FileName;
                    // 初始化图片集合
                    directory = Path.GetDirectoryName(imgPath);
                    imgArray = ImageManager.GetImgCollection(directory);

                    newbitmap=(Bitmap)Image.FromFile(imgPath);
                    picBoxView.Image =newbitmap ;
                }

                btnClockwiseRotate.Visible = true;
                btncounterclockwiseRotate.Visible = true;
                btnPre.Visible = true;
                btnNext.Visible = true;
            }
        }

        // 顺时针旋转90度旋转图片
        private void btnRotate_Click(object sender EventArgs e)
        {
            picBoxView.SizeMode = PictureBoxSizeMode.Zoom;
                       
            // 顺时针旋转90度的另外一种实现
            newbitmap.RotateFlip(RotateFlipType.Rotate90FlipNone);
            picBoxView.Image = newbitmap;
            isRotate = true;
            //newbitmap = (Image)ImageManager.RotateImg(bitmap 90f Color.Transparent); ;
            //picBoxView.Image = newbitmap;
        }
       
        // 关闭窗体后保存旋转后的图片到文件中
        private void Form1_FormClosed(object sender FormClosedEventArgs e)
        {
            if (imgPath == null || isRotate == false)
            {
                return;
            }

            switch (Path.GetExtension(imgPath).ToLower())
            {
                case “.png“:          
                    newbitmap.Save(imgPath ImageFormat.Png);
                    newbitmap.Dispose();
                    break;
                case “.jpg“:
                    newbitmap.Save(imgPath ImageFormat.Jpeg);
                    newbitmap.Disp

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

     文件      22138  2013-06-02 03:54  C#如何实现图片查看器\description.html

     文件      14808  2013-06-02 03:54  C#如何实现图片查看器\license.rtf

     文件        875  2013-06-02 03:54  C#如何实现图片查看器\C#\PictureView.sln

    ..A..H.     18944  2013-06-10 14:45  C#如何实现图片查看器\C#\PictureView.suo

     文件       8039  2013-06-10 14:45  C#如何实现图片查看器\C#\PictureView\Form1.cs

     文件       7172  2013-06-02 03:54  C#如何实现图片查看器\C#\PictureView\Form1.Designer.cs

     文件      13865  2013-06-02 03:54  C#如何实现图片查看器\C#\PictureView\Form1.resx

     文件       3286  2013-06-02 03:54  C#如何实现图片查看器\C#\PictureView\ImageManager.cs

     文件       3632  2013-06-02 03:54  C#如何实现图片查看器\C#\PictureView\PictureView.csproj

     文件        496  2013-06-02 03:54  C#如何实现图片查看器\C#\PictureView\Program.cs

     文件      19456  2013-06-10 14:39  C#如何实现图片查看器\C#\PictureView\bin\Debug\图片查看器.exe

     文件      36352  2013-06-10 14:39  C#如何实现图片查看器\C#\PictureView\bin\Debug\图片查看器.pdb

     文件      11600  2013-06-10 14:37  C#如何实现图片查看器\C#\PictureView\bin\Debug\图片查看器.vshost.exe

     文件        490  2010-03-17 22:39  C#如何实现图片查看器\C#\PictureView\bin\Debug\图片查看器.vshost.exe.manifest

     文件       2855  2013-06-10 14:38  C#如何实现图片查看器\C#\PictureView\obj\x86\Debug\DesignTimeResolveAssemblyReferences.cache

     文件       6094  2013-06-10 14:39  C#如何实现图片查看器\C#\PictureView\obj\x86\Debug\DesignTimeResolveAssemblyReferencesInput.cache

     文件       1590  2013-06-10 14:39  C#如何实现图片查看器\C#\PictureView\obj\x86\Debug\PictureView.csproj.FileListAbsolute.txt

     文件        975  2013-06-10 14:39  C#如何实现图片查看器\C#\PictureView\obj\x86\Debug\PictureView.csproj.GenerateResource.Cache

     文件      19456  2013-06-10 14:39  C#如何实现图片查看器\C#\PictureView\obj\x86\Debug\图片查看器.exe

     文件       5931  2013-06-02 03:54  C#如何实现图片查看器\C#\PictureView\obj\x86\Debug\图片查看器.Form1.resources

     文件      36352  2013-06-10 14:39  C#如何实现图片查看器\C#\PictureView\obj\x86\Debug\图片查看器.pdb

     文件        180  2013-06-02 03:54  C#如何实现图片查看器\C#\PictureView\obj\x86\Debug\图片查看器.Properties.Resources.resources

     文件       1362  2013-06-02 03:54  C#如何实现图片查看器\C#\PictureView\Properties\AssemblyInfo.cs

     文件       2882  2013-06-02 03:54  C#如何实现图片查看器\C#\PictureView\Properties\Resources.Designer.cs

     文件       5612  2013-06-02 03:54  C#如何实现图片查看器\C#\PictureView\Properties\Resources.resx

     文件       1102  2013-06-02 03:54  C#如何实现图片查看器\C#\PictureView\Properties\Settings.Designer.cs

     文件        249  2013-06-02 03:54  C#如何实现图片查看器\C#\PictureView\Properties\Settings.settings

     文件      54776  2013-06-02 03:54  C#如何实现图片查看器\description\10.PNG

     文件          0  2013-06-02 03:54  C#如何实现图片查看器\description\559dec53-b86d-4d49-afe5-bd11e7885605Combined.css

     文件       3503  2013-06-02 03:54  C#如何实现图片查看器\description\9.PNG

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

评论

共有 条评论