Add text to a photo
Drop in a photo, type your text, drag it into place – done. Add several text boxes and keep them readable with an outline or a bar. Your image stays on your device.
Source: WHATWG HTML Living Standard – Canvas: drawing text (fillText, strokeText). Updated: .
How it is calculated
In short: This tool writes text onto a photo right in your browser – with your choice of font, colour, outline, shadow or background bar. The result is saved at the full resolution of the original, and the photo never leaves your device.
How it works
- Drag in a photo, choose one or paste it with Ctrl + V.
- Type your text. Press Enter for a new line; lines that are too long wrap automatically at 90% of the image width.
- Pick a font, size and colour. On a busy background, switch on an outline or a background bar to keep it readable.
- Drag the text to where you want it. Use “+ Text box” to add more, for example a top and a bottom line.
- Click “Save photo” – as JPG, PNG or WebP.
Background: why outlines and bars help
White text on a bright sky or black text on a dark jumper is hard to read. The Web Content Accessibility Guidelines (WCAG 2.2) ask for a contrast ratio of at least 4.5:1 for normal text and 3:1 for large text. On a photo the background changes all the time – a dark outline around light text, or a semi-transparent bar, keeps the contrast high everywhere. The text is drawn with the canvas functions strokeText and fillText from the HTML standard: outline first, then the fill on top.
All fonts are licensed under the SIL Open Font License 1.1 and hosted on this server; they only load when you pick them. Sizes are stored relative to the image width, so the saved photo looks exactly like the preview, even when it is much larger.
Honest limits
- The extra fonts cover Latin script (including Polish and Turkish). Japanese, Cyrillic or emoji are drawn with a system font.
- There are no effects such as gradients, curved text or stickers. For a watermark across the whole picture, the “Add watermark” tool is a better fit.
- JPG is re-compressed when saving and EXIF data (location, camera) is not kept. On iPhone and iPad, images are limited to 16.7 megapixels.
Privacy
Your photo and text are processed only in your browser and are never uploaded. The text is not stored either.
Frequently asked questions
How do I add text to a photo for free?
Drop the photo here, type your text, drag it into place and click “Save photo”. It works on phones and computers, with no app and no account.
How do I add text to a photo on iPhone?
Open this page in Safari, tap “Choose file” and pick the photo from your library. After saving, use “Save to Photos” to put it back into the Photos app. The Photos app itself also offers a simple text box under “Edit → Markup”.
How do I make text on a photo easy to read?
Contrast is what matters: use light text with a dark outline or a semi-transparent background bar. Bold, condensed fonts such as Anton or Bebas Neue stay legible even on small phone screens.
Can I put text at the top and bottom of a picture?
Yes. Add several text boxes with “+ Text box” and place them with “Top”, “Middle” or “Bottom”, or drag them freely. The text always sits on the photo; the tool does not add a white border below it.
Does adding text reduce the image quality?
The photo is saved at full resolution. PNG is lossless; JPG and WebP use an adjustable quality – from about 90% the difference is hard to see.
Can I use these fonts for social media or ads?
Yes. All fonts offered here are licensed under the SIL Open Font License and may be used commercially. The font licence places no restrictions on images you create with them.
Sources and legal basis
- WHATWG HTML Living Standard – Canvas: drawing text (fillText, strokeText)
- W3C – WCAG 2.2, 1.4.3 Contrast (Minimum): 4.5:1, large text 3:1
- MDN – FontFace (CSS Font Loading API)
- SIL Open Font License 1.1 – official text
- Anton – SIL Open Font License 1.1 (Google Fonts, ofl/anton)
- Bebas Neue – SIL Open Font License 1.1 (Google Fonts, ofl/bebasneue)
- Bangers – SIL Open Font License 1.1 (Google Fonts, ofl/bangers)
- DM Serif Display – SIL Open Font License 1.1 (Google Fonts, ofl/dmserifdisplay)
- Pacifico – SIL Open Font License 1.1 (Google Fonts, ofl/pacifico)
- Caveat – SIL Open Font License 1.1 (Google Fonts, ofl/caveat)
- ITU-T T.81 / ISO/IEC 10918-1 – JPEG
- W3C – Portable Network Graphics (PNG) Specification
- Google for Developers – An image format for the Web (WebP)
- AOMedia – AV1 Image File Format (AVIF)
- MDN – Image file type and format guide
- MDN – HTMLCanvasElement.toBlob()
- Open-source licenses of the libraries used (MIT, LGPL-3.0)
As of:
Related tools
- Add a watermark to your photosWatermark photos online: text or logo, opacity, rotation, 9 positions or tiled. Up to 20 images at once, ZIP download, nothing is uploaded. Free.
- Free online photo editorEdit photos in your browser: brightness, contrast, saturation, warmth, filters like black and white or sepia, rotate and flip. Free, full resolution.
- Crop Image OnlineCrop an image online without uploading: free selection, square 1:1, 4:3, 16:9 or 9:16, plus presets for Instagram and YouTube. Free, works on phones too.
- Photo collage makerMake a photo collage online: 2 to 9 pictures, 11 layouts, sizes for Instagram, stories or 4 × 6 prints, spacing and border colour. Free, no upload.
- Sticker Maker: Turn a Photo into a StickerPhoto in, sticker out: background removed, white border, meme-style text – saved as a WhatsApp sticker (512 px WebP) or for Telegram. No app, no upload.
- Add Border to ImageAdd border to image online: white or colored border, instant-photo style, rounded corners and a transparent frame, with preview. Free, no upload.