Text tools
Text Wrap
Reflow plain text to a chosen line width.
Local processing Your text stays in your browser.
Paste or type the text you want to reflow.
Choose your options, then wrap your text.
No wrapped text yet.
How to wrap text
- Paste your text
Add plain text to the input box.
- Choose your options
Set the width and how to handle breaks and long words.
- Wrap and use
Wrap the text, then copy it or download a .txt file.
Text stays in your browser.
Wrapping runs in your browser. This tool does not upload, log or save your text in browser storage. Copy writes to your clipboard; Download saves a file only when you choose.
Frequently asked questions
What happens to existing line and paragraph breaks?
Preserve paragraphs joins single line breaks with a space, keeping the number of blank lines between paragraphs and at the edges. A blank line contains only plain spaces or tabs. Preserve each line wraps every original line separately, retaining all existing breaks. Join all lines removes paragraph boundaries before wrapping.
CRLF, CR and Unicode line/paragraph separators become LF. Preserved trailing breaks remain; no extra final newline is added.
Can a word exceed the width?
Keep whole places an unbroken word on its own line if it is too long. The result reports how many lines exceed your width. Split between grapheme clusters divides long words without adding hyphens. No emoji sequence or combining-character cluster is split.
A word here is text between plain spaces or tabs, not a language-specific dictionary word. For scripts written without spaces, choose Split to limit line lengths. Nonbreaking spaces stay within words.
What does the width measure?
Each Unicode grapheme cluster counts as one unit, including emoji sequences and letters with combining accents. A separating space also counts as one. This is not a pixel width or terminal-column measure: wide characters may occupy more visual space. The output box scrolls horizontally to show the actual inserted breaks.
Will spacing and formatting stay the same?
Runs of plain spaces and tabs become a single space, and leading/trailing spaces and tabs are removed from each reflowed block. Other characters remain unchanged, including nonbreaking spaces and clusters with combining marks. This is for prose: it does not preserve code indentation, Markdown layout, lists, fonts or rich text formatting.
Downloads are UTF-8 plain text with LF line endings and no byte-order mark. Whitespace-only input can produce an empty file; the result says so.
Can I cancel or repeat a wrap?
Cancel stops processing and keeps your input. Editing text or options clears the old output. Wrap text always starts from your input, so you can repeat it or choose another width. Reset clears both boxes, releases the download and restores the default options.
How much text can I wrap?
There is no fixed text-length or processing-time limit. Available browser memory is the practical limit; you can cancel a running wrap. Width must be a positive integer that JavaScript can represent exactly. A browser with current text-processing support is required.