|
@@ -172,6 +172,38 @@ namespace IES.ExamServer.Controllers
|
|
|
}
|
|
|
return Ok(new { code = code });
|
|
|
}
|
|
|
+ /*
|
|
|
+ public void AddLogoToImage(string originalImagePath, string logoImagePath, string outputPath)
|
|
|
+{
|
|
|
+ // 加载原始图片和logo图片 这段代码假设logo图片小于原始图片,如果logo较大,需要调整logo的大小或位置以确保它不会超出原始图片边界。
|
|
|
+ using (var originalBitmap = SKBitmap.Decode(originalImagePath))
|
|
|
+ using (var logoBitmap = SKBitmap.Decode(logoImagePath))
|
|
|
+ using (var surface = SKSurface.Create(originalBitmap.Info, originalBitmap.Pixels))
|
|
|
+ {
|
|
|
+ // 创建画布
|
|
|
+ var canvas = surface.Canvas;
|
|
|
+
|
|
|
+ // 绘制原始图片
|
|
|
+ canvas.DrawBitmap(originalBitmap, 0, 0);
|
|
|
+
|
|
|
+ // 计算logo位置
|
|
|
+ float logoX = (originalBitmap.Width - logoBitmap.Width) / 2;
|
|
|
+ float logoY = (originalBitmap.Height - logoBitmap.Height) / 2;
|
|
|
+
|
|
|
+ // 绘制logo到画布
|
|
|
+ canvas.DrawBitmap(logoBitmap, logoX, logoY);
|
|
|
+
|
|
|
+ // 保存最终图片
|
|
|
+ using (var image = surface.Snapshot())
|
|
|
+ using (var output = File.Create(outputPath))
|
|
|
+ {
|
|
|
+ image.Encode(SKEncodedImageFormat.Png, 100).SaveTo(output);
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+
|
|
|
+ */
|
|
|
/// <summary>
|
|
|
/// 登录模式初始化
|
|
|
/// </summary>
|
|
@@ -186,7 +218,7 @@ namespace IES.ExamServer.Controllers
|
|
|
{
|
|
|
case bool when $"{type}".Equals("qrcode"):
|
|
|
{
|
|
|
- // 生成二维码图片
|
|
|
+ // 生成二维码图片.NET Core使用SkiaSharp快速生成二维码 https://cloud.tencent.com/developer/article/2336486
|
|
|
Random random = new Random();
|
|
|
randomCode = $"{random.Next(1000, 9999)}";
|
|
|
string? CenterUrl = _configuration.GetValue<string>("ExamServer:CenterUrl");
|