使用Aspose.Pdf库制作1层pdf

时间:2013-03-19 10:52:04

标签: c# pdf-generation aspose

我正在使用Aspose.Pdf for .NET。

我要做的是:

使用1层制作pdf(最好的解决方案是,如果在生成pdf之前所有使用的文本和bacground图像将作为图片,然后生成pdf) 我需要它来禁止更改我的pdf简单安全的pdf文件中的内容是不够的,因为即使是在线pdf到doc转换器也可以更改内容。

现在有办法做到这一点吗? 或者是否有任何方法可以在将内容放入pdf网站之前从内容制作图像?

我能够生成pdf,但有多个图层(在我的场景中为2)。

我使用dll版本5.0.0 for .net 4.0 Client。

提前致谢:)

1 个答案:

答案 0 :(得分:4)

使用Aspose.Pdf,您可以在PDF文档上设置多个权限来控制其使用。使用Aspose.Pdf按如下方式指定安全性选项,并且您生成的Pdf文档将作为无法编辑的只读文档:

//Instantiate Pdf instance by calling its empty constructor
Aspose.Pdf.Generator.Pdf pdf1 = new Aspose.Pdf.Generator.Pdf();

//Assign a security instance to Pdf object            
pdf1.Security = new Aspose.Pdf.Generator.Security();

//Restrict annotation modification
pdf1.Security.IsAnnotationsModifyingAllowed = false;

//Restrict contents modification
pdf1.Security.IsContentsModifyingAllowed = false;

//Restrict copying the data
pdf1.Security.IsCopyingAllowed = false;

//Allow to print the document
pdf1.Security.IsPrintingAllowed = true;

//Restrict form filling
pdf1.Security.IsFormFillingAllowed = false;

//Add a section in the Pdf
Aspose.Pdf.Generator.Section sec1 = pdf1.Sections.Add();

//Create a text paragraph and set top margin
Aspose.Pdf.Generator.Text text1 = new Aspose.Pdf.Generator.Text(sec1,"this is text content");
text1.Margin.Top = 30;

//Add image
Aspose.Pdf.Generator.Image img = new Aspose.Pdf.Generator.Image();
img.ImageInfo.File = "asposelogo.png";
img.ImageInfo.ImageFileType = Aspose.Pdf.Generator.ImageFileType.Png;

//Add the text paragraph and image to the section
sec1.Paragraphs.Add(text1);
sec1.Paragraphs.Add(img);

//Save the Pdf                            
pdf1.Save("test.pdf");

至于将PDF的整个内容创建为嵌入图像,Aspose.Pdf不直接支持它。但是,您可以使用某种方式或其他组件来生成包含内容的图像,然后可以使用此图像使用Aspose.Pdf创建Pdf文件,如下所示:

  • 使用您的内容生成PDF(您之前创建的多层PDF)
  • 按照Aspose.Pdf文档的“Working with Images”部分所述将PDF导出到图像。
  • 使用导出的图像创建PDF,如“Working with Images(Generator)”中所述,并分发您的文档。

我的名字是Iqbal,我是Aspose的开发人员传播者。