• <原>DrawingPrinting编程学习1


    ios  绘图 可以通过两种方式 实现

    1.Core Graphics and UIKit frameworks, 支持2D视图

    2.OpenGL ES      这里先不讨论

     

     

    首先了解几个主要的概念


    1-graphics context    图形上下文(图形环境)

      为了显示视图内容,UIKit 为渲染工具 创建了一个graphics context (图形上下文)。这个上下文包括了绘图系统需要执行的一些绘图命令的信息。     比如 一些绘图的属性   如fill and stroke color, the font, the clipping area, and line width.  我们也可以为位图图像和pdf图像建立自定义的 图形上下文 。

    2-default coordinate system   UIKit 默认的坐标系统   view的左上角是原点  没啥好说的

    3-logical coordinate space     测量两点间的距离  device coordinate space 是测量像素间的距离   从精确度上看 “点”是用浮点值表示的

    UIKit, Core Graphics, and Core Animation Give Your Application Many Tools For

    Drawing 


    UIKit and Core Graphics  有很多补充的图像功能 包括graphics contexts, bezier paths, images, bitmaps, transparency layers, colors, fonts, PDF content, and drawing rectangles and clipping areas 

    另外Core Graphics    有与line attributes, color spaces, pattern colors, gradients, shadings, and image masks  这些属性相关的方法

    The Core Animation framework    允许我们通过操作和显示内容 创建流动样式的动画效果   而这里的内容可以是通过其他方式创建的

     

    It’s Easy to Update Your Application for High-Resolution Screens  

    一些ios设备的屏幕的特点是 高分辨率,所以 你的应用程序 必须做两手准备  即能在这些高分辨率的机器上跑也能在那些低分辨率的机器上跑

    我们可以做的是 准备多张图片以适应高分辨率  然后在代码处 判断条件并且 应用合适的图片

    Applications Have a Range of Options for Printing Content    

    自ios4.2起  应用程序支持 无限打印内容  ,当实现打印工作是,我们有三种方式来把要打印的内容交给UIKit

    1.可以直接给framework 一个或者多个可直接打印的对象,这样的对象需要最低限度的应用程序的参与  These are NSData, NSURL, UIImage, or ALAsset objects containing or referencing image data or PDF content 

    2.可以分配一个格式化的程序来完成打印工作,这个格式化的程序可以是一个对象,能够对许多页的内容进行某种形式的布局,例如plain text or HTML    

    3.可以为打印工作分配一个页渲染器,页渲染器通常是一个UIPrintPageRenderer   的自定义子类的一个实例     一个页渲染器能使用一个或者多个 打印格式化程序  来完成画图工作以及 格式化要打印的内容

     

     

     
  • 相关阅读:
    React 实践记录 02 Flux introduction
    React 实践记录 01 组件开发入门
    IntelliJ IDEA 2018.2.2及以下版本破解方法
    Icon.png pngcrush caught libpng error:Read
    MySQL导入.sql文件及常用命令
    MySql Host is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts' 解决方法
    mysql 导出数据库命令
    MySQL 连接本地数据库、远程数据库命令
    在EC2上创建root用户,并使用root用户登录
    svn 批量添加命令
  • 原文地址:https://www.cnblogs.com/bucengyongyou/p/2683857.html
Copyright © 2020-2023  润新知