Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

On occasion I receive forms to fill in as PDFs intended for printing (these are not true PDF forms, they do not contain fields). I would like to type onto them, and perhaps add a scanned copy of my signature. This way I could just email them back. Is this possible?

share|improve this question

8 Answers 8

up vote 8 down vote accepted

There is no perfect way to do this yet. The best existing way is to install Xournal from the software center and open PDF files with it. It allows you to annotate them and then export the whole thing as a new PDF.

Since you are basically marking up a new layer on top of the original PDF, you have to line up everything as you type, and manually position all your notes. For a simple document it's pretty easy to do. It's not very practical for longer documents, though.

share|improve this answer
How did you intend the signature to be placed? For me, Xournal's paste function did not paste a signature copied from Gimp. There does not seem to be any "import image" feature, either. –  H2ONaCl Oct 7 '12 at 7:37
@broiyan Two options, scribble it in with the mouse in Xournal, or do like cipricus's answer and import it into LibreOffice (or Gimp) and add it that way, then re-export as a PDF from either program. I have a transparent GIF I use for this as it works best with different coloured backgrounds. –  Tom Brossman Oct 7 '12 at 11:35
At least as of version 0.4.8, Xournal makes it super easy to annotate an existing PDF with an image of a signature. –  Steve Pomeroy Nov 11 '14 at 5:18

Open the pdf in LibreOffice Draw and copy/paste there any image, including that of a signature (or Insert -Picture - From File), which then can be easily adjusted/resized to fit the purpose. After that, under File - 'Export as PDF'

share|improve this answer
I've got a blog post on the full write-up of how to do this: colans.net/blog/signing-document-image-ubuntu-1210 –  colan Mar 26 '13 at 16:16

You can easily copy and paste part of a pdf document using PDF-XChange Viewer (running flowlessly with wine). (Google it you will see a lot of ubuntu users love it, it is very useful to annotate pdf documents.)

You select the signature (a rectangle around it) from another document, copy it and paste it where you want on the new document...

share|improve this answer

I've had a reasonably good experience with uPdf.


sudo add-apt-repository ppa:atareao/updf
sudo apt-get update
sudo apt-get install -y updf

Then fix a bug by editing 2 lines in a Python script.


Launch uPdf, select the Add an image tool, draw a rectangle around the area where you want the signature to go and select the image file with your signature. A PNG with a transparent background works best.

See also How can I edit a picture into an existing PDF file?

share|improve this answer

Another option is Scribus. I've used it to do the same task you're asking for (pasting an image of a signature).

As Tom Brossman said there is no perfect way to do that, and Scribus is the case. It has to import the file from the pdf format to the native one, and depending on the document it can get the text scrambled or the layers showed differently.

share|improve this answer

The sample C# code listed in following example can be used to add an image to PDFdocument file. you can easily insert an image into any desired PDF page with accurate location.:

public static string FolderName = "c:/";

private void button1_Click(object sender, EventArgs e)
    string fileName = FolderName + "Sample.pdf";

    REDocument doc = REFile.OpenDocumentFile(fileName, new PDFDecoder());//use PDFDecoder open a pdf file

    REPage rePage = (REPage)doc.GetPage(0);
    int width = 100;
    int height = 60;

    /// data[]: a byte array to contain color data (as same format as Image Data PixelArray in BMP file)
    /// caller must provide correct color data; otherwise, unpredictable error may happen
    byte[] data = new byte[width * height * 3];
    //  set bottom 20 lines to red
    for (int rowIdx = 0; rowIdx < 20; rowIdx++)
for (int i = 0; i < width; i++) data[width * rowIdx * 3 + i * 3 + 2] = 0xFF;
    //  set top 10 lines to blue
    for (int rowIdx = 0; rowIdx < 10; rowIdx++)
for (int i = 0; i < width; i++) data[width * (height - 1 - rowIdx) * 3 + i * 3] = 0xFF;

    REImage reImage = new REImage(width, height, ImageMode.RGB888, data);

    REFile.SaveDocumentFile(doc, "c:/reimage.pdf", new PDFEncoder()); 
share|improve this answer

Here's a 2014 answer to this question, if you have a google account you can use web-based tool:


share|improve this answer

I think the easiest way is to create your signature - images, text, etc - as a new one page PDF. Then when you download the pdf from the internet, you can just append your signature pdf at the end.

You can use a lot of apps to do that but my fav is pdf-shuffler which you can easily install from the software center or the terminal using:

sudo apt-get install pdfshuffler
share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.