Przeglądaj źródła

Fix 2025.12.0 regression: merged documents rendered content incorrectly for second and subsequent documents

Marcin Ziąbek 1 miesiąc temu
rodzic
commit
64db89f4f8
1 zmienionych plików z 5 dodań i 4 usunięć
  1. 5 4
      Source/QuestPDF/Drawing/DocumentGenerator.cs

+ 5 - 4
Source/QuestPDF/Drawing/DocumentGenerator.cs

@@ -155,21 +155,22 @@ namespace QuestPDF.Drawing
             
             
             try
             try
             {
             {
-                foreach (var documentPart in documentParts)
-                    documentPart.PageContext.SetDocumentId(documentPart.DocumentId);
-                
                 foreach (var documentPart in documentParts)
                 foreach (var documentPart in documentParts)
                 {
                 {
+                    documentPart.PageContext.SetDocumentId(documentPart.DocumentId);
                     RenderPass(documentPart.PageContext, semanticDocumentCanvas, documentPart.Content);
                     RenderPass(documentPart.PageContext, semanticDocumentCanvas, documentPart.Content);
-                    documentPart.PageContext.ProceedToNextRenderingPhase();
                 }
                 }
 
 
+                foreach (var documentPart in documentParts)
+                    documentPart.PageContext.ProceedToNextRenderingPhase();
+                
                 canvas.ConfigureWithSemanticTree(semanticTreeManager);
                 canvas.ConfigureWithSemanticTree(semanticTreeManager);
                 
                 
                 canvas.BeginDocument();
                 canvas.BeginDocument();
 
 
                 foreach (var documentPart in documentParts)
                 foreach (var documentPart in documentParts)
                 {
                 {
+                    documentPart.PageContext.SetDocumentId(documentPart.DocumentId);
                     RenderPass(documentPart.PageContext, canvas, documentPart.Content);
                     RenderPass(documentPart.PageContext, canvas, documentPart.Content);
                     documentPart.Content.ReleaseDisposableChildren();
                     documentPart.Content.ReleaseDisposableChildren();
                 }
                 }