Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Some links on this page are affiliate links: if you buy through them we may earn a commission, at no extra cost to you.

html2canvas is not a browser screenshot tool. It walks the document tree, reads the information available there, and builds a new image. Paper.js, meanwhile, draws its main scene into an HTML <canvas>. A dialog that appears alongside that drawing may be ordinary HTML, a component in an overlay or shadow root, an iframe, or pixels painted into the Paper.js canvas. Those cases look identical to a user but require different fixes.

The missing paper-dialog report does not prove that the element is outside <body>, nor does it establish a single cause such as portals, timing or CSS. Inspect the actual rendering tree first, then choose between DOM reconstruction, Paper.js export, canvas capture or a native browser screenshot.

What html2canvas actually captures

The html2canvas documentation describes a renderer that traverses the DOM of the page, gathers information about elements and uses it to build a representation. It does not ask the browser for the already-composited pixels on screen. Consequently, an element can be visible to a person and still be absent, incomplete or different in the generated image.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  • DOM content: Text, boxes and many CSS properties can be reconstructed when the nodes are in the document html2canvas can read.
  • Canvas content: A canvas is a bitmap surface. html2canvas may include the canvas element, but it does not recover every drawing operation or guarantee a pixel-identical copy of the browser’s composition.
  • Browser boundaries: Cross-origin iframe documents are inaccessible to the page and cannot be rendered as if they were local DOM.
  • Unsupported CSS: CSS properties are implemented individually; the FAQ warns that support is incomplete.

This distinction explains why “it is on the screen” is not sufficient evidence that a dialog will appear in an html2canvas result.

#1 Best Overall
Wacom Intuos Small, Wired Graphic Drawing Tablet with Pen + Software
  • Wacom Intuos Small Graphics Drawing Tablet: Enjoy industry leading tablet performance in superior control and precision with Wacom's EMR, battery free technology that feels like pen on paper
  • Works With All Software: Wacom Intuos tablet can be used in any software program to explore new facets of digital creativity; draw, paint, edit photos/videos, create designs, and mark up documents
  • What the Professionals Use: Wacom's industry leading pen technology and pen to paper feeling makes it the preferred drawing tablet of professional graphic designers
  • Software and Training Included: Only Wacom gives you software with every purchase. Register your Intuos tablet and gain access to some of the best creative software and Wacom's online training
  • Wacom is the Global Leader in Drawing Tablet and Displays: For over 40 years in pen display and tablet market, you can trust that Wacom to help you bring your vision, ideas and creativity to life

What “Paper.js dialog” can mean

Paper.js uses Canvas as its main graphics backend. Its FAQ explains that this choice provided a fast backend and control over its scene graph. The name paper-dialog does not, by itself, identify where pixels come from.

A regular HTML dialog

The dialog may be a <div>, <dialog> or custom element styled with HTML and CSS. In that case, html2canvas can usually render it if the node is in the captured document subtree, visible at capture time and using supported styles.

An overlay, portal or shadow-root component

Many UI systems append overlays near document.body, render them in a separate root, or attach them to a shadow root. The element can be visually over the canvas while not being a descendant of the selector you passed. A shadow root or portal is a diagnostic possibility, not a confirmed explanation for the reported case.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Content painted inside the Paper.js canvas

A rectangle, label and buttons can be drawn as Paper.js items. There is no dialog element for html2canvas to traverse; the pixels exist only in the canvas bitmap. Export the Paper.js project or capture the canvas instead of looking for a DOM selector.

Rank #2
Sale
XPPen Deco 01 V3 10x6 Drawing Tablet, 16K Battery-Free Stylus, 8 Keys
  • Word-first 16K Pressure Levels: The upgraded stylus features 16,384 levels of pressure sensitivity and supports up to 60 degrees of tilt, delivering smoother lines and shading for a natural drawing experience. With no battery or charging needed, it operates like a real pen, making it easy for beginners to create effortlessly. This functionality helps novice artists develop their skills and explore their creativity without the intimidation of complex tools
  • Designed for Beginners: This drawing pad desinged with 8 customizable shortcuts for both right and left-hand users, express keys create a highly ergonomic and convenient work platform
  • Perfectly Adapted for Android: The XPPen Deco 01 V3 art tablet supports connections with Android devices running version 10.0 and above. It is recommended to download the XPPen Tools Android application, which adapts to your smartphone's screen aspect ratio, ensuring accurate mapping. It also supports mapping on Android screens with different aspect ratios in portrait mode
  • Large Drawing Space, Bigger Bold Inspiration: This expansive drawing pad has10 x 6.25-inch helps you break through the limit between shortcut keys and drawing area
  • Easy Connectivity for Beginners: The Deco 01 V3 offers USB-C to USB-C connectivity, plus adapters for USB C. This ensures easy connection to various devices, allowing beginner artists to set up quickly and focus on their creativity without compatibility concerns. Whether using a laptop, tablet, or desktop, the Deco 01 V3 provides a seamless experience, making it an ideal choice for those just starting their digital art journey

An iframe

If the visible UI belongs to an iframe, inspect its origin. html2canvas cannot read a cross-origin frame’s document because of browser security restrictions. A same-origin frame can be handled separately when your code has access to its document.

Diagnose the missing box before changing code

  1. Inspect the live element. In DevTools, use the element picker while the dialog is open. Check whether the selected node is under the element passed to html2canvas, under another document, inside a shadow root or inside an iframe.
  2. Check the capture boundary. If you call html2canvas(document.body), only descendants of that body in the current document are candidates. A component mounted elsewhere will not be pulled in merely because it overlaps the body visually.
  3. Verify visibility at the instant of capture. Wait until the dialog’s open class, dimensions and text are present. A transition, delayed mount or immediately removed node can produce an empty result.
  4. Identify the rendering source. In DevTools, determine whether the dialog is HTML or whether the apparent box is drawn on the Paper.js canvas. For a canvas drawing, inspect the Paper.js project rather than searching the DOM.
  5. Check frames and resources. Record iframe origins and look for console errors. Images, fonts or other resources that fail security checks can change the result.
  6. Enable error reporting. html2canvas exposes an onError callback in its configuration. Log failures while reproducing the capture so a blocked resource is not mistaken for a missing element.

A minimal, reliable DOM capture

Capture the smallest ancestor that genuinely contains the HTML dialog and the part of the canvas you need. Waiting for a selector avoids racing the UI mount.

import html2canvas from 'html2canvas';

async function captureEditor() {
  const root = document.querySelector('#editor-shell');
  if (!root) throw new Error('editor shell not found');

  const dialog = root.querySelector('paper-dialog, [role="dialog"]');
  if (!dialog) throw new Error('dialog is not in this capture subtree');

  // Call this after your application has opened the dialog.
  const canvas = await html2canvas(root, {
    backgroundColor: '#ffffff',
    useCORS: true,
    logging: true,
    onError(error) {
      console.error('html2canvas resource/render error', error);
    }
  });

  const link = document.createElement('a');
  link.download = 'editor.png';
  link.href = canvas.toDataURL('image/png');
  link.click();
}

Replace #editor-shell with an ancestor confirmed in DevTools. useCORS can help with servers that send appropriate cross-origin headers; it cannot bypass browser security policy. If the dialog is in an iframe, capture that document from code running in the frame (when same-origin) or use a browser-level screenshot.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

If the dialog is really Paper.js artwork

Do not try to make html2canvas discover pixels that have no DOM representation. Paper.js documents SVG export methods such as project.exportSVG() and item.exportSVG(). SVG is preferable when you need vector output or want to preserve scene-graph geometry.

Rank #3
Sale
XPPen Artist 13.3 Pro V2 Drawing Tablet with Screen, 16K, Full-Laminated
  • PLEASE NOTE:XPPen Artist13.3 Pro drawing tablet Need to connect with computer,you need to use it with your computer or laptop, the 3 in 1 cable is included
  • Drawing Tablet with Screen: Tilt Function- XPPen Artist 13.3 Pro supports up to 60 degrees of tilt function, so now you don't need to adjust the brush direction in the software again and again. Simply tilt to add shading to your creation and enjoy smoother and more natural transitions between lines and strokes
  • Graphics Tablets: High Color Gamut- The 13.3 inch fully-laminated FHD Display pairs a superb color accuracy of 88% NTSC (Adobe RGB≧91%,sRGB≧123%) with a 178-degree viewing angle and delivers rich colors, vivid images, and dazzling details in a wider view. Your creative world is now as powerful as it is colorful
  • Drawing Pad: One is enough- The sleek Red Dial on the display is expertly designed with creators in mind, its strategic placement allows for natural drawing postures. With just one wheel, you can effortlessly zoom in and out, adjust brush sizes, and flip the canvas—all tailored to suit the habits of everyday artists. The 8 customizable shortcut keys allow you to personalize your setup, streamlining your workflow and enhancing creative efficiency
  • Universal Compatibility & Software Support:supports Windows 7 (or later), Mac OS X 10.10 (or later), Chrome OS 88 (or later), and Linux systems. Fully compatible with major creative software including Photoshop, Illustrator, SAI, and Blender 3D. Register your device to access additional programs like ArtRage 5 and openCanvas for expanded creative possibilities.
// Export the active Paper.js project as SVG text
const svg = paper.project.exportSVG({ asString: true });
const blob = new Blob([svg], { type: 'image/svg+xml' });
const url = URL.createObjectURL(blob);
const a = document.createElement('a');
a.href = url;
a.download = 'drawing.svg';
a.click();
URL.revokeObjectURL(url);

For a bitmap of the drawing, capture the canvas element itself:

const paperCanvas = document.querySelector('canvas');
if (!paperCanvas) throw new Error('Paper.js canvas not found');
paperCanvas.toBlob(blob => {
  if (!blob) throw new Error('canvas export failed');
  const a = document.createElement('a');
  a.href = URL.createObjectURL(blob);
  a.download = 'paper-drawing.png';
  a.click();
}, 'image/png');

A canvas made “tainted” by images from servers without suitable CORS headers cannot be exported with toBlob or toDataURL. Fix the image server policy, host the asset appropriately, or use a browser screenshot that runs in a controlled environment.

Choosing the right output

Goal Recommended method Important constraint
HTML dialog and nearby DOM html2canvas on a containing ancestor Node must be in the readable document and use supported CSS
Paper.js scene as editable/vector artwork project.exportSVG() or item.exportSVG() Exports the Paper.js scene, not unrelated browser chrome
Paper.js bitmap only Canvas toBlob() or toDataURL() Cross-origin images can taint the canvas
Exact visible composition, including overlays and frames Native browser screenshot mechanism or screenshot API Must run in an environment that can access the required frame and resources

Common failures and fixes

The selector exists, but the image omits it

Log element.isConnected, its bounding rectangle and its owner document immediately before capture. If it is disconnected, zero-sized or mounted outside the selected ancestor, fix the application state or capture a higher, correct ancestor.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The box is present but its text or styles are wrong

Capture after fonts and transitions settle. Then test the specific CSS property in isolation; html2canvas’s FAQ makes clear that CSS support is not complete. Use simpler styles for export or switch to a browser-native screenshot when visual fidelity matters more than a DOM-derived image.

Rank #4
Sale
HUION Inspiroy H640P 6x4 inch Drawing Tablet 8192 Pen Pressure
  • Customize Your Workflow: The 6 customizable press keys on Huion H640P drawing tablet for pc let you assign your most-used commands—like undo, zoom, brush switch, or save—so you can keep your hands on the tablet and your mind on the art. Whether you're a digital painter switching brushes, or a comic artist zooming in and out, these keys keep your workflow smooth and uninterrupted. Plus, the Huion driver lets you save different shortcut profiles for different apps, so you never have to reconfigure when switching software.
  • Professional Pen Performance: Huion H640P drawing pad for computer comes with the battery-free PW100 stylus that's always ready when inspiration strikes. With 8192 levels of pressure sensitivity, every light sketch, or bold stroke responds naturally to your hand—just like a real pen. The 5080 LPI resolution and 233 PPS report rate deliver lag-free, precise strokes, so you can draw confidently without second-guessing your cursor. The pen side buttons help you switch between pen and eraser instantly.
  • Compact and Portable: Huion H640P computer graphics tablet features a compact, ultra-portable design at just 0.3 inches thin and 0.61 lbs light, so it slides easily into your backpack—perfect for sketching in coffee shops, taking notes in class, or editing on the go between home and studio. The 6x4 inch active area offers enough room for natural pen movements while fitting comfortably on crowded desks, or lecture hall seats.
  • Stable Compatibility: Huion H640P graphic drawing tablet works seamlessly with Mac, Windows, Linux PCs, and Android smartphones/tablets (OS version 6.0 or later). Left-handed friendly, and you just need to flip the tablet and adjust the settings in the driver. Please note: H640P does NOT support iPhone/iPad.
  • Move Beyond the Mouse: Huion Inspiroy H640P is a pen tablet that replaces your mouse for more natural, precise control. Freehand draw, take notes, or even play OSU—everything you do with a mouse, you can do better with a pen. The precise tip makes it ideal for detailed photo editing, graphic design, or signing PDF. Meanwhile, the ergonomic pen grip helps you avoid the strain that comes from hours of using a mouse.

Only an iframe’s area is blank

Confirm origin. Cross-origin content cannot be traversed by html2canvas. Ask the framed application for an export, capture it within that application, or use an external browser automation context with legitimate access.

Images disappear or the render fails

Inspect console messages, response headers and the onError log. useCORS: true is not a permission grant; the remote server must allow the requesting origin, and a proxy may be required where policy permits.

The dialog appears only intermittently

Remove timing ambiguity: await the code that opens it, wait for a stable selector, force the desired viewport and disable animation during capture. Recheck that no cleanup handler closes it when focus changes.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Or skip the browser setup

When the requirement is a screenshot of the complete page rather than a Paper.js export, ScreenshotNeo provides a one-request API. It accepts the cookie or consent banner like a visitor, removes more than 60 known consent platforms plus newsletter popups and chat widgets before capture, and reports whether a response was a clean shot or a non-billable failure.

Read the full parameter reference in the ScreenshotNeo documentation. cURL:

Best Value
Sale
HUION Inspiroy H1060P Graphics Drawing Tablet, 10 x 6.25 in, 12+16 Hot Keys
  • Working Area Configuration - HUION art tablet equips with a 10 x 6.25 inches working area, providing the user with the most comfortable size to work; the 10mm slim structure and minimalist design of appearance make the drawing tablet more attractive.
  • Tilt Function Battery-free Stylus: This computer graphics tablet come with a battery-free stylus PW100, no need to charge, allowing for constant uninterrupted drawing. ±60° tilt support enables imitation of lines input with diverse drawing gestures, with accuracy ensured.
  • Press Keys:12 programmable press keys plus 16 programmable soft keys, you can set shortcut keys on drawing tablet's driver based on your preferences, such as erase, zoom in/out, scroll up and down, and so on.
  • Compatibility: HUION graphics tablet supports Windows 7 or later/ macOS 10.12 or later/ Android 6.0 or later/ Linux (Ubuntu). A USB adapter is required to connect to a Mac computer. H1060P supports various mainstream design and drawing software, including PS, SAI, AI, CDR, etc. (Please note: The H1060P is compatible with Ubuntu, but it requires the use of the Xorg display server. Wayland is not supported.)
  • NOTE: You can easily connect your phone to the art tablet via the OTG connector; while iPhone and iPad are NOT at the moment. The cursor will not show up in the SAMSUNG Galaxy S series at present. If you are not sure whether the product is compatible with your Phone or any help, please contact us.
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp

Python:

import requests
r = requests.get("https://api.screenshotneo.com/v1/shot", params={"access_key": "YOUR_API_KEY", "url": "https://stripe.com"}, timeout=90)
open("shot.webp", "wb").write(r.content)

Node.js:

const q = new URLSearchParams({ access_key: 'YOUR_API_KEY', url: 'https://stripe.com' });
const res = await fetch(`https://api.screenshotneo.com/v1/shot?${q}`);

Bot checks or CAPTCHAs, blank pages, timeouts, failed loads and cache hits are not billed, and response headers identify the page verdict and billing status. The MCP server offers take_screenshot, get_page_info and capture_pdf tools for Claude, Cursor and other MCP clients. Every plan includes the features; 1,000 screenshots per month are free with no card, and paid plans start at $5 for 3,000. Create a free ScreenshotNeo account.

Practical checklist

  • Decide whether you need DOM, Paper.js scene, canvas bitmap or browser pixels.
  • Confirm the dialog’s live document, ancestor, frame and shadow boundary.
  • Capture only after the dialog is mounted, visible and stable.
  • Use onError, console logs and network headers to diagnose failed resources.
  • Use SVG or canvas export for Paper.js-only output; use a native screenshot for full composition.

Frequently Asked Questions

Does putting the dialog under document.body guarantee capture?

No. It must also be inside the specific subtree passed to html2canvas, visible at capture time, and representable by the renderer. A shadow root, iframe or canvas-painted dialog still requires separate handling.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Can html2canvas export a Paper.js project as SVG?

No. SVG export is a Paper.js operation, using methods such as project.exportSVG() or item.exportSVG(). html2canvas produces a raster canvas from readable page information.

Will useCORS solve every missing-image problem?

No. It only enables CORS-aware loading; the remote server must send compatible headers, and browser security rules still apply.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.