Draw on PDF

Draw on a PDF and annotate its pages freehand, with a pen you control.

Your files stay on this device. Nothing is uploaded. How to check

Advertisement

How to use Draw on PDF

1. Upload the PDF. The first page appears with a drawing surface on top of it.
2. Pick a colour and a width (Thin, Medium, Thick or Marker), draw with the mouse, a stylus or a finger, and use the arrows to move between pages. Undo removes the last stroke and Clear page wipes the current page.
3. Click Apply & Download PDF, then Download File on the result card. Your strokes are written into the file as real vector lines.

Key features of Draw on PDF

âœī¸ Real pen strokes

Every stroke is stored in PDF coordinates and written with round-capped vector lines, so it stays sharp at any zoom and prints cleanly. Nothing is rasterised.

📄 Strokes kept per page

Drawings are kept per page while you move around the document. What you drew on page 3 stays on page 3.

đŸ–Ĩī¸ Nothing leaves your device

The page is rendered with pdf.js and the strokes are written with pdf-lib, both in your browser. Nothing is sent to a server.

About Draw on PDF

Draw on PDF renders each page with pdf.js and places a transparent drawing surface on top of it. Pointer movements are recorded as strokes and converted into the page's own coordinate space, so a line lands exactly where you drew it regardless of the on-screen zoom. When you apply, pdf-lib writes each stroke into the page content as a series of round-capped line segments.

Circle a figure on an invoice, initial each page of a contract, or sketch a correction on a drawing. It is a pen only: there is no eraser beyond Undo and Clear page, and for text boxes, shapes or images you need the PDF Editor. Strokes become part of the page and cannot be selected again after saving, so keep the original if you may want a clean copy.

When to use Draw on PDF

A site plan comes back from a contractor and you need to ring three points and draw an arrow to a note. Open it, choose Thick and red, draw the rings and the arrow, and save. Because the strokes are vector lines, zooming into the plan later keeps them crisp instead of turning them into blocks.

Marking homework or a proof on a tablet with a stylus. The drawing surface takes pen input directly and blocks page scrolling while you draw, so the page does not slide under the pen. Choose Thin for handwriting-sized marks and a colour that stands out from the print.

Initialling each page of a 12-page agreement with a mouse. Draw the initials on page 1, use the arrow to move to page 2, and so on; the status line under the page counts strokes and pages as you go. For a signature you draw once and place at a chosen size on the signature line, use Sign PDF or the signature pad in the PDF Editor.

You want to run a see-through marker over a paragraph so the text stays readable. The Marker width here is solid ink and hides what is under it, so use Highlight PDF for a translucent bar over particular words, or a Highlight box in the PDF Editor for a region.

Tips and troubleshooting

  • "Draw something first." appears if you click Apply & Download PDF with no strokes on any page.
  • "Could not open this PDF: No password given" straight after upload means the file needs a password to open, and "This PDF is encrypted, even if it opens without a password" means it carries an owner password, which pdf-lib cannot save through. Either way, open it with Unlock PDF first and draw on the file that produces. Any other message at that point means pdf.js could not parse the file.
  • Undo removes the last stroke on the page you are looking at, not the last stroke in the document, and Clear page wipes only the current page. There is no eraser for part of a stroke, so keep strokes short if you expect to correct them.
  • Widths are in PDF points (1.5, 3, 6 and 12 pt), not screen pixels, so a Medium line is the same thickness on paper whatever size the page was shown at. The page is displayed up to 760 px wide and narrower on a phone; a single tap or click leaves a round dot of the current width.
  • Colour and width apply to the strokes you draw from then on. Existing strokes keep the settings they were drawn with, so you can mix a red Thick ring with blue Thin notes on one page.
  • Only the page in view is rendered, so a large scan takes a moment each time you turn a page. Strokes are converted into the page's own coordinates, so ink on a page stored with a rotation lands where you drew it.
  • The download is named drawn_ followed by the original filename. The strokes are drawn on top of the existing content, over text and images, and the original text stays unchanged and searchable. Preview Document renders the result with pdf.js so you can check it before saving.

How Draw on PDF works in your browser

pdf.js opens a copy of the file's bytes in a Web Worker and renders the current page onto a canvas scaled to fit the tool's width. A second, transparent canvas sits over it and listens for pointer events, so mouse, pen and finger all report the same way. As you draw, the points are collected in screen pixels and painted live; when the pointer lifts, the whole stroke is converted through the pdf.js viewport into PDF points and stored against the page number with its colour and width. Turning to another page repaints its stored strokes from those points, which is why you can resize the window and switch pages without anything drifting. Nothing is sent to a server at any stage.

Apply & Download PDF opens the original bytes with pdf-lib and, for every stored stroke, draws a line segment between each pair of consecutive points with round caps, in the stroke's colour and width. The round caps overlap at the joins, so the segments read as one continuous line. The result is written to a new byte array, wrapped in a Blob and shown on the result card with the count of strokes and pages. No image of the page is created and no raster is embedded; the rest of the file, including text, links, bookmarks and form fields, is written back as it was. The title and author are kept; pdf-lib names itself as the producer, and as the creator when the file names none, and sets the modification date.

Frequently asked questions

Are the strokes vector or a picture pasted over the page?

Vector. Each stroke is written as round-capped line segments in the page's content stream, so it scales without pixelation and prints crisply. It also adds little to the file size.

Can I draw on more than one page?

Use the page arrows to move through the document. Each page keeps its own strokes, and the status line shows how many pages have drawings before you save.

Can I erase a stroke after downloading?

Not with this tool: once saved, the ink is part of the page. Use Undo or Clear page before you download, and keep your original file if you might need a version without the drawing.

Does it work on a phone or tablet?

Yes. The drawing surface listens for pointer events, so a finger or a stylus draws the same way as a mouse, and the page is scaled to fit the screen width. Scrolling is disabled over the drawing area so a stroke does not move the page.

Will the file get bigger?

Only slightly. Each stroke is stored as a list of short line segments in the page's content, roughly 20 to 25 bytes per point after compression, and no image is embedded. A page covered in dense scribbles adds more than a few rings, but still far less than a scanned image would.

Can I draw straight lines, arrows or boxes?

Not with this tool; every stroke follows the pointer exactly. For neat rectangle and ellipse outlines use the PDF Editor, which has Rectangle and Ellipse tools in the colour you pick.

Last reviewed