If Hindi text is missing or appears as empty boxes in a Playwright screenshot, the browser runtime probably cannot access a font with Devanagari glyphs. Install a suitable font package in the same Ubuntu environment that runs the browser, then rebuild that environment if it is a container and test the page there. A font installed only on your host will not automatically be available inside Docker or a separate CI runner.
Install a Devanagari font where Playwright runs
Hindi is written in Devanagari, so the browser needs access to a font that covers that script. Ubuntu 22.04 (Jammy)’s package listing identifies fonts-deva as providing Lohit and Samyak TrueType fonts for Devanagari. Package availability and names may differ on other Ubuntu releases; check the package index for your release before using the command.
As an Amazon Associate I earn from qualifying purchases.
- Identify the environment that launches the Playwright browser: local Ubuntu, a Docker container, or a CI runner.
- On an Ubuntu 22.04 system where you have package-install permissions, install the package with
sudo apt-get update && sudo apt-get install -y fonts-deva. - If the browser runs in Docker or CI, add the font installation to the image or runner setup that hosts the browser. Rebuild or update that runtime before testing.
- Render a page containing representative Hindi text using the same browser, image, and runner as your screenshot job.
See the Ubuntu Jammy package listing for fonts-deva for the release-specific package details.
Quick wins for a faster PC:
Repair Windows errors before they cause bigger problemsFix Now →Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Clear out junk files and repair common Windows errorsFree Scan →Choose the right fix for local Ubuntu or Docker and CI
| Where the browser runs | Where to install the font | What to do after the change |
|---|---|---|
| Directly on Ubuntu | On the Ubuntu system running Playwright | Run the screenshot test again in that environment. |
| Docker container | In the browser container image, not only on the host | Rebuild the image and rerun the screenshot job. |
| CI runner | In the runner environment or the image used by the job | Update the runner or image, then test in the CI job itself. |
Playwright’s Docker guidance describes browser system dependencies, custom images, and remote browser execution. Its documented image bases include Ubuntu 22.04 Jammy and 24.04 Noble; image tags and details can change. Follow the instructions for the image and release you actually use rather than assuming a package listing for Jammy applies to Noble or another version.
#1 Best Overall
Keep the Playwright package and browser image aligned
If you use a Playwright Docker image, pin its version and keep it aligned with the Playwright version installed in your project. The official guidance warns that a mismatch can prevent Playwright from locating browser executables. Installing the font in the correct container will not fix a separate browser-version mismatch.
The Playwright project’s Jammy Dockerfile runs playwright-core install-deps before installing browser binaries, illustrating that browser dependencies belong in the image build. Add the Devanagari font package to the image configuration for the runtime that performs your captures.
Rank #2
- HTML CSS Design and Build Web Sites
- Comes with secure packaging
- It can be a gift option
Verify Hindi rendering in the actual screenshot runtime
- Use a test page with Hindi text representative of the content that renders incorrectly.
- Run it through the same Playwright browser and execution environment as the production screenshot. Do not rely solely on a test from your host if production runs in a container or CI.
- Inspect the resulting image for missing glyphs or fallback characters. Confirm that the intended font is available to the browser in that runtime.
- If it still fails, investigate font loading and browser rendering in that same environment. There is no single universal second-stage diagnosis established for every remaining rendering problem.
Troubleshooting
- Hindi works locally but not in Docker: The font may exist on the host but not in the container. Install the Devanagari font package in the browser image, rebuild it, and test again inside the container.
- The package name or install command does not work: The cited package details are for Ubuntu 22.04 Jammy. Check your target Ubuntu release’s package index and use a package that provides Devanagari coverage.
- The font is installed but Playwright cannot find its browser: Check that the project Playwright version matches the pinned Docker image version, as recommended by Playwright’s Docker documentation.
- Hindi still renders incorrectly after the change: Confirm font availability and loading in the actual runtime, then examine browser rendering there. The cause may be something other than a missing system font.
Or skip the browser setup
For a screenshot without configuring Playwright and its browser runtime, ScreenshotNeo offers a website screenshot API and MCP server. Its capture flow removes supported cookie banners, newsletter popups, and chat widgets before taking the shot; bot checks, blank pages, and failed loads are not billed. AI agents can use its MCP server, and the free plan includes 1,000 screenshots per month with no card; paid plans start at $5 for 3,000 screenshots.
One GET request can return a screenshot. For example, using cURL:
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
See the ScreenshotNeo API documentation for request options and setup. ScreenshotNeo is at screenshotneo.com. Sign up for the free plan to get 1,000 screenshots a month with no card.
Quick Recap
Best Value
Rank #4
- Brand: Wiley
- Set of 2 Volumes
- A handy two-book set that uniquely combines related technologies Highly visual format and accessible language makes these books highly effective learning tools Perfect for beginning web designers and front-end developers
Rank #3
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.




