Captorify

Guide

Why full-page screenshots break and how to fix them

First check whether the missing content was loaded and visible to the capture method. Delayed images, independently scrolling panels, embedded documents and oversized pages cause different failures. Use the symptom below to choose a targeted fix.

Match the symptom to the next check

Scroll sideways to read all columns.

Symptom Likely condition to checkAction
Blank image slot Image has not loadedScroll into view, wait, recapture
Table stops after a few rows Inner scrolling or virtualizationExpand, export or capture sections
Embedded page is cut off The iframe viewport is smaller than its documentOpen the document directly if available
Header repeats or disappears Capture method and sticky-header preparation differCompare the result with capture settings
Bottom is missing or capture fails Work or memory limit, incomplete loading, or changing page heightCheck warnings and capture smaller sections

Delayed image: before and after loading

In our Chrome 152 automation run, the first full-page JPEG was 1265 × 7915 pixels but the lower image was still unloaded. Scrolling to the bottom loaded it; a second capture included it.

Repeat with a fresh fixture page to compare the states. Loading the top image does not prove a distant image is ready.

Example capture test page with a fixed header and a demonstration billing dashboard
Original Chrome 152 browser-automation JPEG, 1280 × 800 output pixels from a viewport at device-pixel ratio 1. All account details are invented. This is the test page, not a Captorify interface.

Inner scrolling: expose the actual content

The fixture’s 12-row invoice panel initially shows a 256-pixel-high viewport of 751 pixels of content. The Expand panel link makes that content part of the outer page’s scrollable layout.

This workaround is specific to an expandable panel. For virtualized application tables, an export or several overlapping captures may be necessary.

Invoice panel showing only the rows that fit within its scrollable viewport
The panel contains 12 rows but its visible content height is 256 CSS pixels. A screenshot of the outer page does not reveal the hidden rows.
The same example invoice panel expanded to reveal its inner content
After using the fixture’s Expand panel link, its content and scroll heights both measure 751 CSS pixels. The page can now scroll through all 12 rows. The browser tool returned a 1265 × 791 JPEG from the 1280 × 800 viewport.

Fixed headers and embedded documents

Count the fixed header in the output instead of assuming every screenshot method repeats it. Captorify can hide eligible sticky and fixed overlays during capture when its setting is enabled; Chrome’s native screenshot mechanism is separate.

For the embedded-document test, compare the 200-pixel frame with the document opened directly. The fixture is same-origin, while a real application may have different access and rendering rules.

Very tall pages: inspect content, not only dimensions

The downloadable tall fixture contains 400 rows, each 100 CSS pixels high. In our Chrome 153 DevTools Protocol run, the saved PNG measured 40,000 pixels high but repeated earlier rows and omitted row 400. The Firefox 151 Playwright full-page request returned a protocol error above 32,767 pixels and saved no file. Neither observation establishes the limit of the browser screenshot menus.

Captorify 0.2.12 saved two PNG parts in each tested browser, 32,000 and 8,000 pixels high, with row 400 visible in part 2 and no capture warning. The extension still has tile and part-count limits, so inspect the final row and any warning on your own page.

Save useful sections when one image is impractical

Capture the relevant sections with a small, intentional overlap. Keep their order clear, redact private fields, then combine them into a readable PDF.

If the source screenshot is complete but its text looks fuzzy, investigate resizing or compression separately. Repeating the same full-page capture will not fix a small chat preview.