如何将文本和图像(例如签名)添加到PDF?


36

有时我会收到要填写的表格,以供打印的PDF格式填写(这些不是真正的PDF表格,它们不包含字段)。我想在上面键入内容,也许还要添加我的签名的扫描副本。这样,我可以通过电子邮件将其发送回去。这可能吗?

Answers:


39

尚无完美的方法。最好的现有方法是从软件中心安装Xournal并用它打开PDF文件。它允许您注释它们,然后将整个内容导出为新的PDF。

由于您基本上是在原始PDF上标记一个新层,因此您必须在键入时对齐所有内容,并手动放置所有注释。对于简单的文档,这很容易做到。不过,对于较长的文档来说,这不是很实用。


1
您打算如何放置签名?对我来说,Xournal的粘贴功能没有粘贴从Gimp复制的签名。似乎也没有任何“导入图像”功能。
H2ONaCl 2012年

@broiyan两种选择,或者在Xournal中用鼠标将其涂写,或者像cipricus的答案一样,将其导入LibreOffice(或Gimp),然后以这种方式添加,然后从任一程序重新导出为PDF。我为此使用了透明的GIF,因为它在不同的彩色背景下效果最佳。
汤姆·布鲁斯曼

1
至少从0.4.8版本开始,Xournal使得使用签名图像注释现有的PDF非常容易。
史蒂夫·波默罗伊

在Ubuntu 14.04 LTS附带的0.4.7版本中,您还可以添加映像。例如,只需从GIMP复制并粘贴到Xournal。
Chriki

自从Kdenlive以来,Xournal是我使用过的最令人毛骨悚然的软件。但是,Xournal完成了工作。它只需要很大的耐心。
thejoshwolfe

28

LibreOffice Draw中打开pdf,然后在其中复制/粘贴任何图像,包括签名的图像(或“ 插入-图片-从文件”),然后可以轻松调整/调整其大小以适应目的。之后,在“ 文件”-“导出为PDF”下


1
我有一篇有关如何执行此操作的完整文章的博客文章:colans.net/blog/signing-document-image-ubuntu-1210
colan

4
首先,LibreOffice Draw 5.0.5.2无法正确渲染我的PDF(文本渲染得太大),因此此答案对我不起作用。
thejoshwolfe

@thejoshwolfe-在许多情况下,上述答案可能有效;没有人期望它能适用于所有pdf文件,它们的复杂性和结构可能会大不相同。您应该在单独的文件中发布一个包含更多详细信息的单独问题,以获得单独的更具体的答案;也可能在导入LO之前编辑pdf也是一种方法

12

这是2011年这个问题的2014年答案,如果您有Google帐户,则可以使用免费的基于网络的工具轻松完成此工作:

https://dochub.com/


1
该链接将您带到dochub.com。做得完美。
2015年

2
您不需要Google帐户。您也可以使用Dropbox帐户或通过电子邮件创建本地帐户。
bmaupin

Dochub很棒,但免费版本的限制为5 doc p / m。
FredFury

7

我尝试了上面提到的多种方法/软件,只是想分享自己的经验。

(尽管最初的问题并没有要求,但我已经对添加线条,矩形和形状的可能性发表了一些评论。)

LibrOffice抽奖

可能是理想的解决方案。具有所有绘图工具等,并支持文本和插入图像。可以导入多页PDF。但是,导入时我的许多PDF都将损坏。字体似乎发生了变化,从而导致放置/间距问题(所有字体均嵌入PDF中)。我已经尝试了版本4和5,并且安装软件包libreoffice-pdfimport没有帮助。

Xournal

免费和开源。可以很好地导入多页PDF。有工具笔,荧光笔,文本,插入图像。(没有矩形或其他形状。)

主PDF编辑器

免费和开源。适用于编辑文本,创建/填写表单,插入图像。还支持线条和矩形-具有自定义的线条宽度,颜色和填充。

PDF-XChange编辑器

以前称为PDF-XChange Viewer。商业产品,具有基本功能的免费版本。这是Windows程序,但与可以很好地配合使用wine

与Master PDF Editor非常相似(请参见上文)。

金普

在某些有限的情况下是不错的选择。将所有未栅格化的图像栅格化,当然您将获得单个页面的单个图像,因此以后需要页面合并。有关使用签署PDF表单的一些建议,请参见http://colans.net/blog/signing-document-image-ubuntu-1210gimp

dochub.com

在线编辑/注释PDF。支持文本注释,但不支持线条和矩形。导入时,我尝试过的几乎所有pdf都已损坏。

涂鸦

免费和开源桌面发布软件。

导入时,我尝试过的大多数PDF都损坏了(比LibrOffice Draw导入要严重得多)-字体更改或字符放置错误。



2

您可以使用PDF-XChange Viewer轻松复制和粘贴pdf文档的一部分(与wine一起流畅地运行)。(在Google上您会看到很多ubuntu用户喜欢它,对pdf文档进行注释非常有用。)

您从另一个文档中选择签名(签名周围的矩形),将其复制并粘贴到新文档中所需的位置...




0

另一个选择是Scribus。我用它来完成您要的任务(粘贴签名图像)。

正如汤姆·布鲁斯曼(Tom Brossman)所说,没有完美的方法可以做到这一点,而Scribus就是这种情况。它必须将文件从pdf格式导入到本机,然后根据文档的不同而使文本混乱或显示的层不同。


似乎您必须将页面分别作为图像导入,并且它们将被光栅化。参考:forums.scribus.net/index.php?topic=515.0
卡尔

0

以下示例中列出的示例C#代码可用于将图像添加到PDF文档文件。您可以轻松地将图像插入到任何需要准确位置的PDF页面。

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()); 

0

我认为最简单的方法是将您的签名-图片,文本等-创建为新的一页PDF。然后,当您从互联网上下载pdf时,只需在末尾附加签名pdf。

您可以使用许多应用程序来执行此操作,但是我最喜欢的是pdf-shuffler,您可以使用以下方法从软件中心或终端轻松安装:

sudo apt-get install pdfshuffler
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.