Skip to content

Commit c1a922b

Browse files
committed
fix: Fix rendering order and remove unused variables
- Adjust the drawing order in NodeRenderer to ensure metadata inheritance is completed before rendering - Remove unused variable `j` in ListService and simplify logic
1 parent bb5996a commit c1a922b

File tree

4 files changed

+9
-8
lines changed

4 files changed

+9
-8
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
![Static Badge](https://img.shields.io/badge/Ver-LI26.14--A-blue)
1414
![Static Badge](https://img.shields.io/badge/License-AGPLv3-orange)
1515
[![CodeFactor](https://www.codefactor.io/repository/github/derakkumadev/limekuma-printer/badge)](https://www.codefactor.io/repository/github/derakkumadev/limekuma-printer)
16-
[![Codacy Badge](https://app.codacy.com/project/badge/Grade/679c7eab2c8d48af8069da446f5ff8ae)](https://app.codacy.com/gh/DerakkumaDev/limekuma-printer/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_grade)
16+
[![Codacy Badge](https://app.codacy.com/project/badge/Grade/34a3bb83aa2a4182ac748954c18aac89)](https://app.codacy.com/gh/DerakkumaDev/limekuma-printer/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_grade)
1717
[![QQ](https://img.shields.io/badge/Bot-迪拉熊-grey?style=social&logo=data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMTIuODIgMTMwLjg5Ij48ZyBkYXRhLW5hbWU9IuWbvuWxgiAyIj48ZyBkYXRhLW5hbWU9IuWbvuWxgiAxIj48cGF0aCBkPSJNNTUuNjMgMTMwLjhjLTcgMC0xMy45LjA4LTIwLjg2IDAtMTkuMTUtLjI1LTMxLjcxLTExLjQtMzQuMjItMzAuMy00LjA3LTMwLjY2IDE0LjkzLTU5LjIgNDQuODMtNjYuNjQgMi0uNTEgNS4yMS0uMzEgNS4yMS0xLjYzIDAtMi4xMy4xNC0yLjEzLjE0LTUuNTcgMC0uODktMS4zLTEuNDYtMi4yMi0yLjMxLTYuNzMtNi4yMy03LjY3LTEzLjQxLTEtMjAuMTggNS40LTUuNTIgMTEuODctNS40IDE3LjgtLjU5IDYuNDkgNS4yNiA2LjMxIDEzLjA4LS44NiAyMS0uNjguNzQtMS43OCAxLjYtMS43OCAyLjY3djQuMjFjMCAxLjM1IDIuMiAxLjYyIDQuNzkgMi4zNSAzMS4wOSA4LjY1IDQ4LjE3IDM0LjEzIDQ1IDY2LjM3LTEuNzYgMTguMTUtMTQuNTYgMzAuMjMtMzIuNyAzMC42My04LjAyLjE5LTE2LjA3LS4wMS0yNC4xMy0uMDF6IiBmaWxsPSIjMDI5OWZlIi8+PHBhdGggZD0iTTMxLjQ2IDExOC4zOGMtMTAuNS0uNjktMTYuOC02Ljg2LTE4LjM4LTE3LjI3LTMtMTkuNDIgMi43OC0zNS44NiAxOC40Ni00Ny44MyAxNC4xNi0xMC44IDI5Ljg3LTEyIDQ1LjM4LTMuMTkgMTcuMjUgOS44NCAyNC41OSAyNS44MSAyNCA0NS4yOS0uNDkgMTUuOS04LjQyIDIzLjE0LTI0LjM4IDIzLjUtNi41OS4xNC0xMy4xOSAwLTE5Ljc5IDAiIGZpbGw9IiNmZWZlZmUiLz48cGF0aCBkPSJNNDYuMDUgNzkuNThjLjA5IDUgLjIzIDkuODItNyA5Ljc3LTcuODItLjA2LTYuMS01LjY5LTYuMjQtMTAuMTktLjE1LTQuODItLjczLTEwIDYuNzMtOS44NHM2LjM3IDUuNTUgNi41MSAxMC4yNnoiIGZpbGw9IiMxMDlmZmUiLz48cGF0aCBkPSJNODAuMjcgNzkuMjdjLS41MyAzLjkxIDEuNzUgOS42NC01Ljg4IDEwLTcuNDcuMzctNi44MS00LjgyLTYuNjEtOS41LjItNC4zMi0xLjgzLTEwIDUuNzgtMTAuNDJzNi41OSA0Ljg5IDYuNzEgOS45MnoiIGZpbGw9IiMwODljZmUiLz48L2c+PC9nPjwvc3ZnPg==)](https://qun.qq.com/qunpro/robot/qunshare?robot_appid=102613765&robot_uin=3889525249)
1818
[![QQ](https://img.shields.io/badge/Bot-迪拉熊-gray?logo=qq&style=social)](https://qm.qq.com/cgi-bin/qm/qr?k=LyQOTRI7ViXYSTg0zbS2sGgcmkbYrxbP)
1919
[![QQ](https://img.shields.io/badge/Group-迪拉熊开发者交流群-gray?logo=qq&style=social)](https://qm.qq.com/cgi-bin/qm/qr?k=g-3hU7eFmvcFUuCKdCE-3COu8Ej9LfnD&jump_from=webapi&authKey=IpqRZXflOY9UKkYPn0Ho2RrVBw+UF2pfTZk6WnhU39idA4AyJt65nAwfuPfn1yZ+)

src/Render/NodeRenderer.Rendering.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -66,11 +66,11 @@ private static void RenderResizedNode(Image canvas, ResizedNode resize, AssetPro
6666
height = Math.Max(1, (int)Math.Round(height * resize.Scale));
6767
rendered.Mutate(ctx => ctx.Resize(width, height, GetResampler(resize.Resampler)));
6868
bool shouldInheritMetadata = canvas.Frames.Count <= 1 && rendered.Frames.Count > 1;
69-
canvas.Mutate(ctx => ctx.DrawImage(rendered, origin, inheritedOpacity, GetForegroundRepeatCount(rendered)));
7069
if (shouldInheritMetadata)
7170
{
7271
InheritCanvasFramesAndMetadataOnFirstDraw(canvas, rendered);
7372
}
73+
canvas.Mutate(ctx => ctx.DrawImage(rendered, origin, inheritedOpacity, GetForegroundRepeatCount(rendered)));
7474
}
7575

7676
private static void RenderStackNode(Image canvas, StackNode stack, AssetProvider assets, AssetProvider measurer,
@@ -272,12 +272,12 @@ private static void RenderImageNode(Image canvas, ImageNode image, AssetProvider
272272
}
273273

274274
bool shouldInheritMetadata = canvas.Frames.Count <= 1 && img.Frames.Count > 1;
275-
canvas.Mutate(c => c.DrawImage(img, origin, image.ColorBlending, image.AlphaComposition, inheritedOpacity,
276-
image.ForegroundRepeatCount));
277275
if (shouldInheritMetadata)
278276
{
279277
InheritCanvasFramesAndMetadataOnFirstDraw(canvas, img);
280278
}
279+
canvas.Mutate(c => c.DrawImage(img, origin, image.ColorBlending, image.AlphaComposition, inheritedOpacity,
280+
image.ForegroundRepeatCount));
281281
}
282282

283283
private static void RenderTextNode(Image canvas, TextNode textNode, AssetProvider assets, PointF origin,
@@ -375,11 +375,11 @@ private static void RenderCanvasNode(Image canvasImage, CanvasNode canvas, Asset
375375
{
376376
using Image subCanvas = Render(canvas, assets, measurer);
377377
bool shouldInheritMetadata = canvasImage.Frames.Count <= 1 && subCanvas.Frames.Count > 1;
378-
canvasImage.Mutate(c => c.DrawImage(subCanvas, origin, inheritedOpacity, GetForegroundRepeatCount(subCanvas)));
379378
if (shouldInheritMetadata)
380379
{
381380
InheritCanvasFramesAndMetadataOnFirstDraw(canvasImage, subCanvas);
382381
}
382+
canvasImage.Mutate(c => c.DrawImage(subCanvas, origin, inheritedOpacity, GetForegroundRepeatCount(subCanvas)));
383383
}
384384

385385
private static void InheritCanvasFramesAndMetadataOnFirstDraw(Image canvas, Image foreground)

src/Render/NodeRenderer.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -96,6 +96,9 @@ private static void RenderNode(Image canvas, Node node, AssetProvider assets, As
9696
case CanvasNode subCanvas:
9797
RenderCanvasNode(canvas, subCanvas, assets, measurer, origin, inheritedOpacity);
9898
break;
99+
100+
default:
101+
throw new NotImplementedException();
99102
}
100103
}
101104
}

src/Services/ListService.cs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,8 @@ public sealed partial class ListService : ListApi.ListApiBase
2020
int[] counts = new int[16];
2121
counts[15] = count;
2222

23-
int j = i;
2423
int end = Math.Min(i + 55, count);
2524
await ServiceHelper.PrepareRecordDataAsync(records[i..end]);
26-
j = end;
2725

2826
Parallel.ForEach(records, () => new int[15], (record, _, local) =>
2927
{
@@ -119,6 +117,6 @@ public sealed partial class ListService : ListApi.ListApiBase
119117
}
120118
});
121119

122-
return (counts, i, j);
120+
return (counts, i, end);
123121
}
124122
}

0 commit comments

Comments
 (0)