image tool
Add text to image online
Type the words, choose a font, size and colour, then drag the text where it belongs on the photo and download a PNG. The picture stays on your device; only the font file is fetched from Google Fonts.
Loading the tool…
- Runs on your device, nothing is uploaded
- Free, no sign in
- No watermark, no file limit
How it works
- 1
Drop the photo
A sample line appears in the middle in white Inter Bold at 8% of the picture's width, so you can see the scale straight away.
- 2
Type your text
Replace the sample with your words. Press Enter for a new line; long lines wrap on their own at 90% of the width.
- 3
Style it
Pick one of the 27 fonts, Regular or Bold, a size in pixels, a colour, an opacity and a rotation from minus 180 to 180 degrees.
- 4
Place it
Drag the text on the picture, use the nine position buttons, or focus the picture and nudge it with the arrow keys.
- 5
Download the PNG
The text is drawn into the full-size image at the same place and scale. Nothing is uploaded and nothing is stored, ever.
27 of the fonts the builders use
The font list is 27 of the 42 fonts the flyer, poster and slide builders offer: 18 sans serifs from Inter to Outfit, and 9 serif and display faces from Playfair Display to Big Shoulders Display. Choosing one adds that family's Google Fonts stylesheet to the page and waits for the font to be ready before drawing, so the preview is never a stand-in that changes on download. The only thing sent is the family name in the stylesheet address. The photo and the words you type are never part of any request.
Size, colour and legibility
Size is in pixels of the full image, starting at 8% of its width, which reads clearly on a phone. A caption usually works between 4% and 6%; a headline over a photo can go to 12% or more. White text needs a dark, quiet area of the photo behind it, and black text a light one. If the photo is busy, lower its contrast first, or blur the area the text sits on with the blur tool, then come back here. Opacity below 100% is for a watermark that should be seen but not read first.
Placing text with rotation
The text is centred on one point: the position you drag to or pick from the nine buttons. Rotation turns the whole block around that point, which keeps a tilted label where you put it. A small angle, 5 to 10 degrees, gives a sticker or stamp feel; 90 degrees runs a label up the side of a photo. Lines in a block stay centred on each other as it turns, so a two line caption keeps its shape at any angle.
Limits worth knowing
There is one text layer, with no wrapping beyond a fixed width: every line breaks at 90% of the picture's width, and a single word longer than that runs past the edge. When the text no longer fits, a warning says so instead of silently cropping it. Longer copy, several text boxes and a layout that adapts to the content belong on a flyer. The fonts come from Google Fonts, so a blocked network shows the fallback font and a message, and the PNG is saved with whatever font the preview shows.
When a flyer does it better
A flyer design already has a layout, a theme and text slots for a heading, body copy and details. In the flyer builder each text slot takes the theme default or one of 42 fonts, these 27 among them, a size from the theme's type ramp, a theme colour or any custom hex, a weight, left, centre or right alignment and a drop shadow. If you are adding more than a line or two to a photo, start a flyer instead.
Limits
- One text layer, no wrapping beyond a fixed width: lines wrap at 90% of the picture's width. Longer copy belongs on a flyer, and a warning appears when the text runs past the edge.
- The 27 fonts load from Google Fonts. The request names only the font family; on a blocked network the preview and the download fall back to a system font and a message says so.
- Regular and Bold are the only weights offered; text is centred on the point you place it.
- Images larger than 8,192 pixels on the long side are refused with a message.
What it does not do
- It does not add a second text box, a shadow, an outline or a background behind the text.
- It does not keep the text editable after saving. The words become pixels in the PNG.
- It does not save as JPG, and it does not keep EXIF data.
Questions people ask
Can I add a caption under the photo instead of on top of it?
Not with this tool alone, because the text is drawn inside the picture's own area. Add a border first with the border tool. Its Instagram 4:5 padding adds plain space above and below a square or landscape photo. Bring the framed image back here and drag the caption into the lower strip, where it sits on a plain colour.
Why does the font look different after a moment?
The first frame can draw in the fallback font while the chosen family is still downloading from Google Fonts. As soon as the font is ready the preview redraws in it. If it never changes and a message says the font could not be loaded, the network is blocking Google Fonts, and the download will use the fallback too.
How do I make a transparent watermark?
Type the name or handle, pick a plain font such as Inter, set the colour to white and the opacity to 30 to 50%, then place it in a corner or across the middle with a slight rotation. Keep the size modest. Remember a watermark drawn into pixels can be cropped off, so it marks ownership but does not prevent copying.
Can I use emoji in the text?
Usually yes. Emoji are drawn by the browser's own colour emoji font, not by the chosen Google font, so they look the way your operating system shows them and may differ on another device. They are drawn into the PNG like any other character, so what you see in the preview is what is saved.
Is the text still editable after I download?
No. The words are painted into the image pixels, so the PNG has no text layer. Keep the tab open to change it and download again, or keep your original photo and repeat the steps. If you need text that stays editable, put the photo and the words on a flyer or a slide, where each text slot can be changed later.
Why is the download a PNG and not a JPG?
Sharp text edges are where JPG compression shows its artefacts first: grey fringes and blocks around each letter. PNG stores the edges exactly. A photo saved as PNG is larger, so if the file needs to be small, run the result through the image compressor afterwards and choose a quality around 85.
Lay out the text and photo on a flyer
Take what you made here into flyers.
Create a flyer with OneCraftMore tools like this
- Add border to imageAdd a border to an image in any colour and pixel width, with square or rounded corners and Instagram 1:1 or 4:5 padding. Runs on your device, no upload.
- Blur image onlineBlur an image online with a Gaussian blur, all over or only inside boxes you drag, such as a face in a crowd. Runs on your device; the photo is never uploaded.
- Image cropperCrop with a draggable box and 44 pixel handles, locked shapes for square, 4:5, 9:16 and 16:9, thirds guides, quarter turns and arrow key nudging.
- Image compressorCompress to WebP or JPEG and compare the result against the original under a divider you drag. Or ask for a size in KB. Nothing is uploaded.
- Contrast checkerSet a text colour and a background and read the WCAG ratio on a live specimen, with a pass or fail attached to every size from 30px down to 13px.
Background reading: the question page on this.
Built with Google Fonts (OFL-1.1, Ubuntu Font Licence 1.0 for Ubuntu).
Written and checked by the OneCraft team. Last checked .