iOS:quartz2D绘图(在PDF文件上绘制图片)

quartz2D还可以在PDF文件上绘制图片,它有自己的PDF Graphics Context上下文,通过UIGraphicsBeginPDFContextToFile方法开始上下文后就可以绘制图片了,最后记得使用UIGraphicsEndPDFContext()方法结束上下文。绘制pdf时,既可以绘制单页pdf,也可以绘制多页pdf成一本书,在绘制开始时,使用UIGraphicsBeginPDFPage()开始新的一页这是非常重要的。下面演示绘制单页pdf和多页的pdf。

具体的实例如下:

//将图片绘制在单页的pdf上

#parma mark -创建单页pdf

-(void)createPDF
{
    //设置pdf文件的路径
    NSArray *documents = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);

    //文档目录
    NSString *document = [documents lastObject];
    //NSLog(@"%@",document);

    //拼接pdf路径
    NSString *PDFpath = [document stringByAppendingPathComponent:@"img.pdf"];

    //开始pdf的上下文
    UIGraphicsBeginPDFContextToFile(PDFpath, CGRectMake(0, 0, 320, 480), nil);

    //获取当前的绘图上下文
    CGContextRef context = UIGraphicsGetCurrentContext();

    //开始pdf新的一页
    UIGraphicsBeginPDFPage();

    //绘制圆形
    CGContextAddEllipseInRect(context, CGRectMake(100, 100, 100, 100));
    [[UIColor redColor]set];
    CGContextDrawPath(context, kCGPathEOFillStroke);

    //绘制文字
    NSString *str = @"this is a image page";
    [str drawAtPoint:CGPointMake(50, 250) withAttributes:@{NSForegroundColorAttributeName:[UIColor redColor],NSFontAttributeName:[UIFont systemFontOfSize:30]}];

    //结束pdf的上下文
    UIGraphicsEndPDFContext();
}

在沙盒目录下创建img.pdf文件和绘制在img.pdf文件上的圆图形和文字的截图为:

 

//将多张图片绘制在多页的pdf上

首先导入多张笑脸图片,导入的素材截图为:

#parma mark -创建多页pdf

-(void)createPDFBook
{
    //设置pdf文件的路径
    NSArray *documents = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);

    //文档目录
    NSString *document = [documents lastObject];
    //NSLog(@"%@",document);

    //拼接pdf路径
    NSString *PDFpath = [document stringByAppendingPathComponent:@"imageBook.pdf"];

    //开始pdf的上下文(参数:设置pdf路径、设置pdf大小、附带pdf字典信息)
    UIGraphicsBeginPDFContextToFile(PDFpath, CGRectMake(0, 0, 320, 480), nil);

    //绘制图片
    for (int i = 0; i<9; i++)
    {
        //开始新的一页
        UIGraphicsBeginPDFPage();

        //绘制图片
        UIImage *image = [UIImage imageNamed:[NSString stringWithFormat:@"%d.png",i]];
        [image drawInRect:CGRectMake(100, 200, 100, 100)];
    }

    //结束pdf的上下文
    UIGraphicsEndPDFContext();
}

在沙盒目录下创建imgBook.pdf文件和绘制在imgBook.pdf文件上的笑脸截图为:

   

  一共有9张图片,所以创建了9页pdf,9张笑脸图片分别被绘制在上面。

时间: 2024-10-09 20:39:56

iOS:quartz2D绘图(在PDF文件上绘制图片)的相关文章

怎么在PDF文件上进行修改文字

怎么在PDF文件上进行修改文字?PDF文件是一种比较难修改的文件,很多人想要PDF文件上面修改文字,但是不知道怎么修改,其实想要修改PDF文件上面的文字就可以使用专业的PDF编辑器,小编这边推荐使用迅捷PDF编辑器,下面就为大家分享一下迅捷PDF编辑器修改PDF文字的操作方法.操作软件:PDF编辑器https://www.xunjiepdf.com/editor1:首先将迅捷PDF编辑器安装到自己的电脑中,打开PDF编辑器将PDF文件添加到软件中.2:在软件中找到内容编辑工具,点击内容编辑工具,

如何将PDF文件页面转换为图片

把PDF转为图片,也就是将PDF文件的页面输出成一张张的图片文件,在文档内容不想被修改,又或是方便在电脑或是手机等设备上查看时可以这么做.那么将PDF文件转成图片又是如何来操作的呢? 要转PDF文件可以用PDF转换器就可以实现了,打开转换工具,点击PDF转换成其他文件展开选项列表,在里面选择文件转图片. 然后点上方的添加文件或添加文件夹按钮将需要转换的PDF文件添加到转换器中,或者直接将文件拖到转换器中也是可以的. 为文件选择输出目录,可设置转换好的文件保存在和原文件同一位置,或者是设置在指定的

电脑中如何提取PDF文件中的图片

通常,我们在一些PDF文件中看到一些好看的图片,想将图片保存下来,但是PDF文件是无法编辑的,在文件自身当中我们无法将图片完成的提取出来,因此大家都会想办法在不破坏图片完整性的情况下将图片从PDF文件中提取出来,下面就跟大家分享一下小编是从电脑中如何提取PDF文件中的图片.借助工具:×××换器1.在PDF文件中提取图片,本身也是一种对文件的编辑,知识PDF文件无法编辑,所以我们要借助工具来进行编辑,工具可以直接在百度浏览器中下载.2.下载安装好工具,打开工具,进入到操作页面,操作页面左边是功能栏

PDF转换技巧之怎样把PDF文件转换成图片?

PDF如何转换成图片:有很多小伙伴在工作中都会遇到一些文件转换的问题,每次遇到这些问题都会很头痛,不知道用什么方法可以更快的转换完成,尤其是遇到PDF要转换成图片这类的问题,这就需要一个比较专业的转换器可以节省很多时间. 那么,如何把PDF文件转换成图片?方法是什么?推荐使用迅捷PDF转换器,这是一款专业的PDF转换软件,功能齐全.操作简单.下面就一起来看看它是如何实现PDF转图片的吧! 第一步:打开下载安装好的PDF转换器进入首页,在首页的左边功能栏里可以看到PDF转换器的默认功能: 第二步:

怎么获取pdf文件里面的图片

一个pdf文件可以包含多种文件格式,里面有文字.链接.表格.图片等:文字和链接都可以自己打出来的,可是PDF文件里面的图片是无法拷贝和下载的,在遇到这个问题你是不是头疼呢!下面小编在解决你头疼的毛病,怎么获取pdf文件里面的图片? 获取pdf文件不借助软件是无法实现的,那么什么软件可以实现呢!正好小编知道一个网址PDF图片获取http://app.xunjiepdf.com/pdfgetimg,下面是使用的方法和步骤: 步骤一:搜索"迅捷pdf在线转换器",找到相关页面点击进入在线网站

iPhone手机PDF文件转为JPG图片的方法

PDF格式是最近比较流行的一种文件格式,很多时候会遇到PDF文件格式转换为其他文件,那苹果手机给怎么让PDF文件转换为JPG文件呢?不知道的朋友可以看看下面的方法. 1:首先打开手机,在AppStore里搜索需要的文件转换工具:迅捷PDF转换器. 2:其次运行工具,在"PDF转换器"页面选择文件转换格式,今天需要用到的是"PDF转换其他格式". 3:点击"PDF转换其他格式"后会出现你最近使用和浏览过的所有PDF文件,在这里选择好需要转换的文件.

如何把PDF文件转换为JPG图片

大家有遇到需要将PDF文件转换为JPG的情况么,文档资料里面经常会有一些图片类型的内容,有的时候我们需要获取这些图片内容,但是PDF文件又是不可编辑的,那如何把PDF文件转换为JPG图片呢,跟着小编一起来试试吧!操作工具:[迅捷PDF转换器] 第一步:打开电脑进入浏览器搜索"迅捷PDF在线转换器"进入在线页面. 第二步:进入到在线页面后,找到页面内的"文档转换"并在下拉框内选择"PDF转图片",进入功能页的页面内. 第三步:进入转换的页面后,点击

iOS核心笔记——网络编程-文件上传

1.文件上传: ?重要:当用户想向服务器传送客户端本地文件时,此时,需要使用POST请求方式.NSURLSessionUploadTask文件上传任务将文件传递至服务器. 1-1.技术点: ?重要:①设置请求头信息,告诉服务器本次网络请求是在向服务器传送文件:②拼接要上传的文件的数据,拼接过程中一定要严格按照文件上传格式进行,否则,文件上传将会失败. 1-2.文件上传格式: 1.设置请求头信息: ?重要:设置请求头,告诉服务器这是一次文件上传操作. 2.设置文件参数: ?重要:设置请求体,将文件

文件上传,图片加水印

文件上传: 所用控件:FileUpload 使用时的思路: 1.判断用户是否选中了文件 FileUpload.FileName获取选中的文件名,判断长度,如果长度大于零就代表已经选择了文件 JS端:通过ID获取控件,然后控件的value获取选中的文件名 2.将文件保存到服务器上 FileUpload.SaveAs("绝对路径"); 3.获得绝对路径 先编写相对路径:比如"UpLoads/abc.txt" 再把路径映射成绝对路径:Server.MapPath(&quo