## 物件導向程式設計實習期末報告
### 資訊一甲28號蔡宸睿
---
# 1.前言
### 現在格式越來越多,導致傳輸、分享和處理檔案時常遇到格式不相容的問題,開發一個格式轉換程式變得很重要。
### 這次報告製作一個能轉換常見圖片格式的程式,希望能改善問題。
---
# 2.動機
## 你有遇過這種情況嗎?

---
# 3.介面設計



---
# 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"}