我正在尝试使用 C# 在 .NET 交互式笔记本中绘制简单的图形。有点像 Dr. Racket 的 C# 版本。
到目前为止我见过的最简单的事情是using System.Drawing
(SFML.NET、Raylib-cs 也可以工作,但它们会打开一个窗口来显示图形,而不是在笔记本内显示图形)。
我愿意尝试另一个推荐#r "nuget:<whatever>"
too.
该问题似乎与 MIME 类型有关,但我不确定。我得到了相同的结果.dib
and .ipynb
有没有办法使用类似的东西.Display()
并在笔记本中显示简单的图像?
Code
using System.Drawing;
//Bitmap bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
Bitmap bitmap = new Bitmap(200, 200);
Graphics graphics = Graphics.FromImage(bitmap);
Pen pen = new Pen(Color.Blue, 2);
graphics.DrawArc(pen, 0, 0, 100, 100, 0, 20);
//bitmap.Save("DrawArc.png");
//display(bitmap);
bitmap.Display();
Output
Tag PhysicalDimension Size Width Height HorizontalResolution VerticalResolution Flags RawFormat PixelFormat PropertyIdList PropertyItems FrameDimensionsList Palette
<null>
{ {Width=200, Height=200}: IsEmpty: False, Width: 200, Height: 200 }
{ {Width=200, Height=200}: IsEmpty: False, Width: 200, Height: 200 }
200
200
96
96
2
{ MemoryBMP: Guid: b96b3caa-0728-11d3-9d7b-0000f81ef32e }
Format32bppArgb
[ ]
[ ]
[ 7462dc86-6180-4c7e-8e3f-ee7333a7a483 ]
{ System.Drawing.Imaging.ColorPalette: Flags: 0, Entries: [ ] }
输出 2(使用 VS Code 插件“简单笔记本渲染器”)
<table><thead><tr><th>Tag</th><th>PhysicalDimension</th><th>Size</th><th>Width</th><th>Height</th><th>HorizontalResolution</th><th>VerticalResolution</th><th>Flags</th><th>RawFormat</th><th>PixelFormat</th><th>PropertyIdList</th><th>PropertyItems</th><th>FrameDimensionsList</th><th>Palette</th></tr></thead><tbody><tr><td><div class="dni-plaintext"><null></div></td><td><div class="dni-plaintext">{ {Width=200, Height=200}: IsEmpty: False, Width: 200, Height: 200 }</div></td><td><div class="dni-plaintext">{ {Width=200, Height=200}: IsEmpty: False, Width: 200, Height: 200 }</div></td><td><div class="dni-plaintext">200</div></td><td><div class="dni-plaintext">200</div></td><td><div class="dni-plaintext">96</div></td><td><div class="dni-plaintext">96</div></td><td><div class="dni-plaintext">2</div></td><td><div class="dni-plaintext">{ MemoryBMP: Guid: b96b3caa-0728-11d3-9d7b-0000f81ef32e }</div></td><td><div class="dni-plaintext">Format32bppArgb</div></td><td><div class="dni-plaintext">[ ]</div></td><td><div class="dni-plaintext">[ ]</div></td><td><div class="dni-plaintext">[ 7462dc86-6180-4c7e-8e3f-ee7333a7a483 ]</div></td><td><div class="dni-plaintext">{ System.Drawing.Imaging.ColorPalette: Flags: 0, Entries: [ ] }</div></td></tr></tbody></table>