The example assembles a three-page order manifest with explicit sizes. Source A intends portrait A1 and A2; source B intends landscape B1. Default order A1,A2,B1 has two 215.9×279.4mm pages and one 279.4×215.9mm page, with metadata from A. Reversing the document order explicitly chooses B metadata. The local planner does not render HTML or create a PDF.

Render sources under their own styles
Give A the title Practice packet A and B the title Practice packet B. Each intended page visibly carries its stable ID. US Letter is 8.5 by 11 inches, which yields 215.9 by 279.4mm using 25.4mm per inch; landscape reverses the dimensions. Keep those expectations beside actual rendered dimensions. Overflow, substituted fonts, and blank pages can change the observed page count, so three intended pages remain a requirement to test rather than evidence that a renderer produced exactly three.
WeasyPrint's rendering interface exposes Document and individual Page objects, and documents that pages can have different sizes. Confirm the installed version and applicable API before executing the native workflow. Render A and B separately with their own stylesheet and resource base. Inspect each result's page count, labels, sizes and required content before combining anything. Concatenating body contents creates one rendering context with potentially different selectors and pagination, so test its pagination separately from assembly of already rendered pages.
Make the ordered list explicit
The intended native list contains A's first and second pages followed by B's first page. Bind each entry to source revision, rendered-document identity, native page index, visible page ID, dimensions and final sequence position. The page lets you edit the order as IDs and rejects unknown, duplicate or missing pages for this bounded packet. A directory listing or incidental filename order should not decide the reading sequence. An absent source must hold the assembly instead of silently dropping its section.
For native implementation, use the chosen first rendered document's copy operation over the explicit combined Page list, then write the PDF. Keep the actual output path and byte fingerprint only when an artifact exists. A manifest describes the intended packet; inspecting the written PDF confirms what was produced. An exception-free render is not proof that required content or fonts appeared, and a visually correct first page is not evidence that the remaining order survived.
Decide metadata independently
Default A1,A2,B1 chooses title Practice packet A from A. The reversed B1,A1,A2 case deliberately chooses B as the metadata source and expects Practice packet B. Do not claim both titles automatically merge because both documents contribute pages. A real packet needing a custom title or combined metadata requires a separately specified policy. This exercise also does not promise preserved cross-document links, forms, bookmarks or continuous counters, and it does not merge arbitrary existing PDFs.
Finish by inspecting every page and the document title in a native PDF reader. Record warnings, resources, fonts, actual dimensions and final sequence beside the manifest. After changing sources, page order, rendering options, or dependencies, render and inspect the resulting PDF again. Preserve historical packets with their own revisions. The planner helps make those expectations reviewable before running the native renderer, while leaving the PDF as the authoritative deliverable.
Make your own working example
Build an original rendered-page manifest planner, not a PDF renderer or downloader. A has intended US Letter portrait pages A1/A2, each 215.9x279.4mm, title Practice packet A. B has landscape B1,279.4x215.9mm, title Practice packet B. Default order A1,A2,B1 with metadata from A.
Provide editable comma-separated page order, Build manifest, A then B, B then A, Missing-source scenario, and Reset. B then A sets order B1,A1,A2 and explicitly selects B metadata. Validate this bounded packet requires each of A1,A2,B1 exactly once; missing/unknown/duplicate IDs or unavailable source holds assembly. Do not silently omit a page. Show final position, page ID, source and dimensions together and separately show chosen metadata title.
Label outputs planned, not rendered. Explain independent source styles/resource bases, native rendered Page objects and installed WeasyPrint version confirmation. Include a final-reader checklist for actual order, dimensions, title, resources and content. No fabricated PDF bytes, export button, font success, cross-document link guarantee or native execution. Edits clear the old manifest.
Use one self-contained HTML file with no remote dependency. Keep the initial sample, output, and labeled controls near the top. Use at least 16px text, strong contrast, visible focus, and a stacked layout at 360px without horizontal overflow. Use explicit type=button click handlers and explicit DOM selectors; do not depend on native form submission. Clear stale feedback when task inputs change. Render entered text safely. Keep practice data local to the current page; do not imply saving, sending, or production integration. Return only the finished HTML.
Review the page-order note
Keep native source renders and final PDF evidence together. For a readable HTML manifest, NOS allows eligible static explanations to be revised visually without AI regeneration. Clarify the chosen metadata source before someone checks the finished PDF title.