## 物件導向程式設計實習期末報告 ### 資訊一甲28號蔡宸睿 --- # 1.前言 ### 現在格式越來越多,導致傳輸、分享和處理檔案時常遇到格式不相容的問題,開發一個格式轉換程式變得很重要。 ### 這次報告製作一個能轉換常見圖片格式的程式,希望能改善問題。 --- # 2.動機 ## 你有遇過這種情況嗎? ![image](https://hackmd.io/_uploads/Byogro34R.png =700x) --- # 3.介面設計 ![image](https://hackmd.io/_uploads/HyjJW22VR.png ) ![image](https://hackmd.io/_uploads/r1xb-h240.png ) ![image](https://hackmd.io/_uploads/Sk8wE0h4A.png) --- # 4.設計解說 ## 程式分區 - 標頭檔 - 初始化 - 上傳檔案 - 儲存檔案 ## 標頭檔 ```C#=9 using System.IO; ``` System.IO提供處理檔案的方法 ## 初始化 ```C#=16 public Form1() { InitializeComponent(); comboBox1.DropDownStyle = ComboBoxStyle.DropDownList; comboBox1.Items.Add("png"); comboBox1.Items.Add("jpeg"); comboBox1.Items.Add("webp"); comboBox1.Items.Add("gif"); comboBox1.Items.Add("bmp"); comboBox1.Items.Add("svg"); comboBox1.Items.Add("tiff"); comboBox1.Items.Add("raw"); comboBox1.Items.Add("dng"); upload_file.Location=new System.Drawing.Point(538, 308); label1.Visible = false; panel1.Visible = false; } ``` ## 上傳檔案 ```C#=34 private void button1_Click(object sender, EventArgs e) { String location = ""; try { OpenFileDialog dialog = new OpenFileDialog(); dialog.Filter = "AllFiles(*.*)|*.*"; if (dialog.ShowDialog() == System.Windows.Forms.DialogResult.OK) { location = dialog.FileName; pictureBox1.ImageLocation = location; string FileExtension = Path.GetExtension(dialog.FileName).TrimStart('.'); label2.Text = "原始格式:" + FileExtension; label1.Visible = true; panel1.Visible = true; upload_file.Location = new System.Drawing.Point(239, 620); } } catch { MessageBox.Show("Error!", "error",MessageBoxButtons.OK,MessageBoxIcon.Error); } } ``` ## 儲存檔案 ```C#=58 private void button2_Click(object sender, EventArgs e) { SaveFileDialog dialog = new SaveFileDialog(); dialog.Filter = comboBox1.Text+" files(*."+comboBox1.Text+")|*."+comboBox1.Text; try { if(dialog.ShowDialog() == DialogResult.OK) { pictureBox1.Image.Save(dialog.FileName); } } catch { MessageBox.Show("Error!", "error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } ``` --- # 5.成果展示 --- # 6.未來展望 # 兩個方向 1. 加深 2. 加廣 # 加深 - 更多格式 - 自動辨識 # 加廣 - 影像處理 --- # 7.參考資料 [System.IO 命名空間](https://learn.microsoft.com/zh-tw/dotnet/api/system.io?view=net-8.0)
{"title":"物件導向程式設計實習期末報告","contributors":"[{\"id\":\"7cec0248-cff9-4c3f-a001-22aa0e54de62\",\"add\":6267,\"del\":3730}]","description":"imageimage"}
    134 views