SVG rendering
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 48/100
- Loại issue
- Tính năng
- Độ rõ ràng
- Đặc tả rõ ràng
- Mức độ hoạt động
- Đình trệ
- Công nghệ
- rust
- Lĩnh vực
- computer-graphics
Hướng nghiên cứu
Bắt đầu với biểu diễn IrGraph và điểm vào writer của trình kết xuất SVG được mô tả trong issue. Xác nhận cách các vị trí bố cục, điểm cạnh, hộp cluster và thuộc tính kết xuất được cung cấp. Được coi là hoàn tất khi tạo ra SVG hợp lệ với viewBox đã nêu, các cluster, cạnh, node, nhãn nhiều dòng đã được escape, kiểu dáng đã được phân giải và padding.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
The SVG renderer walks a fully laid-out `IrGraph` and emits an SVG document as a string. SVG is generated directly as XML text using a small writer helper for indentation and escaping, with no external SVG library.
The rendering order is: compute the total bounding box from all node positions, edge points, and cluster boxes, adding margin from the `pad` attribute (default 4pt); emit the `` root with a `viewBox`; render clusters as `` elements with a background rectangle and label; render edges as `` elements (polyline or cubic Bezier) with inline arrowhead polygons; render nodes as `` elements containing the shape and a `` label. Multi-line labels using Graphviz's `\n`, `\l`, and `\r` escape sequences are split into multiple `` elements with explicit `dy` offsets. The `color`, `fillcolor`, `fontcolor`, `fontsize`, `fontname`, `bgcolor`, `margin`, and `pad` attributes are all resolved during rendering.
References
- Ngôn ngữ chính
- Rust
- Star
- 0
- Fork
- 0
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Chuẩn bị môi trường
Dự án này không cung cấp dev container, Dockerfile hay hướng dẫn đóng góp, nên bạn cần tự thiết lập môi trường: hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của terror/dotgraph
-
Expose public `render` apiĐang mởenhancement
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 45/100
-
Style resolutionĐang mởenhancement
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 45/100
-
Arrowhead geometryĐang mởenhancement
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 35/100
-
Node shape geometryĐang mởenhancement
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 25/100
-
Edge routingĐang mởenhancement
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 25/100
Tất cả issue của terror/dotgraph
Issue tương tự
-
`sysknife history --help` says --since takes ISO-8601, and the parser refuses offsets and bare datesĐang mởbug easy good first issue help wanted
Độ khó 1/5 1-3 giờ Mức phù hợp với người mới 94/100
lacs-project/sysknife#519 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
enhancement
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 72/100
-
area:breg bug criticality:p3 triage:needs-implementation
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
registrystack/registry-stack#1699 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
documentation
Độ khó 1/5 1-3 giờ Mức phù hợp với người mới 84/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
lbjlaq/Antigravity-Manager#3539 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày