2. 框選圖中物件程式

using Microsoft.VisualBasic;
using System.Drawing;

Console.WriteLine("開始繪製圖框!");
var reader = File.OpenText($"{AppDomain.CurrentDomain.BaseDirectory}/LabelData.txt");
string str;
try
{
    FileSystem.MkDir($"{AppDomain.CurrentDomain.BaseDirectory}/imageOUT");
}
catch (IOException e)
{

}
while ((str = reader.ReadLine()) != null)
{
    var data = str.Split(" ");
    var file = data[0];
    var n = int.Parse(data[1]);
    Console.WriteLine("在 ./" + file + " 圖檔中加框,以相同檔名存入 imageOUT 中");
    var map = (Bitmap)Bitmap.FromFile(AppDomain.CurrentDomain.BaseDirectory + "/" + file);
    for (int i = 0; i < n; i++)
    {
        var x1 = int.Parse(data[i * 4 + 2]);
        var y1 = int.Parse(data[i * 4 + 3]);
        var x2 = int.Parse(data[i * 4 + 4]);
        var y2 = int.Parse(data[i * 4 + 5]);
        for (int x = x1; x <= x2; x++)
        {
            map.SetPixel(x, y1, Color.Red);
            map.SetPixel(x, y2, Color.Red);
        }
        for (int y = y1; y <= y2; y++)
        {
            map.SetPixel(x1, y, Color.Red);
            map.SetPixel(x2, y, Color.Red);
        }
    }
    map.Save($"{AppDomain.CurrentDomain.BaseDirectory}/imageOUT/{file}");
}

Last updated