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.

Blurry output usually means the canvas does not contain enough pixels for the size at which jsPDF places it in the PDF. Set html2canvas’s scale deliberately, check the resulting canvas dimensions, and place the image at the intended PDF size without stretching it. This improves raster sharpness, but it does not turn the PDF’s text into resolution-independent, selectable text.

Why PDFs from jsPDF and html2canvas look blurry

In this workflow, html2canvas renders a representation of the page into a bitmap canvas. jsPDF then places that bitmap in the document. The canvas has a finite number of pixels; the PDF placement dimensions determine how large those pixels appear on the page. If a small canvas is enlarged to cover a large PDF area, text and fine details can look soft.

There are two separate questions to check: how many pixels html2canvas rendered, and how large jsPDF placed the resulting image. Increasing render scale adds source pixels. Changing the placement dimensions changes the image’s size in PDF units. One does not automatically correct a mismatch in the other.

Because this pipeline puts an image into the PDF, its text remains rasterized. Higher resolution can make that text look sharper at a given size, but it does not make it vector text or inherently searchable and selectable.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
#1 Best Overall
Brother DCP-L2640DW Wireless Compact Monochrome Multi-Function Printer, Copy, Scan, Duplex, Mobile Printing
  • BEST FOR SMALL BUSINESSES – Engineered for extraordinary productivity, the Brother DCP-L2640DW Monochrome (Black & White) 3-in-1 combines laser printer, scanner, copier in one compact footprint and delivers high-quality black & white prints
  • FAST PRINTER WITH EFFICIENT SCANNING – Produces documents quickly with print speeds up to 36 ppm(2) and scan speeds up to 23.6/7.9 ipm(3) (black/color). A 50-page auto document feeder(4) allows for convenient, time saving multi-page scanning and copying
  • FLEXIBLE CONNECTION OPTIONS – Easily navigate the changing demands of your business with secure multi-device connectivity via built-in dual-band wireless (2.4GHz / 5GHz) and Ethernet. Or connect locally to a single computer via USB interface
  • BROTHER MOBILE CONNECT APP – Print, scan, and manage your wireless printer anytime, from almost anywhere from your mobile device. Order Brother Genuine Supplies, track toner usage, and complete more work on-the-go(5)
  • CHOOSE BROTHER GENUINE TONER – When it’s time to replace your toner, be sure to choose Brother Genuine TN830 or TN830XL replacement toner. And with Refresh EZ Print Subscription Service, you’ll never worry about running out of toner again and you’ll enjoy savings of up to 50%(6) on Brother Genuine Toner. Get started with Refresh today with a Free Trial(1)

Fix the resolution and placement in order

1. Inspect the canvas before changing settings

Log the canvas’s pixel dimensions after rendering. Compare them with the physical width and height you pass to pdf.addImage(). A CSS width or PDF placement width is not a substitute for having enough source pixels in the canvas.

console.log(canvas.width, canvas.height);

Check the actual page or element being captured, not just the browser’s on-screen appearance. If the canvas dimensions are low relative to the area it must fill in the PDF, increase the render scale and test again.

2. Set html2canvas scale deliberately

The scale option controls render scale. Its default is window.devicePixelRatio, which can vary by device. Setting it explicitly makes the output more predictable across the devices you test. Start with a moderate value, such as 2, then inspect the PDF at its intended viewing or print size rather than assuming that the largest possible value is best.

Higher scale creates a larger canvas and uses more browser memory. Canvas dimension and area limits vary by browser and platform; an overly large canvas may be clipped or blank rather than simply sharper. Increase scale incrementally, especially for long pages.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #2
Brother HL-L2405W Wireless Compact Monochrome Laser Printer with Mobile Printing, Black & White Output | Includes Refresh Subscription Trial(1), Works with Alexa
  • BEST FOR HOMES & HOME OFFICES – Engineered for consistent, premium print quality, the Brother HL-L2405W Monochrome (Black & White) Laser Printer delivers sharp, crisp prints at an affordable price. Prints one-sided documents at speeds up to 30ppm(2)
  • COMPACT, CONNECTED PRINTER – Flexible connection options make this an ideal printer for home use and at-home offices. Securely connect to multiple devices with built-in dual-band wireless (2.4GHz/5GHz) or locally to a single computer via USB interface
  • BROTHER MOBILE CONNECT APP – Manage your printer remotely and print from your mobile device anytime, from almost anywhere. Order Brother Genuine Supplies, track toner usage, and complete more work on-the-go(3)
  • VERSATILE PAPER HANDLING – Enjoy seamless, reliable everyday printing with the 250-sheet paper tray(4) and a manual feed slot that enables printing on envelopes and specialty pape
  • BROTHER IS AT YOUR SIDE – Backed by Brother with a 1-year limited warranty and free online, call, or live chat support for the life of your printer

3. Place the image at the intended PDF size

Pass addImage() width and height in the units configured for the jsPDF document. Avoid enlarging a low-pixel canvas to cover a larger area than intended. If you need to preserve the image’s aspect ratio, calculate one dimension from the other rather than stretching width and height independently.

For example, if the canvas is canvas.width pixels wide and canvas.height pixels high, preserve that ratio when choosing the PDF dimensions: pdfHeight = pdfWidth * canvas.height / canvas.width. Choose pdfWidth to suit the page layout and the units used by your jsPDF document.

4. Check encoding only after the source resolution

Changing image format or quality can affect the encoded image, but it cannot restore detail that was missing from the canvas. If the output is soft, first verify the canvas pixel dimensions and PDF placement size. Then compare formats or quality settings only if encoding artifacts—not insufficient resolution—are the remaining problem.

Example: render a canvas and add it to a PDF

This is a starting configuration, not a guaranteed optimum for every page, browser, or PDF layout. It captures the element’s scroll dimensions, requests CORS-enabled images where the remote server permits them, and uses a scale of 2. The final width should match the layout you want in the PDF; the height below preserves the canvas aspect ratio.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #3
Sale
Canon imageCLASS LBP6030w - Monochrome Single-Function Wireless Compact Wireless Laser Printer, 1 Year Limited Warranty, 19 PPM, White - Print Only
  • FAST PRINT SPEEDS: Print up to 19 pages per minute.
  • COMPACT DESIGN: Space-saving, compact design fits anywhere in your home, school or small office.
  • WIRELESS CONNECTIVITY: Print from almost anywhere in your workspace using your compatible mobile device.
  • PAPER CAPACITY: Up to 150 sheets.
  • SUSTAINABILITY: Uses less than 2 watts in Energy Saver mode.
const canvas = await html2canvas(element, {
  scale: 2,
  windowWidth: element.scrollWidth,
  windowHeight: element.scrollHeight,
  useCORS: true
});

console.log("Canvas pixels:", canvas.width, canvas.height);

const image = canvas.toDataURL("image/png");
const pdfWidth = /* intended width in the jsPDF document's units */;
const pdfHeight = pdfWidth * canvas.height / canvas.width;

pdf.addImage(image, "PNG", x, y, pdfWidth, pdfHeight);

Define element, pdf, x, y, and pdfWidth for your page and document configuration. The example uses the scroll dimensions for the capture window to help include the full element; it does not remove browser canvas limits or guarantee that every CSS feature will render identically to a browser screenshot.

When the problem is not resolution

Text or styling differs from the page

html2canvas reconstructs a representation from DOM properties and supports a subset of CSS; it does not take an actual browser screenshot. If the PDF has missing or incorrectly rendered styling, raising scale may only produce a sharper version of the wrong rendering. Check the affected CSS and consider whether an image-based DOM reconstruction meets your fidelity needs.

Remote images are missing

Cross-origin rules can prevent remote images from appearing or make canvas data unreadable. useCORS: true can help only when the image host sends an appropriate Access-Control-Allow-Origin header. Otherwise, a suitable proxy may be needed. A larger render scale does not solve a CORS restriction.

Output is clipped, partial, or blank

Do not diagnose every incomplete PDF as a sharpness problem. Canvas dimension and area limits differ by browser and platform, and a very large canvas can produce blank or partial output. Test long content separately and reduce the canvas size or use a paginated workflow if the capture exceeds reliable limits.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #4
Brother HL-L2460DW Wireless Compact Monochrome Laser Printer with Duplex, Mobile Printing, Black & White Output | Includes Refresh Subscription Trial(1), Works with Alexa
  • BEST FOR HOME OFFICES & SMALL TEAMS – Engineered for consistent, premium print quality, the Brother HL-L2460DW Monochrome (Black & White) Laser Printer produces documents that are clear, crisp, and easy to review and share, all at an affordable price
  • COMPACT, CONNECTED, EXCEPTIONALLY EFFICIENT– Connect with built-in dual-band wireless (2.4GHz/5GHz), Ethernet, or to a single computer via USB interface. Prints at speeds up to 36ppm(2), plus automatic duplex printing saves time and reduces paper waste
  • BROTHER MOBILE CONNECT APP – Manage your wireless printer remotely and print from your mobile device anytime, from almost anywhere. Order Brother Genuine Supplies, track toner usage, and complete more work on-the-go(3)
  • VERSATILE PAPER HANDLING – Tackle high-volume black & white printing with the 250-sheet capacity paper tray.(4) The manual feed slot enables printing on envelopes and specialty paper
  • BROTHER IS AT YOUR SIDE – Backed by Brother with a 1-year limited warranty and free online, call, or live chat support for the life of your printer

Long pages, image quality, and text requirements

A single very tall canvas is convenient, but it is not always safe. Raising scale on a long page increases the pixel dimensions and memory demand further. Test representative long documents in the browsers and devices you support; do not assume that a scale value that works for a short page will work for an entire report.

If the document needs sharp, resolution-independent text, an image-based pipeline has a fundamental limit: its text is part of a bitmap. Decide whether the requirement is simply better-looking raster output at a particular page size, or text that remains crisp when zoomed and can be selected or searched. For the latter, investigate a rendering approach that preserves text rather than placing the whole page as an image. The available documentation does not establish the performance or capabilities of a particular alternative renderer.

For image elements inside the page, html2canvas exposes imageSmoothing and imageSmoothingQuality. CSS image-rendering can override global behavior unless forceImageQuality is enabled. These settings address resampling of image elements; they do not increase the overall pixel budget of the page canvas.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Troubleshooting checklist

Symptom What to check Next action
Text and edges look uniformly soft Canvas pixel dimensions versus the PDF placement size Raise scale incrementally and avoid enlarging the placed image beyond the intended size.
PDF is blurry on one device but not another Whether output relies on the default window.devicePixelRatio Set scale explicitly and compare output in the target browsers and devices.
PDF is blank or cuts off a long page Canvas dimensions and area; limits vary by browser and platform Reduce the capture size or paginate; test long content rather than raising scale further.
One or more remote images are absent Cross-origin access and the image host’s CORS response Try useCORS: true when the host allows it, or use a suitable proxy.
Elements look wrong even at high scale Whether the CSS or DOM feature is supported by html2canvas Treat it as a rendering-fidelity issue, not a pixel-density issue.
Images look resampled poorly while text is otherwise sharp imageSmoothing, imageSmoothingQuality, and CSS image-rendering Adjust the smoothing behavior for the image elements; this will not add page-level pixels.

Or skip the browser setup

If your goal is a website screenshot rather than a PDF generated from your own DOM and jsPDF pipeline, ScreenshotNeo offers a one-request screenshot API. It is not a fix for a blurry jsPDF PDF, and the example returns a screenshot image, not a PDF.

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.
Best Value
HP LaserJet M209dw Wireless Printer, Print, Fast speeds, Easy Setup, Mobile Printing, Best-for-Small Teams, Instant Ink Eligible
  • HP LaserJet M209dw Wireless Printer, Print, Fast speeds, Easy setup, Mobile printing, Best-for-small teams, Instant Ink eligible
  • Perfect for small teams printing black & white documents and reports, plus auto two-sided printing. Perfect for 1-5 people
  • FASTEST TWO-SIDED PRINTING IN ITS CLASS – Up to 30 black-and-white pages per minute single-sided, u up to 19 black-and-white images per minute two-sided printing
  • DUAL-BAND WI-FI WITH SELF-RESET – Automatically detects and resolves connectivity issues
  • STRONG SECURITY – Built-in security features help protect your printer from potential attacks

For API options and response details, see the ScreenshotNeo documentation.

curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
  • Before capture, it accepts cookie or consent banners like a visitor and removes 60+ known consent platforms, newsletter popups, and chat widgets; each step can be turned off.
  • Bot checks or CAPTCHAs, blank pages, timeouts, failed loads, and cache hits cost nothing; response headers identify the page verdict and whether the request was billed.
  • An MCP server provides take_screenshot, get_page_info, and capture_pdf tools for AI agents and MCP clients.
  • The Free plan includes 1,000 shots per month without a card; paid plans start at $5 for 3,000 shots. Every feature is available on every plan.

Sign up for 1,000 free screenshots a month, with no card required.

Frequently Asked Questions

Does increasing html2canvas scale make PDF text searchable?

No. It increases the resolution of the raster image; text remains image-based in this workflow.

Why does scale 2 still produce a blurry or incomplete PDF?

The canvas may still be stretched too far, or the issue may be unsupported CSS, cross-origin images, or browser canvas limits rather than scale.

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

Should I set scale to the highest value my device accepts?

No. Higher values increase canvas size and memory use, and browser limits vary. Increase incrementally and test the actual document and target browsers.

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.