Jump to content

Connect SuperML | Leeroopedia MCP: Equip your AI agents with best practices, code verification, and debugging knowledge. Powered by Leeroo — building Organizational Superintelligence. Contact us at founders@leeroo.com.

Implementation:Microsoft Playwright DefaultFontFamilies

From Leeroopedia
Knowledge Sources
Domains Chromium, Fonts
Last Updated 2026-02-12 00:00 GMT

Overview

Concrete tool for defining platform-specific default font family mappings for Chromium browsers provided by the Playwright library.

Description

The `defaultFontFamilies` module exports the `platformToFontFamilies` constant, a mapping from platform names ('linux', 'mac', 'win') to `Protocol.Page.setFontFamiliesParameters` objects. Each platform configuration specifies default fonts for standard, fixed, serif, sans-serif, cursive, and fantasy font families. The Mac and Windows configurations include additional `forScripts` entries for CJK (Japanese, Korean, Simplified Chinese, Traditional Chinese) script-specific font families. This map is auto-generated from Chromium source code by the `generate_chromium_default_font_families.js` utility script.

Usage

Use DefaultFontFamilies when Playwright sets up a new Chromium page to ensure consistent font rendering across platforms via CDP's `Page.setFontFamilies` command.

Code Reference

Source Location

  • Repository: Microsoft_Playwright
  • File: packages/playwright-core/src/server/chromium/defaultFontFamilies.ts

Signature

export const platformToFontFamilies: {
  [key in 'linux' | 'mac' | 'win']: Protocol.Page.setFontFamiliesParameters
};

Import

import { platformToFontFamilies } from '../server/chromium/defaultFontFamilies';

I/O Contract

Inputs

Name Type Required Description
(none) N/A N/A This is a constant data module with no runtime inputs

Outputs

Name Type Description
platformToFontFamilies Record<string, setFontFamiliesParameters> Platform-to-font-families mapping for linux, mac, and win

Usage Examples

import { platformToFontFamilies } from '../server/chromium/defaultFontFamilies';

// Get font families for current platform
const platform = process.platform === 'darwin' ? 'mac' : process.platform === 'win32' ? 'win' : 'linux';
const fontFamilies = platformToFontFamilies[platform];
await crSession.send('Page.setFontFamilies', fontFamilies);
// Sets standard: 'Times New Roman', fixed: 'Monospace', etc. on Linux

Related Pages

Page Connections

Double-click a node to navigate. Hold to expand connections.
Principle
Implementation
Heuristic
Environment