AutoPatientInfoRecorder/src/AntdUI/Lib/SVG/Document Structure/SvgGroup.cs
(开头部分) 3KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
// THIS FILE IS PART OF SVG PROJECT
// THE SVG PROJECT IS AN OPENSOURCE LIBRARY LICENSED UNDER THE MS-PL License.
// COPYRIGHT (C) svg-net. ALL RIGHTS RESERVED.
// GITHUB: https://github.com/svg-net/SVG
using System.Drawing;
using System.Drawing.Drawing2D;
namespace AntdUI.Svg
{
/// <summary>
/// An element used to group SVG shapes.
/// </summary>
public class SvgGroup : SvgMarkerElement
{
public override string ClassName { get => "g"; }
bool markersSet = false;
/// <summary>
/// If the group has marker attributes defined, add them to all children
/// that are able to display markers. Only done once.
/// </summary>
private void AddMarkers()
{
if (!markersSet)
{
if (MarkerStart != null || MarkerMid != null || MarkerEnd != null)
{
foreach (var c in Children)
{
if (c is SvgMarkerElement)
{
if (MarkerStart != null && ((SvgMarkerElement)c).MarkerStart == null)
{
((SvgMarkerElement)c).MarkerStart = MarkerStart;
}
if (MarkerMid != null && ((SvgMarkerElement)c).MarkerMid == null)
{
((SvgMarkerElement)c).MarkerMid = MarkerMid;
}
if (MarkerEnd != null && ((SvgMarkerElement)c).MarkerEnd == null)
{
((SvgMarkerElement)c).MarkerEnd = MarkerEnd;
}
}
}
}
markersSet = true;
}
}
/// <summary>
/// Add group markers to children before rendering them.
/// This is only done on first rendering.
/// </summary>
/// <param name="renderer">The <see cref="ISvgRenderer"/> to render the child <see cref="SvgElement"/>s to.</param>
protected override void Render(ISvgRenderer renderer)
{
AddMarkers();
后面还有 48 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。