Style Text · browser-local
Strikethrough Text Generator
Produce strikethrough text that survives a copy-paste into plain-text fields. Each visible character is overlaid with the Unicode combining long stroke, so the effect travels with the text rather than as formatting.
- Index state
- eligible
- Reviewed
- 2026-08-24
- Input limit
- 5,000 graphemes
Strikethrough Text Generator
S̶t̶r̶u̶c̶k̶ t̶h̶r̶o̶u̶g̶h̶ t̶e̶x̶t̶
Good fit
Use this tool when
- You want struck-through text in a field with no formatting.
- You are marking a price or item as crossed out.
- You want the effect to persist when copied.
Keep the original
Avoid it when
- The destination supports real rich-text strikethrough.
- Screen-reader clarity matters, since overlays can disrupt reading.
- You need the plain characters to stay clean for search.
Reviewed truth vectors
Examples that expose the edge cases
Sale 50% offS̶a̶l̶e̶ 5̶0̶%̶ o̶f̶f̶Every non-space character gets a combining stroke.
CancelledC̶a̶n̶c̶e̶l̶l̶e̶d̶The base letters are unchanged; a mark is added on top.
doned̶o̶n̶e̶Combining marks travel with the text when copied.
Transparent implementation
How it works
- 01
Split the input into characters.
- 02
Skip whitespace and append the combining long stroke overlay to each other character.
- 03
Return the combined string.
Known limitations
What the result cannot promise
It uses combining marks, not a real strikethrough style.
Rendering of the overlay varies by font and platform.
Assistive technology may read the base text without the stroke.
Questions before copying
Frequently asked questions
Will the strikethrough survive copy-paste?
Usually yes, because the effect is made of Unicode combining marks carried with the text, not formatting.
Why do spaces have no line?
The stroke is only added to visible characters; whitespace is left untouched to avoid odd gaps.
Is it accessible?
Not fully. Some screen readers ignore the overlay and read the base text, so avoid it for essential meaning.
Experience, expertise & trust
How we verify this tool
Automated evidence
- Tool-contract & coverage suite30 deterministic cases
tests/tools-30.test.mjs mirrors the ToolRunner dispatch and asserts every registered engineId returns the contracted output shape, plus a coverage guard so no tool silently drops characters.
Run in: node --test after a production build (vinext build) - Rendered-HTML suite12 deterministic cases
tests/rendered-html.test.mjs renders the deployed server bundle and asserts the Unicode-version manifest and each wave's tool markup are present in the server-rendered HTML.
Run in: node --test against the built dist/server bundle - Transform & cleanup suite21 deterministic cases
tests/transform-cleanup.test.mjs exercises each deterministic cleanup and transform action against whitespace, duplicate, ordering, casing, and HTML-to-text edge cases.
Run in: node --test, no network, no randomness
Standards this tool follows
- The Unicode Standard, Version 17.0
Mathematical Alphanumeric Symbols and Enclosed Alphanumerics blocks used for presentation styles.
- UAX #44: Unicode Character Database
Character properties that determine which source characters have a style mapping.