Eliminating Missing SHX Fonts, BigFont CJK Question Marks (???) & Configuring gcad.fmp in GstarCAD 2027
Configure SHX compiled vector fonts, Asian BigFont codepages (gbcbig.shx, extfont2.shx, whgtxt.shx),FONTALT fallbacks, and gcad.fmp font mapping tables in GstarCAD 2027.
1. Why Missing SHX & BigFont Files Cause `???` Garbled Text
Unlike TrueType fonts (`.ttf`/`.otf`) registered globally in `C:\Windows\Fonts`, CAD vector shape fonts (`.shx`) are lightweight stroke definitions loaded exclusively from the CAD application's `Fonts` directory. In Asian, Middle Eastern, and Eastern European engineering drawings, text styles frequently pair a single-byte ASCII Roman font (e.g., `simplex.shx` or `romans.shx`) with a double-byte BigFont (e.g., `gbcbig.shx` for Simplified Chinese, `chineset.shx` for Traditional Chinese, `extfont2.shx` for Japanese JIS, or `whgtxt.shx` for Korean Hangul).
If an engineer opens a subcontractor DWG file referencing a custom or regional `.shx` font that is not present in the local font path, unmapped multi-byte character codes render as `???` question marks or overlapping boxes.
2. Three-Layer Font Substitution Hierarchy in GstarCAD 2027
GstarCAD 2027 resolves font references using a deterministic three-stage lookup pipeline:
| Resolution Priority | GstarCAD Mechanism | Enterprise Configuration Rule |
|---|---|---|
| Stage 1: Explicit Font Map | FONTMAP (`gcad.fmp`) |
Maps specific legacy font names via semicolon pairs (e.g., hztxt.shx;gbcbig.shx). |
| Stage 2: Support Search Path | `C:\Program Files\Gstarsoft\...\Fonts` + NAS | Add a shared network font vault (`\\CorpNAS\CAD_Std\Fonts`) to `OPTIONS` → Support Paths. |
| Stage 3: Global Fallback | FONTALT System Variable |
Defaults to `simplex.shx` for Western scripts or `gbcbig.shx` for CJK multi-byte environments. |
3. Production `gcad.fmp` Configuration & AutoLISP Font Healer
Append these rules to your corporate gcad.fmp file and deploy the AutoLISP style repair script below to instantly cure garbled `???` text styles across external vendor drawings:
;; GstarCAD 2027 — Automated Missing BigFont & TextStyle Healer
(vl-load-com)
(defun c:GCAD_HEAL_MISSING_FONTS ( / doc styles sty fontFile bigFont)
(setq doc (vla-get-ActiveDocument (vlax-get-acad-object)))
(setq styles (vla-get-TextStyles doc))
(vlax-for sty styles
(setq fontFile (vla-get-FontFile sty))
(setq bigFont (vla-get-BigFontFile sty))
;; If primary SHX font file cannot be located on disk, fallback to simplex.shx + gbcbig.shx
(if (and (/= fontFile "") (not (findfile fontFile)))
(progn
(vla-put-FontFile sty "simplex.shx")
(if (/= bigFont "") (vla-put-BigFontFile sty "gbcbig.shx"))
(princ (strcat "\n[Font Healer] Repaired missing font on style: " (vla-get-Name sty)))
)
)
)
(vla-Regen doc acAllViewports)
(princ)
)
4. Diagnosing Missing SHX Fonts & TrueType Performance Optimization
Even with a properly configured `gcad.fmp` font mapping table, multi-national infrastructure projects often combine DWG files authored across Chinese (`GB2312`/`GBK`), Japanese (`Shift-JIS`), Korean (`EUC-KR`), and Western European (`CP1252`) Windows locales. If a drawing displays question marks (`???`) or rectangular tofu boxes (`□□□`), use this 3-step diagnostic sequence in GstarCAD 2027:
- Inspect Active Font Substitution via `STYLE` or `LIST`: Select the garbled `TEXT` or `MTEXT` entity, check its assigned `TextStyle` name in the Properties palette (`Ctrl+1`), and open the `STYLE` dialog. If a yellow warning icon appears next to the `.shx` font name, GstarCAD is currently falling back to `FONTALT` (`simplex.shx`) because the primary font is absent.
- Check `Big Font` Pairing for Single-Byte SHX Styles: In legacy CJK drawings, engineers pair a Western single-byte font (`romans.shx` or `txt.shx`) with an East Asian BigFont (`gbcbig.shx`, `hztxt.shx`, or `extfont2.shx`). Ensure the Use Big Font checkbox is enabled in `STYLE` when assigning CJK `.shx` files.
- Strip Hardcoded MTEXT Inline Font Overrides: Sometimes the `TextStyle` is properly mapped in `gcad.fmp`, yet specific `MTEXT` paragraphs remain garbled because a previous user pasted rich text from Microsoft Word, embedding inline formatting codes like
{\fSimSun|b0|i0|c134;...}. Use GstarCAD's built-in MTEXT editor tool Remove Formatting → Remove Character Formatting (or a regex AutoLISP scrubber) to return the text to its clean layer/style governance.
Hardware Acceleration for TrueType (`TTF`) Heavy Drawings: In GstarCAD 2027, TrueType glyph outlines are tessellated and cached on the GPU via DirectX 11 hardware acceleration (`WHIPTHREAD = 3`, `TEXTQLTY = 50`), eliminating the pan/zoom frame-rate drops that plagued older CAD releases when rendering 20,000+ Windows TrueType labels.
Validate This Workflow in GstarCAD 2027
Engineered by Suzhou Gstarsoft Co., Ltd. (SSE: 688657), GstarCAD 2027 delivers 100% native AC1032 DWG binary fidelity, perpetual licensing sovereignty, and zero-day AutoCAD command parity.