To subset a Chinese web font, collect every character your site can display, then use a font subsetter such as pyftsubset to create a smaller webfont containing those characters. This works best for fixed text; for frequently changing Chinese content, use broader font coverage or split the font into Unicode-range files. In either case, test the actual pages and keep a fallback font stack.
Choose a subset strategy before you build the font
The right approach depends on whether your site’s text stays stable. A subset contains only selected characters; if a later page or UI state introduces a character that was left out, that subset cannot render it. CSS cannot make a missing glyph appear.
| Approach | Best fit | Trade-off |
|---|---|---|
| One corpus-specific subset | Fixed text, such as a campaign, logo, or small static site | New characters require rebuilding the subset or falling back to another font. |
| Several Unicode-range subsets | Large or changing text when the font can be divided into codepoint ranges | CSS ranges must be correct, and you must test that the files cover the characters your pages render. |
Google Fonts request with text= |
Known text when the desired family is available from Google Fonts | Delivery depends on the hosted service and request; inspect the generated CSS and verify coverage. |
Google Fonts says its text= option can reduce file size by up to 90% in some cases; this is a vendor claim, not a guaranteed result for a particular Chinese font or page. See Google Fonts’ API documentation. Google Fonts also documents that browsers supporting unicode-range select supported subsets for rendered text and ignore the older subset= parameter; when using text=, subset= is unnecessary.
Inventory every string the site may render
Start with the full set of text your site can show, not just the main body copy on one page. Include shared UI and less obvious states, because a missed punctuation mark or interface label can fall back to a different font.
Quick wins for a faster PC:
Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Clear out junk files and repair common Windows errorsFree Scan →Scan for outdated or missing drivers - takes under a minuteDriver Scan →- Page content, titles, and headings across the site.
- Navigation, buttons, form labels, validation messages, and error states.
- Punctuation and symbols used alongside Chinese characters.
- Text rendered dynamically, such as user-generated content or frequently updated announcements.
If the content changes often, choose broader coverage or establish a process to regenerate the subset when new characters appear. A corpus built from only a snapshot may become incomplete as the site changes.
Extract a UTF-8 character corpus
Combine the inventoried text into a UTF-8 file and deduplicate its Unicode characters. For example, save the characters in site-text.txt. Deduplication avoids requesting the same character repeatedly; completeness matters more than keeping the file visually short. Check that the extraction preserves every script and punctuation mark actually used.
Rank #2
- 【What You Get】 10 notebooks which practice both Chinese characters and Hanyu Pinyin, 14 sheets/28 pages each (except front and back covers).
- 【Chinese Pronunciation System】Hanyu Pinyin uses Latin letters to mark character pronunciation and is fundamental for learning Mandarin.Kids in mainland China begin to study Chinese characters and Hanyu Pinyin from age 6.
- 【No Fluorescent Agent】 The fluorescent agent is a chemical agent that is not easily decomposed by the human body, and its role is to whiten the paper. But this chemical builds up in the body and cause damage to the liver, especially in immature children.Obviously, no fluorescent agent is your first choice.
- 【Size】 125mm × 175mm, 7 rows and 9 columns.
- 【For Beginners】Our Chinese character exercise books are intended for beginners. They can not only be used for writing Chinese characters, but also for writing Pinyin, but not a Chinese‑language textbook or tutorial.
The fontTools subsetter can use text files as input. Its documentation describes text and Unicode input, webfont-oriented size optimizations, and options for checking missing characters: fontTools subset documentation.
Generate a webfont subset with fontTools
For an OpenType font, a typical command is:
pyftsubset input.otf --text-file=site-text.txt --flavor=woff2 --output-file=site-subset.woff2
Rank #3
- Package Include: 1 PCS of chinese character practice book of Song ci, Sheet size: 25 x 16 cm (9.84 x 6.30 inch); 24 Sheets(48 Page), Character size 0.8 x 0.8 cm.
- Great Uses: The main purpose of practicing calligraphy copybooks is to help people improve their calligraphy skills and the aesthetic appeal of their writing. By repeatedly practicing the characters in the copybooks, one can enhance the standardization of character forms and the fluency of strokes, thereby improving writing proficiency. Additionally, calligraphy copybooks also contribute to cultivating good writing habits and enhancing aesthetic appreciation.
- Calligraphy Paper Book Materials: This Chinese calligraphy paper book is made from high-quality eye-friendly paper, featuring clear grey characters and crisp red vertical lines, ideal for practicing with a pen. Its design facilitates precise handwriting practice, emphasizing legibility and stroke consistency, making it an excellent choice for learners and enthusiasts alike.
- The Best Gift Choice: As a gift, Calligraphy Paper Book is a beautiful and meaningful choice. Whether given to family,friends,or a significant other, Chinese Writing Practice Book can be a special gift.
- Sale Service: We are committed to providing efficient and thoughtful after-sales support.
Check the installed version’s help and the source font’s format before using the command. Configure the subsetter to fail when requested Unicode characters are absent, or otherwise verify coverage; a character in the corpus does not guarantee the source font contains its glyph. Preserve the layout features and variation axes your site needs rather than assuming the defaults suit every font. The fontTools documentation explains the subsetter’s options.
Declare the subset in CSS
For a single subset file, define a font face with a source URL and a display policy. Adapt the family name and path to your site:
Rank #4
@font-face {
font-family: "Site Chinese";
src: url("/fonts/site-subset.woff2") format("woff2");
font-display: swap;
}
For multiple files, define faces with suitable unicode-range values so the browser can choose the appropriate file for the rendered characters. The declared range does not add missing glyphs: under the W3C CSS Fonts specification, a face’s effective character map is the intersection of its unicode-range and the font’s actual character map. See W3C CSS Fonts Module Level 3.
Best Value
- BILINGUAL CHINESE-ENGLISH LEARNING BOOK. A bilingual baby book introducing Mandarin Chinese and English, supporting early language, vocabulary, and listening skills. Build Mandarin during early years when babies and toddlers learn best through songs, repetition & interactive play.
- SOOTHING REAL MOM VOICE – NOT ROBOTIC AUDIO. Unlike most Chinese sound books, this musical baby toy features a real mom singing in a gentle, calming voice — not electronic or robotic — creating a comforting, natural listening experience for babies and toddlers.
- INTERACTIVE SOUND BOOK WITH BABY-SAFE BUTTONS. Press chunky, easy-to-use buttons to play each Chinese nursery rhyme twice with music, making this an engaging interactive sound book for babies, toddlers, and preschool kids.
- FULL-LENGTH CHINESE SONGS & NURSERY RHYMES. Plays real, full-length Chinese songs — not short clips — helping babies and toddlers learn Mandarin naturally through repetition, rhythm, and music.
- FOR BABIES, TODDLERS & PRESCHOOL KIDS (1–3+). Perfect for infants, toddlers, boys and girls ages 1–3, this toddler sound book supports early childhood development through play-based learning.
Google describes this sliced-file approach for CJK fonts: Unicode ranges in @font-face let browsers request relevant pieces of a large font. See Google Developers Blog’s explanation of Google Fonts’ Korean support. Treat ranges as a delivery mechanism, not a substitute for checking that the chosen font includes the characters and regional glyph forms your content requires. Google’s Unicode subset definitions illustrate how subsets may be described using codepoints, ranges, exclusions, and named blocks or scripts; a generic range is not proof of coverage for your site.
Test the pages and plan for content changes
Load representative pages with the subset in place and inspect the rendered text for missing glyphs or unexpected fallback. Include pages or states likely to change, and test all required weights or font variations if you serve more than one. A subset is only as complete as the corpus and source font used to create it.
- Compare the rendered text against the inventory, including punctuation and shared UI.
- Check for characters missing from the source font as well as characters omitted from the subset.
- Confirm the CSS file paths and any declared Unicode ranges cover the intended text.
- Regenerate and retest when content, source fonts, weights, or scripts change.
For additional practical guidance on reducing webfont size with Unicode-range subsets and pyftsubset, see Google web.dev’s webfont-size guidance.
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.
Free tools Windows power users keep installed
One-click scans. No signup required.

