If text inside an input is clipped after a font change, first wait for the intended font to load and the page to lay out again; then check the input’s content-box height, line height, and vertical padding. html2canvas draws input values using captured styles and clips them to the input’s content box, so font readiness and inner geometry are the most useful first checks. Neither is a guaranteed fix: the exact cause depends on the browser, font, CSS, and html2canvas release.
Why an input’s text can be cropped
html2canvas does not simply take a photograph of the browser’s rendered pixels. It reconstructs a page image by reading DOM and computed style information and drawing elements. Its input-rendering implementation reads font styles and size, obtains font metrics, draws the input value, and clips that drawing to the input’s content box. That makes both the styles available at capture time and the size of the inner text area relevant. The link between those implementation details and a particular crop is a diagnostic inference, not proof that every case has the same cause. html2canvas canvas renderer source
A font loaded asynchronously can leave a brief interval in which the input still uses a fallback face or has not yet been laid out with the intended face. Fonts differ in glyph metrics, so a control sized for one face may not leave enough room for another. Vertical padding, line height, and borders also affect the space available inside the control.
There is a related, but not identical, historical report: a user reported changed word and letter spacing after dynamically loading a font with JavaScript, but not when that font was loaded statically through CSS. The report concerned spacing rather than cropped input text, and used html2canvas 1.0.0-rc.5 in Chrome 80 on Ubuntu 19; it does not establish behavior in current releases. Historical dynamic-font spacing report
Quick wins for a faster PC:
Clear out junk files and repair common Windows errorsFree Scan →Scan for outdated or missing drivers - takes under a minuteDriver Scan →#1 Best Overall
- CRISP CLARITY: This 23.8″ Philips V line monitor delivers crisp Full HD 1920x1080 visuals. Enjoy movies, shows and videos with remarkable detail
- INCREDIBLE CONTRAST: The VA panel produces brighter whites and deeper blacks. You get true-to-life images and more gradients with 16.7 million colors
- THE PERFECT VIEW: The 178/178 degree extra wide viewing angle prevents the shifting of colors when viewed from an offset angle, so you always get consistent colors
- WORK SEAMLESSLY: This sleek monitor is virtually bezel-free on three sides, so the screen looks even bigger for the viewer. This minimalistic design also allows for seamless multi-monitor setups that enhance your workflow and boost productivity
- A BETTER READING EXPERIENCE: For busy office workers, EasyRead mode provides a more paper-like experience for when viewing lengthy documents
Diagnose the crop before changing code
- Confirm the font actually in use. In the browser’s developer tools, inspect the input’s computed
font-familyafter the change. Check whether it names the intended face and whether the web font has finished loading. If it still shows or renders as a fallback, capture only after the font-loading work has completed. - Wait for style application and layout. Compare a capture taken immediately after changing the font with one taken after the font is ready and the browser has had a chance to recalculate layout. An immediate-only failure points toward timing; a crop that persists after layout settles calls for checking geometry and CSS support.
- Inspect the input’s inner dimensions. Check computed
height,line-height, verticalpadding, andborder. Temporarily increase the input height or reduce vertical padding. If the clipping boundary moves, the content-box dimensions are a strong suspect. - Locate the clipping edge. Determine whether letters are cut off at the inside edge of the input or whether a larger part of the page or canvas is missing. These are different problems: an input’s internal text clip is not the same as an undersized output canvas.
- Reduce the case. Reproduce the issue with one input and the smallest relevant CSS and font-loading code. Record browser and version, operating system, html2canvas version, input styles, how the font is loaded, and whether loading it statically changes the result.
html2canvas’s FAQ notes that CSS properties must be implemented individually and that the library does not support all CSS. For a missing or incomplete property, its guidance is to create a test case and open an issue. A minimal reproduction is more useful than assuming a browser screenshot and html2canvas will render every style identically. html2canvas FAQ
Wait for web fonts before capturing
For a page using the browser’s Font Loading API, wait for the document’s font-loading set before calling html2canvas. For a dynamically inserted font, also make sure the code that inserts or applies the font has run before the wait. This example assumes the page and html2canvas are already loaded and that the input is available in the DOM:
async function captureAfterFonts() {
await document.fonts.ready;
const input = document.querySelector("input");
if (!input) {
throw new Error("No input found to capture");
}
const styles = getComputedStyle(input);
console.log("Input font:", styles.fontFamily, styles.fontSize, styles.lineHeight);
return html2canvas(document.body);
}
captureAfterFonts().then((canvas) => {
document.body.appendChild(canvas);
}).catch((error) => {
console.error("Capture failed:", error);
});
document.fonts.ready is a browser-side timing check; it does not guarantee that the selected face is the one you intended, that every style is supported, or that the input has enough height. Inspect computed styles as well. If the font is added or changed after this function begins, wait until that operation finishes before starting the capture.
Rank #2
- CRISP CLARITY: This 22 inch class (21.5″ viewable) Philips V line monitor delivers crisp Full HD 1920x1080 visuals. Enjoy movies, shows and videos with remarkable detail
- 100HZ FAST REFRESH RATE: 100Hz brings your favorite movies and video games to life. Stream, binge, and play effortlessly
- SMOOTH ACTION WITH ADAPTIVE-SYNC: Adaptive-Sync technology ensures fluid action sequences and rapid response time. Every frame will be rendered smoothly with crystal clarity and without stutter
- INCREDIBLE CONTRAST: The VA panel produces brighter whites and deeper blacks. You get true-to-life images and more gradients with 16.7 million colors
- THE PERFECT VIEW: The 178/178 degree extra wide viewing angle prevents the shifting of colors when viewed from an offset angle, so you always get consistent colors
If a stylesheet’s font request fails, the browser may settle on a fallback face rather than leave the promise pending indefinitely. Therefore, verify the computed font and the browser’s network/font-loading status instead of treating a completed wait as confirmation of the correct typeface.
The Tool Desk
Outbyte PC Repair FREERepair Windows errors before they cause bigger problemsFix Now →Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →Check and adjust the input’s content box
Compare the control’s usable inner height with the glyphs rendered in the intended font. A temporary style change can establish whether geometry is involved:
const input = document.querySelector("input");
if (input) {
input.style.height = "2.5em";
input.style.paddingBlock = "0.2em";
input.style.lineHeight = "1.2";
}
This is an experiment, not a universal set of recommended dimensions. Use values appropriate to the page’s design, and retest in the browser and html2canvas. Inputs can have browser- and CSS-dependent sizing behavior, so inspect the computed result after applying changes rather than assuming a declared height equals the available text area.
Rank #3
- Clear visuals. Fluid motion: A 144Hz refresh rate and 1ms MPRT deliver smooth, tear‑free motion across work, gaming, and streaming for clearer, more fluid viewing.
- Eye comfort: TÜV Rheinland 3‑star* certification reduces harmful blue light while preserving stunning color quality without compromise. *TÜV Rheinland 3-star eye comfort certification.
- Wide viewing angle: Get consistent views across a wide 178° /178° viewing angle.
- In-Plane Switching (IPS): See excellent color accuracy and consistency across wide viewing angles with In-plane Switching (IPS) technology.
- Ultra-thin bezels: Maximize your viewing experience with thin bezels.
Make the permanent adjustment in the stylesheet if the test resolves the clipping. Check for rules that set a tight fixed height, large vertical padding, an unusual line height, or a font size that changed independently of the control’s dimensions. If increasing the control height has no effect, return to font readiness, computed font selection, and possible unsupported styling instead of continuing to enlarge it blindly.
Use capture-only overrides to isolate the cause
html2canvas provides an onclone callback for changes to the cloned document used for capture. It can help test a larger input or a fallback font without changing the live page. The configuration documentation describes onclone and output controls including width, height, crop offsets x and y, and scale. html2canvas configuration
const canvas = await html2canvas(document.body, {
onclone(clonedDocument) {
const input = clonedDocument.querySelector("input");
if (input) {
input.style.height = "2.5em";
// Diagnostic only: compare with the intended font and existing styles.
input.style.fontFamily = "Arial, sans-serif";
}
}
});
Change one variable at a time. If a larger height fixes the clone, geometry is implicated; if a fallback font changes the result, font metrics or font handling is implicated. These observations narrow the problem but do not by themselves establish a general fix. Remove diagnostic overrides or turn only a verified adjustment into a capture-specific workaround.
Rank #4
- CURVED FOR ENHANCED ENGAGEMENT: An immersive viewing experience with a curved monitor that wraps more closely around your field of vision; It creates a wider view, enhancing depth perception and minimizing peripheral distraction
- SMOOTH PERFORMANCE FOR SEAMLESS CONTENT: Stay in the action when playing games, watching videos, or working on creative projects; The 100Hz refresh rate reduces lag and motion blur so you don't miss a thing in fast-paced moments¹
- MORE GAMING POWER: Gain the edge with optimizable game settings; Color and image contrast can be adjusted to see scenes more vividly and spot enemies hiding in the dark; Game Mode adjusts any game to fill the screen so you can view every detail²
- KEEP IT EASY ON THE EYES: Care for your eyes and stay comfortable, even during long sessions; Advanced eye comfort technology certified by TÜV reduces eye strain by minimizing blue light and reducing irritating screen flicker²
- INCREASED VERSATILITY: Connect to more; Plug devices straight into your monitor for increased flexibility, making your computing environment even more convenient
Tell input clipping apart from canvas clipping
If the entire output or a large region is cut off, blank, or missing at the canvas boundary, the html2canvas FAQ suggests setting windowWidth and windowHeight to the element’s scroll dimensions, and notes that browser canvas limits vary. That guidance addresses output sizing, not glyphs clipped at the edge of an input’s own content box. html2canvas FAQ
const element = document.querySelector("#capture");
if (!element) throw new Error("Capture element not found");
const canvas = await html2canvas(element, {
windowWidth: element.scrollWidth,
windowHeight: element.scrollHeight
});
Do not expect a larger canvas, a different crop offset, or a higher scale to restore letters already clipped while drawing inside the input. Use output-size settings only when the missing content is at the page or canvas edge.
Common symptoms and fixes
| Symptom | Likely area to investigate | Next step |
|---|---|---|
| Crop occurs only when capturing immediately after a font change | Font loading or style/layout timing | Wait for the font-loading operation and compare with a capture after layout settles. |
| Crop remains after the intended font is active | Input content-box height, padding, line height, or CSS handling | Inspect computed dimensions and test a modest height or padding change. |
| Only the input’s letters are clipped at its interior edge | The renderer’s input content-box clip | Investigate the control’s font and geometry; canvas dimensions are unlikely to address this specific boundary. |
| A whole page region is missing or the output canvas is cut off | Capture viewport/output dimensions or browser canvas limits | Try the FAQ’s scroll-dimension guidance for windowWidth and windowHeight. |
| A style adjustment works in the browser but not in the capture | Potentially incomplete CSS support or a difference in capture-time styles | Create a minimal reproduction and report the installed release, browser, OS, styles, and font-loading method. |
Or skip the browser setup
If you need a rendered page image rather than a client-side html2canvas canvas, ScreenshotNeo provides a website screenshot API. One GET request returns an image or PDF; this example requests a WebP screenshot. See the ScreenshotNeo documentation for request options.
Best Value
- 【INTEGRATED SPEAKERS】Whether you're at work or in the midst of an intense gaming session, our built-in speakers provide rich and seamless audio, all while keeping your desk clutter-free.
- 【EASY ON THE EYES】 Protect your eyes and enhance your comfort with Blue-Light Shift technology. This feature reduces harmful blue light emissions from your screen, helping to alleviate eye strain during long hours of use and promoting healthier viewing habits.
- 【WIDEN YOUR PERSPECTIVE】Our sleek minimal bezel design ensures undivided attention. The nearly bezel-free display seamlessly connects in a dual monitor arrangement, delivering an unobstructed view that lets you focus on more at once, completely distraction-free.
curl -G "https://api.screenshotneo.com/v1/shot"
-d access_key=YOUR_API_KEY
--data-urlencode url=https://stripe.com
-o shot.webp
ScreenshotNeo accepts cookie or consent banners before capture and removes more than 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 are not billed, and response headers indicate the page verdict and billing status. It also offers an MCP server for AI agents, with tools including take_screenshot, get_page_info, and capture_pdf. Free includes 1,000 screenshots per month with no card; paid plans start at $5 for 3,000. Visit ScreenshotNeo to see the service, or sign up free for 1,000 screenshots a month with no card.
When the problem persists
Prepare a reproducible report with the exact capture code and a small page that isolates the input. Include:
- html2canvas version, browser and version, and operating system.
- The input’s relevant CSS and computed font family, size, line height, height, padding, and border.
- How the font is supplied (for example, a stylesheet or JavaScript insertion) and when the capture starts relative to the font change.
- Whether the same font loaded statically behaves differently, and whether the problem is inside the input or at the outer canvas boundary.
- A minimal example demonstrating the result, as recommended by the project FAQ for CSS behavior that may be unsupported or incomplete.
This separates an application timing or sizing issue from a potentially incomplete renderer behavior and gives maintainers a case they can reproduce.
Frequently Asked Questions
Will setting html2canvas scale fix clipped input letters?
Not when the letters are clipped at the input’s own content-box boundary. Scale changes output resolution; inspect font readiness and input geometry for an internal text clip.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Does html2canvas support every CSS property?
No. Its FAQ says CSS properties must be implemented manually and advises a test case and issue report for missing or incomplete CSS behavior.
Is the old dynamic-font issue proof that current html2canvas crops input text?
No. The report concerned spacing in html2canvas 1.0.0-rc.5, Chrome 80 on Ubuntu 19, not input text cropping or current releases.
Quick Recap
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.

