Text Wrapper

Wrap text to a chosen line width. Keep paragraph breaks and choose whether words longer than the limit remain intact or split across lines.

Use 1–200 visible characters per line.

Text is processed locally in your browser and is not uploaded.

Output lines
4
Longest line
10

How to use this tool

  1. Paste prose into Text to wrap and enter a whole-number line width from 1 to 200.
  2. Keep Preserve paragraph breaks selected to retain blank-line boundaries; turn it off to reflow the entire passage together.
  3. Choose whether oversized words stay intact or split, then inspect line endings before copying the output.

Understanding the output

Width counts grapheme clusters: a combining accent or joined emoji can belong to one visible character. It does not count display pixels or terminal columns. The longest-line count can exceed your chosen width when Keep the word intact is selected.

Wrapping two short paragraphs

At width 10, One two three four wraps into One two and three four on separate lines. A blank line before Five six remains a paragraph break when preservation is enabled. The result has four lines including the blank separator, and the longest line contains ten characters.

Hard wrapping changes the text itself

A narrow editing window can visually wrap a line without inserting a newline. This tool inserts actual LF line breaks into the output. That can be useful for plain-text notes, but it also changes copied content and may be inappropriate for code, Markdown tables, or data records where spaces and newlines have meaning. Keep an original copy when layout is significant.

Character width is different from visual width

Letters in a proportional font occupy different pixel widths, and some East Asian characters occupy two terminal columns. This wrapper treats each grapheme as one unit, including a joined emoji sequence. It therefore creates a text-length boundary rather than guaranteeing equal-looking lines in every application. Test the result in the editor or terminal where it will be used.

Method and supported input

CRLF and CR line endings become LF. Within each paragraph, whitespace is collapsed to single spaces between words. Existing single line breaks are reflowed; retained paragraph breaks become one blank line. Leading and trailing whitespace is removed.

Words are greedily added until the next word would exceed the width. Long-word splitting breaks only between grapheme clusters, adds no hyphen, and does not apply dictionary hyphenation. The input is limited to 100,000 UTF-16 code units.

  • Whitespace separates words and blank lines separate prose paragraphs.
  • A grapheme-count width is suitable for the receiving application.

Limitations

  • Indentation, tabs, and multiple internal spaces are not preserved.
  • Split mode can break URLs or identifiers into pieces; keep long words intact when that would be harmful.
  • The tool does not understand list indentation, syntax, or language-specific hyphenation.

Common questions

Why is one line longer than my width?

Keep the word intact permits a word longer than the selected width on its own line. Choose splitting if every line must fit the grapheme limit.

Will a family emoji be split apart?

No. Segmentation keeps its grapheme cluster together. One cluster may still occupy more than one display column.

Can I preserve every original line break?

No. This tool reflows single line breaks. It preserves only paragraph boundaries when that option is selected.

Sources and further reading