[Documentation]UIImageView官方文档中文翻译

An image view object provides a view-based container for displaying either a single image or for animating a series of images. For animating the images, the UIImageView class provides controls to set the duration and frequency of the animation. You can also start and stop the animation freely.

图像视图对象提供了一个基于视图的容器来展示单幅图像或者把一系列图像做成动画。对于把图像做成动画,UIImageView 类提供控制的方法和变量来设置动画长度和动画的帧率。你可以自由地开始或者停止动画。

When a UIImageView object displays one of its images, the actual behavior is based on the properties of the image and the view. If either of the image’s leftCapWidth or topCapHeight properties are non-zero, then the image is stretched according to the values in those properties. Otherwise, the image is scaled, sized to fit, or positioned in the image view according to the contentMode property of the view. It is recommended (but not required) that you use images that are all the same size. If the images are different sizes, each will be adjusted to fit separately based on that mode.

当一个UIImageView对象展示它其中一副图像时,实际上是基于图像和视图的属性的。如果图像的 leftCapWidth或者 topCapHeight 属性都为非零,那么图像会根据属性中的值被拉伸。否则,图像根据视图的Contentmode属性会成比例地调整大小以适应或者定位于图像视图中。使用同样大小的图像是被非常推荐的(但不是必须的)。如果图像是不同大小的,每幅图像都会被调整来适应各自的模式(PS:模式指的是contentMode)

Because image objects are immutable, they also do not provide direct access to their underlying image data. However, you can get an NSData object containing either a PNG or JPEG representation of the image data using the UIImagePNGRepresentation and UIImageJPEGRepresentation functions.

因为图像对象是不可变的,它们也不能提供内部图像数据的直接访问。但是,你可以用UIImagePNGRepresentationUIImageJPEGRepresentation 函数获得一个包含PNG图像或者JPEG图像描述数据的NSData对象。

The system uses image objects to represent still pictures taken with the camera on supported devices. To take a picture, use the UIImagePickerController class. To save a picture to the Saved Photos album, use the UIImageWriteToSavedPhotosAlbum function.

系统使用 图像对象 来描述(存储)可支持的设备的相机拍摄的静态图像。如果是想拍照片,使用UIImagePickerController 类。如果是要保存图片到已存储的照片集中,使用UIImageWriteToSavedPhotosAlbum 类。

Images and Memory Management

图像和内存管理

In low-memory situations, image data may be purged from a UIImage object to free up memory on the system. This purging behavior affects only the image data stored internally by the UIImage object and not the object itself. When you attempt to draw an image whose data has been purged, the image object automatically reloads the data from its original file. This extra load step, however, may incur a small performance penalty.

在低内存的情况下,图像数据可能会被从UIImage对象清除来释放系统的内存。这个清除动作仅仅会影响由UIImage对象内部存储的图像数据而不会影响图像对象本身。当你尝试显示一副数据已经被清除的图像,图像对象会自动地从原文件重新载入数据。这个额外的载人呀步骤可能会引起小小的运行问题。(PS:也就是说 内存不够的时候就会清除UIImage对象的数据来是释放内存,要用到图像的时候就重新载入图像)

You should avoid creating UIImage objects that are greater than 1024 x 1024 in size. Besides the large amount of memory such an image would consume, you may run into problems when using the image as a texture in OpenGL ES or when drawing the image to a view or layer. This size restriction does not apply if you are performing code-based manipulations, such as resizing an image larger than 1024 x 1024 pixels by drawing it to a bitmap-backed graphics context. In fact, you may need to resize an image in this manner (or break it into several smaller images) in order to draw it to one of your views.

避免创建大于1024 x 1024的UIImage对象。这种大图像不仅会消耗的大量内存,当使用这种图像作为OpenGL ES的材质或者在视图或者图层上显示这种图像,可能会遇到问题。当执行基于代码的操作时这种图像大小限制是不适用的,比如通过支持位图的图形环境来改变一副大于1024 x 1024像素的图像的大小。事情上,你可能需要用这种方法来改变图像的大小(或者把图像分割成几个更小的图像)以在你的视图上显示图像。

Comparing Images in iOS 8

对比iOS 8 中的图像处理

The bulk of what an image is lies in its CGImageRef and not in the UIImage object it is wrapped in. As of iOS 8, you can no longer rely on pointer equality to compare cached UIImage objects as the caching mechanism may not return the same UIImage object, but will have cached image data separately. You must use isEqual: to correctly test for equality.

图像的大部分数据存储在它的 CGImageRef 中,而不是包入UIImage对象中。 在iOS 8 中,你不可以再依靠指针相同去比较已缓冲的UIImage对象因为缓冲机制可能不会返回同一个UIImage对象,而是分离地缓存图像数据。一定要使用isEqual:来正确测试相等与否。(PS:我不了解这块内容 翻错了别打我?? 不过好像我什么都不怎么了解啊 你们自己看吧 大部分都不会有错的 )

Image Assets and Trait Collections

You can assign an image to a UIImageAsset object through the use of trait collections. Registering an image to an image asset provides a way to group images together. Through the use of trait collections, you can retrieve an image that best fits your current layout. For example, you can retrieve a different image depending on whether your view has a compact or regular size class.

你可以通过使用trait colloections分配图像给UIImageAsset对象。分配一副图片给到一个图片集(??PS:不知道大家怎么叫它们的我就随便叫了,大家意会一下)提供了一种分类图像的方法。通过trait collections,你可以获取最适配你当前布局的图像。比如,你可以取得一副取决于你的视图是紧凑还是常规大小的不同的图像。

Supported Image Formats

支持的文件格式

Table 1 lists the file formats that can be read by the UIImage class.

表1是可以被UIImage类读取的文件格式表。


Format


Filename extensions


Tagged Image File Format (TIFF)


.tiff.tif


Joint Photographic Experts Group (JPEG)


.jpg.jpeg


Graphic Interchange Format (GIF)


.gif


Portable Network Graphic (PNG)


.png


Windows Bitmap Format (DIB)


.bmp.BMPf


Windows Icon Format


.ico


Windows Cursor


.cur


X Window System bitmap


.xbm

Note:Windows Bitmap Format (BMP) files that are formatted as RGB-565 are converted to ARGB-1555 when they are loaded.

注意:RGB-565的 BMP文件在载入时会被转换成ARGB-1555。

纯原创 转载请注明!

时间: 2024-10-14 08:05:02

[Documentation]UIImageView官方文档中文翻译的相关文章

Erlang epmd官方文档中文翻译

本文含epmd简介及官方文档之翻译,文档地址 http://erlang.org/doc/man/epmd.html翻译时的版本 R19.1 中英文水平都不咋地,不通顺处海涵,就酱. 简介 Erlang分布式系统中节点是通过节点名字互相连接的,节点名字为[email protected]_ADDRESS格式. epmd是分布式erlang中比较重要的模块.集群中每台机器都有一个epmd进程,这些进程端口号都用同一个端口号(默认4396端口).所有节点启动的时候都会连接到本机对应的epmd进程,它

Matlab最新的官方文档中文翻译

文章翻译的是Matlab最新的官方文档R2016b,可能后续如果我还有时间会继续翻译,希望能够帮到大家,翻译的不好请大家不要吐槽. Matlab官方文档地址:http://cn.mathworks.com/help/pdf_doc/matlab/getstart.pdf Desktop Basics  当您启动MATLAB时,桌面以其默认布局显示如下: 说明:请大家对照着英文原版看,我没有截图,因为实在太麻烦 桌面包括以下面板: ?当前文件夹 - 访问您的文件. ?命令窗口 - 在命令行中输入命

SparkSql官方文档中文翻译(java版本)

1 概述(Overview) 2 DataFrames 2.1 入口:SQLContext(Starting Point: SQLContext) 2.2 创建DataFrames(Creating DataFrames) 2.3 DataFrame操作(DataFrame Operations) 2.4 运行SQL查询程序(Running SQL Queries Programmatically) 2.5 DataFrames与RDDs的相互转换(Interoperating with RDD

Cloudera Impala官方文档中文翻译-2(Using Impala to Query HBase Tables)

Using Impala to QueryHBase Tables(利用impala查询HBase Tables) 默认情况下,impalatable使用存储在HDFS中的数据文件,这种存储方式适用于批量数据加载和查询(bulk loads and query).相反,HBase可以对用于OLTP风格的负载的数据进行高效率查询,比如查找单个row或者一个range的values. 对于impala用户来说,HBase是key-value存储形式的数据库,value包含多个fields.Key在i

Bootstrap-datepicker3官方文档中文翻译---Markup/标记(原版翻译 http://bootstrap-datepicker.readthedocs.io/en/latest/index.html)

Markup/标记 下面是已经支持的标签的例子.这些标签本身不会提供DatePicker控件:你需要在标签上实例化Datepicker. input/输入框 最简单的例子: input获得焦点 (使用鼠标点击或者tab按钮跳入) 都会出现该控件. <input type="text" class="form-control" value="02-16-2012"> component/组件 在一个类名为.input-group的boo

Django 2.0官方文档中文 渣翻 总索引(个人学习,欢迎指正)

Django 2.0官方文档中文 渣翻 总索引(个人学习,欢迎指正) 置顶 2017年12月08日 11:19:11 阅读数:20277 官方原文: https://docs.djangoproject.com/en/2.0/ 当前翻译版本: v2.0 Python版本要求: v3.4+ (译者注:本人目前在南京一家互联网公司工作,职位是测试开发工程师.因为测试工作中经常会用到编码语言,如Python.Java.Shell等,所以几年前萌生了对Python语法的学习.Django作为Python

uFrame 1.6 官方文档随意翻译(一)

前言: 建议直接看官方英文文档,下面都是一些简单的翻译. The Kernel The Kernel是uFrame的本质,负责处理加载场景,系统和服务. Subsystems 作为一个容器,组成许多Nodes. Subsystems允许你分离项目中的逻辑部分和可复用部分. System Loaders System Loaders常用语初始化信息. Node Elements 主要负责ViewModel(Unity中uFrame框架附带了Controller)部分 For example, Pl

别开心太早,Python 官方文档的翻译差远了

近几天,很多公众号发布了 Python 官方文档的消息.然而,一个特别奇怪的现象就发生了,让人啼笑皆非. Python 文档的中文翻译工作一直是“默默无闻”,几个月前,我还吐槽过这件事<再聊聊Python中文社区的翻译>,当时我们的进度是 10.3%,远远落后于日本和法国,甚至落后于巴西! 这次所谓的中文版,当然是未完成翻译的残品.刚查了下,整体进度是 19.7%. 翻译进度不足20% 有的公众号在发布消息的时候,说明了这不是官宣.不是正式发布版,还指出了中文版的访问地址是隐藏入口.这都是忠于

Jinja2学习笔记暨官方文档的翻译

http://blog.csdn.net/lgg201/article/details/4647471 呵呵, 刚刚看完Python模板引擎Jinja2的文档, 感觉很好, 觉得动态语言真是很好.  模板引擎竟然可以做的如此灵活....真是不错.... 下面直接把看文档过程的笔记发布出来, 呵呵, 基本上就是翻译, 加了不多的一点自己的解释......希望可以帮到大家 补充: 1. 在模板中设置自定义变量: {% set variable_name = value %} 比如设置{% set u