91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 64KB
    文件類型: .zip
    金幣: 2
    下載: 1 次
    發布日期: 2021-05-14
  • 語言: C#
  • 標簽: 裁剪圖片??矩形選框??

資源簡介

一個簡單的通過在PictureBox控件內建立可移動的矩形選框裁剪圖片的小程序

資源截圖

代碼片段和文件信息

using?System;
using?System.Collections.Generic;
using?System.ComponentModel;
using?System.Data;
using?System.Drawing;
using?System.Drawing.Imaging;
using?System.Drawing.Drawing2D;
using?System.Linq;
using?System.Text;
using?System.Threading.Tasks;
using?System.Windows.Forms;
using?System.IO;

namespace?PicCut
{
????public?partial?class?MainWindow?:?Form
????{
????????private?const?int?AreaWidth?=?512;???????//pictureBox控件的最大寬度
????????private?const?int?AreaHeight?=?384;?????//pictureBox控件的最大高度
????????//此寬高比為6:10,因具體需要而設,實際上可無高寬比限制

????????private?Rectangle?m_Rect;????????????????????//?矩形選框,用于截取圖片

????????private?bool?canMove?=?false;??????????????//指定鼠標移動事件是否需要響應

????????private?int?mouseLocationX?=?0;??????????//初始化鼠標當前X坐標
????????private?int?mouseLocationY?=?0;??????????//初始化鼠標當前Y坐標

????????private?string?picPath?=?null;???????????????//圖片路徑
???????
????????public?MainWindow()
????????{
????????????InitializeComponent();
????????}

????????/*
?????????*?圖片裁剪方法
?????????*?param?b:需裁剪的圖片位圖
?????????*?param?StartX:裁剪起始X坐標
?????????*?param?StartY:裁剪起始Y坐標
?????????*?param?iWidth:裁剪寬度
?????????*?param?iHeight:裁剪高度
?????????*?*/
????????public?static?Bitmap?KiCut(Bitmap?b?int?StartX?int?StartY?int?iWidth?int?iHeight)
????????{
????????????if?(b?==?null)
????????????{
????????????????return?null;
????????????}

????????????int?w?=?b.Width;
????????????int?h?=?b.Height;
????????????if?(StartX?>=?w?||?StartY?>=?h)
????????????{
????????????????return?null;
????????????}

????????????if?(StartX?+?iWidth?>?w)
????????????{
????????????????iWidth?=?w?-?StartX;
????????????}

????????????if?(StartY?+?iHeight?>?h)
????????????{
????????????????iHeight?=?h?-?StartY;
????????????}
????????????try
????????????{
????????????????Bitmap?bmpOut?=?new?Bitmap(iWidth?iHeight?PixelFormat.Format24bppRgb);
????????????????Graphics?g?=?Graphics.FromImage(bmpOut);
????????????????g.DrawImage(b?new?Rectangle(0?0?iWidth?iHeight)?new?Rectangle(StartX?StartY?iWidth?iHeight)?GraphicsUnit.Pixel);
????????????????g.Dispose();
????????????????return?bmpOut;
????????????}
????????????catch
????????????{
????????????????return?null;
????????????}
????????}

????????/*
?????????*?圖片載入按鈕單擊事件響應
?????????*?*/
????????private?void?load_Click(object?sender?EventArgs?e)
????????{
????????????using?(OpenFileDialog?openDlg=new?OpenFileDialog())
????????????{
????????????????openDlg.InitialDirectory?=?“.“;
????????????????openDlg.Filter?=?“JPG?File(*.jpg)|*.jpg|JPEG?File(*.jpeg)|*.jpeg|PNG?File(*.png)|*.png|BMP?File(*.bmp)|*.bmp“;
????????????????openDlg.RestoreDirectory?=?true;
????????????????openDlg.FileName?=?“sourcePic“;
????????????????if?(openDlg.ShowDialog()?==?DialogResult.OK)
????????????????{
????????????????????picPath?=?openDlg.FileName;
????????????????????if?(picPath?!=?null?&&?System.IO.File.Exists(picPath))
????????????????????{
????????????????????????//根據圖片原始

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2012-09-01?08:56??PicCut\
?????目錄???????????0??2012-09-01?08:59??PicCut\PicCut\
?????文件?????????908??2012-09-01?08:56??PicCut\PicCut.sln
?????文件???????35328??2012-09-01?19:48??PicCut\PicCut.v11.suo
?????文件?????????187??2012-09-01?08:56??PicCut\PicCut\App.config
?????目錄???????????0??2012-09-01?08:59??PicCut\PicCut\bin\
?????目錄???????????0??2012-09-01?18:32??PicCut\PicCut\bin\Debug\
?????文件???????15872??2012-09-01?19:47??PicCut\PicCut\bin\Debug\PicCut.exe
?????文件?????????187??2012-09-01?08:56??PicCut\PicCut\bin\Debug\PicCut.exe.config
?????文件???????30208??2012-09-01?19:47??PicCut\PicCut\bin\Debug\PicCut.pdb
?????文件???????22984??2012-09-01?19:47??PicCut\PicCut\bin\Debug\PicCut.vshost.exe
?????文件?????????187??2012-09-01?08:56??PicCut\PicCut\bin\Debug\PicCut.vshost.exe.config
?????文件?????????490??2010-03-17?22:39??PicCut\PicCut\bin\Debug\PicCut.vshost.exe.manifest
?????目錄???????????0??2012-09-01?08:59??PicCut\PicCut\bin\Release\
?????文件???????14004??2012-09-01?19:47??PicCut\PicCut\MainWindow.cs
?????文件????????6000??2012-09-01?18:42??PicCut\PicCut\MainWindow.Designer.cs
?????文件????????5817??2012-09-01?18:42??PicCut\PicCut\MainWindow.resx
?????目錄???????????0??2012-09-01?08:56??PicCut\PicCut\obj\
?????目錄???????????0??2012-09-01?19:47??PicCut\PicCut\obj\Debug\
?????文件????????1278??2012-09-01?18:32??PicCut\PicCut\obj\Debug\DesignTimeResolveAssemblyReferences.cache
?????文件????????6835??2012-09-01?08:59??PicCut\PicCut\obj\Debug\DesignTimeResolveAssemblyReferencesInput.cache
?????文件?????????569??2012-09-01?19:47??PicCut\PicCut\obj\Debug\PicCut.csproj.FileListAbsolute.txt
?????文件?????????980??2012-09-01?18:42??PicCut\PicCut\obj\Debug\PicCut.csproj.GenerateResource.Cache
?????文件????????2143??2012-09-01?09:09??PicCut\PicCut\obj\Debug\PicCut.csprojResolveAssemblyReference.cache
?????文件???????15872??2012-09-01?19:47??PicCut\PicCut\obj\Debug\PicCut.exe
?????文件?????????180??2012-09-01?18:42??PicCut\PicCut\obj\Debug\PicCut.MainWindow.resources
?????文件???????30208??2012-09-01?19:47??PicCut\PicCut\obj\Debug\PicCut.pdb
?????文件?????????180??2012-09-01?09:09??PicCut\PicCut\obj\Debug\PicCut.Properties.Resources.resources
?????文件???????????0??2012-09-01?08:56??PicCut\PicCut\obj\Debug\TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
?????文件???????????0??2012-09-01?08:56??PicCut\PicCut\obj\Debug\TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
?????文件???????????0??2012-09-01?08:56??PicCut\PicCut\obj\Debug\TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
............此處省略9個文件信息

評論

共有 條評論