Back to Claude Scientific Skills

PPTX poster release checklist

skills/pptx-posters/assets/poster_quality_checklist.md

2.55.08.3 KB
Original Source

PPTX poster release checklist

Use this checklist for the final generated package and every exported/printed derivative. A script pass is necessary but not sufficient.

1. Requirements and approval

  • The organizer's current poster rule is recorded with an exact source ID.
  • The printer's current trim, bleed, safe-margin, scaling, file-format, and color requirements are recorded with an exact source ID.
  • The selected physical trim size and orientation comply with those records.
  • No generic "standard poster size" was substituted for organizer/printer rules.
  • Every claim, number, citation, author name, affiliation, logo, figure, and asset license has an exact source ID.
  • Every source record is marked author-verified.
  • Every element and asset is marked author-approved.
  • No placeholder, sample claim, invented citation, or inferred result remains.
  • The approving author reviewed the canonical content hash after the final edit.

Run:

bash
python -B scripts/validate_manifest.py poster.json

2. Safe local generation

  • Generation used the exact versions in generation_dependencies.json.
  • All optional image paths are manifest-relative local PNG/JPEG files.
  • Every asset hash matches.
  • Every asset has exact provenance and a license/permission statement.
  • No template file, remote image, URL download, API key, environment file, image-generation service, or network service was used.
  • The output path was new; no existing file was replaced.
  • The generated file is .pptx, never .pptm.

Run:

bash
uv run --with "python-pptx==1.0.2" --with "Pillow==12.3.0" \
  --with "lxml==6.1.1" \
  python -B scripts/generate_poster.py poster.json --output poster.pptx

3. PPTX package security

  • ZIP member names have no traversal, absolute paths, symlinks, duplicates, encryption, oversized entries, or excessive expansion ratios.
  • The package has the standard macro-free PresentationML content type.
  • The package matches the strict generated one-slide part profile.
  • No VBA, ActiveX, OLE, embedded package, executable/binary payload, external link part, or custom UI is present.
  • No relationship has TargetMode="External".
  • No remotely linked image is present.
  • Internal relationship targets resolve to existing package parts.
  • The presentation was inspected as ZIP/XML and was not opened or executed by the inspection script.

Run:

bash
python -B scripts/inspect_pptx.py poster.pptx

Treat any package finding as a release blocker. Do not "fix" an untrusted package by opening it in PowerPoint.

4. Dimensions, scale, bleed, and margins

  • PowerPoint canvas width and height are each in the current 1–56 inch range.
  • Final physical trim dimensions are recorded separately from canvas dimensions.
  • Final artboard dimensions include twice the confirmed bleed on each axis.
  • Canvas and final artboard have the same aspect ratio.
  • Uniform print scale is explicit; no nonuniform stretching is allowed.
  • Printer permission is recorded if final output is scaled from the PPTX canvas.
  • All non-bleed content stays inside the confirmed safe margin from the trim edge.
  • Full-bleed imagery reaches the artboard edge and does not move text into bleed.
  • A physical or contract proof confirms trim and bleed behavior.

Run:

bash
python -B scripts/plan_export.py poster.json

5. Layout and typography

  • No shape is out of bounds.
  • Every reported bounding-box overlap is either removed or documented as intentional after visual inspection.
  • No text box visibly overflows, clips, wraps unexpectedly, or uses silent auto-shrink.
  • Font sizes were assessed at final physical output, not only on the PPTX canvas.
  • The manifest labels its minimum-font value as a project heuristic or ties it to an exact organizer/printer/source requirement.
  • Required fonts are available on the export workstation and printer workflow.
  • Font embedding rights and the chosen embed/not-embed workflow were reviewed; the generator itself did not embed fonts.
  • Font substitution, equations, symbols, and scientific glyphs were checked.
  • Visual hierarchy and reading path remain clear at reduced-scale proof size.

Run:

bash
python -B scripts/check_layout.py poster.pptx --manifest poster.json

The checker cannot determine rendered overflow or font substitution; inspect those in PowerPoint and in the exported PDF.

6. Raster images and assets

  • Effective DPI is calculated from pixel dimensions divided by final placed inches, not from file metadata.
  • Every placement meets the manifest's source-labeled or heuristic DPI threshold.
  • No image is stretched out of aspect ratio.
  • The final PDF and printer proof show no resampling artifacts.
  • Asset IDs, hashes, source IDs, provenance, permissions/licenses, and alt text are in the inventory.
  • EXIF, XMP, comments, and embedded text/application metadata were stripped in an author-reviewed offline workflow before hashing and approval.
  • Logos and images are authorized for this use.

Run:

bash
python -B scripts/inventory_images.py poster.json \
  --output poster.assets.json

7. Color and graphical accessibility

  • Normal text pairs meet WCAG 2.2 SC 1.4.3 at 4.5:1.
  • Large text pairs meet 3:1 only when final text is at least 18 pt, or at least 14 pt and bold.
  • Essential graphical objects meet the 3:1 non-text contrast screen where WCAG 2.2 SC 1.4.11 is being used as the design target.
  • Information is never encoded by color alone.
  • Categories also use direct labels, shapes, markers, patterns, or line styles.
  • Palette selection is appropriate to data type: qualitative, sequential, or diverging.
  • A grayscale/color-vision simulation is reviewed as a screen, not treated as proof of accessibility.
  • A color proof confirms the printer's conversion and substrate behavior.

Run:

bash
python -B scripts/check_palette.py poster.json

8. PowerPoint accessibility

  • Every picture has concise, accurate alt text that conveys purpose.
  • Complex figures have an approved source-bound native long description when alt text and adjacent prose are insufficient.
  • Important text is native text, not only pixels inside an image.
  • The visible title is the native slide-title placeholder and text language is correct.
  • The Reading Order pane matches the intended logical sequence.
  • The PowerPoint Accessibility Checker has no unresolved errors.
  • A keyboard and screen-reader pass confirms the actual reading order.
  • Text links have meaningful visible labels.
  • Every QR code has the exact destination URL in visible fallback text.
  • Each final printed QR code was tested with multiple devices.
  • Language, author names, acronyms, captions, and table alternatives are correct.

Automated XML inspection cannot certify these manual checks.

9. Export and print

  • Export uses PowerPoint's Standard/high print quality, not Minimum size.
  • No audio, video, linked media, OLE, ActiveX, embedded file, or external relationship was introduced after generation.
  • Exported PDF page size equals the final artboard expected by the printer.
  • Exported PDF is checked independently for tags, reading order, alt text, links, fonts, clipping, image quality, and page dimensions.
  • RGB is distinguished from any printer-required CMYK conversion.
  • If CMYK is required, the printer-approved conversion/profile and proof are complete; the native PowerPoint export is not represented as CMYK-compliant.
  • Conference file format, naming, file-size, and submission rules are met.
  • Printer deadline, substrate, mounting, delivery, and backup requirements are met.

10. Final sign-off

  • Presenting/corresponding author approved all scientific content and citations.
  • Accessibility reviewer completed manual checks.
  • Printer or production contact approved dimensions, bleed, scale, and color.
  • The exact approved manifest, PPTX hash, asset inventory, audit reports, exported PDF, and proof are retained together.
  • A final change triggers a new content hash, new author approval, regeneration, re-export, and all checks again.