A picture drawn over a text box

docx.occluded-text

Text in an anchored Word text box that a later-stacked opaque drawing entirely covers.

How the text is hidden

Both the text box and the covering drawing state their own rectangles in the file — a wp:posOffset per axis plus a wp:extent. Drop an opaque picture or a solid-filled shape over the box and set it to stack in front, and the reader sees the picture. The box's w:txbxContent is untouched.

Why a model still reads it

Stacking is a paint-order property. Everything that walks the part returns the covered text as ordinary prose, and until this shipped the document came back clean with the payload in the caller's text.

What we do about it

The parser compares two stated rectangles, the same discriminator PPTX uses. Every predicate is conservative: the cover must be opaque (a solid fill at full alpha with outline, effect and text fills excluded, or an image), must not be a behindDoc watermark, must stack strictly above by relativeHeight, must fully contain the box on both axes, and both anchors must state the same reference frame per axis so two coordinate spaces are never compared. The run keeps its own styled visibility and the rule fires on the flag while the run is still visible, at high, action flag — this is an inference from coordinates, not a rendered measurement, so nothing is removed.

How often it fires

0% of open-data portal DOCX — 200 real government publications (corpus-ckandocx at its current size), measured 2026-08-28.

This is an alert-volume number and nothing else. It says how often the alarm sounds on documents as found — not how often it is right, and not whether what it found was harmless. Documents as found may themselves carry concealment. Read it against the population named above rather than as a property of documents in general.

next

Check your own file

Three commands: a key, credit, a verdict.

Start with the API