Files
IOT_SIM/runtime/Sim.WinForms/Drawing/ImageFormat.cs
T
xuyueandClaude Opus 5.5 6b088240da
CI/CD / test (push) Canceled after 0s
CI/CD / deploy (push) Canceled after 0s
项目 4 任务 2 网络摄像机:PictureBox、Image / Bitmap、照片列表
- 摄像头:自绘东围墙场景(Camera/scene.svg),按云台位置切成 640×480 帧(build-frames.ts);
  Pan 每次转一格,红外对射被遮挡时画面出现翻墙的人;类名、委托、事件参数与教材 dll 一致,
  ImageRead 每 250 ms 在后台线程触发
- Image / Bitmap 保存真实图片数据:Save、FromFile、FromStream,文件夹不存在时报 GDI+ 一般性错误;
  图片每张只发给浏览器一次(按内容哈希缓存)
- 程序所在目录(AppDomain.CurrentDomain.BaseDirectory,编译检查单独放行)和当前目录指向可写的 bin/Debug,
  沙箱里在沙箱的临时目录
- PictureBox(SizeMode、BorderStyle);设计器工具箱加"图片框";运行区显示程序保存的图片,点开看大图;
  实训台摄像头图标显示开启状态
- 评分规则加图片框显示图片、摄像头开关与转向、保存图片三种检查;示例 p4-t2-网络摄像机
- 测试:摄像头端到端、图片读写与程序目录、AppDomain 编译检查、评分出错情况

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 20:58:09 +08:00

24 lines
772 B
C#

namespace System.Drawing.Imaging;
/// <summary>图片格式。Image.Save 时只用来对应文件类型,不做格式转换</summary>
public sealed class ImageFormat
{
private readonly string _name;
private ImageFormat(string name, string mimeType)
{
_name = name;
MimeType = mimeType;
}
internal string MimeType { get; }
public static ImageFormat Jpeg { get; } = new("Jpeg", "image/jpeg");
public static ImageFormat Png { get; } = new("Png", "image/png");
public static ImageFormat Gif { get; } = new("Gif", "image/gif");
public static ImageFormat Bmp { get; } = new("Bmp", "image/bmp");
public static ImageFormat Icon { get; } = new("Icon", "image/x-icon");
public override string ToString() => _name;
}