BRPDFImage 1.0.0

BRPDFImage 1.0.0

测试已测试
Lang语言 Obj-CObjective C
许可证 Apache 2
发布最新发布2015 年 9 月

Matt MagoffinMatt Magoffinwmjesstaylor 维护。



  • Matt Magoffin

那个能够(绘制矢量艺术)的微小 UIImage

作为 iOS 开发者,你是否想过以下任何一点

  • 我希望有办法使用矢量图标(而不是位图)!
  • 我厌倦了为每张图片制作两张 PNG 图标,以支持视网膜图像!
  • 我不想在推出新的 Eagle Eye Retina 显示屏时制作 @4x 图标!
  • 我所有的图标都是在 [Illustrator、Inkscape、...] 中创建的,并且很烦恼每次我做出更改都必须将其重新渲染为 PNG 文件!
  • 为什么现在会下雨?

如果你有这样的想法,那么 BRPDFImage 就在这里帮助你,驱散那些阴雨天的忧郁。BRPDFImage 是对 UIImage 的一种非常小的扩展,它允许你在任何需要 UIImage 的地方使用 PDF 艺术作品。PDF 格式可以被认为是一种另一种矢量艺术文件格式,实际上任何值得一看的矢量艺术编辑程序都将支持保存 PDF 文件。

支持的操作系统版本

BRPDFImage 支持 iOS 5+。是的,我们的老朋友 iPad 1 依然得到支持。继续前进,小巧的 iPad 1。

示例用法

下面是 BRPDFImage 用法的示例

NSURL *url = [[NSBundle mainBundle] URLForResource:@"sunshine" withExtension:@"pdf"];
UIColor *tintColor = [UIApplication sharedApplication].keyWindow.tintColor;
UIImage *img = [[BRPDFImage alloc] initWithURL:url maximumSize:CGSizeMake(32,32) tintColor:tintColor];

这将从应用程序的主包中的 sunshine.pdf 创建一个 UIImage。此图像将被视为遮罩,不透明像素将变为主窗口的着色颜色。您可以传递一个 nil 着色颜色,以不对其应用着色处理。

工作原理

BRPDFImage 仅仅是在初始化时将 PDF 资源渲染为位图图像,这就是为什么您必须传递一个预期的 CGSize(或最大尺寸)的原因。从那时起,您基本上有一个普通的 UIImage,并且可以像对待正常 UIImage 那样对待它。

在 iOS 上进行 PDF 渲染相当快,但如果您在 UITableViewUICollectionView 中使用了大量的 BRPDFImage,则可能希望对这些实例进行缓存,以获得更好的性能。项目中的 演示应用程序 正是这样做的(见下文)。

项目集成

只需将 BRPDFImage.hBRPDFImage.m 复制到您的项目中即可。这些文件位于 BRPDFImage/BRPDFImage 目录中。如果您还没有包括它,则需要将 CoreGraphics.framework 添加到您的构建目标中。很简单!

演示应用程序

该仓库还包括一个可在iOS 5.1.1或更高版本上运行的iPhone/iPad应用程序。它将渲染一个 UITableView(iOS < 6)或一个 UICollectionView(iOS >= 6),展示一些随机着色的PDF图标。这些图标来自Font Awesome(感谢Dave,你很棒)。

Demo App