首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在自定义UIPrintPageRenderer中使用UIFont绘制string对象

在自定义UIPrintPageRenderer中使用UIFont绘制string对象
EN

Stack Overflow用户
提问于 2015-03-13 04:35:03
回答 1查看 319关注 0票数 1

我正在继承UIPrintPageRenderer来绘制我自己的页面,以便通过AirPrint打印。我有一个简单的String对象,我想改变字体的大小。使用drawAtPoint withAttributes方法,可以在正确的位置绘制字符串,但字体名称和大小保持不变。是否可以在UIPrintPageRenderer的drawPageAtIndex方法中使用NSAttributedStrings?

示例代码:

代码语言:javascript
复制
import UIKit

class MyPrintPageRenderer: UIPrintPageRenderer {
    override func drawPageAtIndex(pageIndex: Int, inRect printableRect: CGRect) {
        let font = UIFont(name: "Times", size: 72.0)!
        var stringAttributes = [NSObject: AnyObject]()
        stringAttributes["NSFontAttributeName"] = font

        let lineOne = "Some text"
        let lineOnePointX = CGRectGetMidX(printableRect) - nameLineOne.sizeWithAttributes(stringAttributes).width / 2
        let lineOnePointY = CGRectGetMinY(printableRect)
        let lineOnePoint = CGPoint(x: lineOnePointX, y: lineOnePointY)
        lineOne.drawAtPoint(lineOnePoint, withAttributes: stringAttributes)
    }
}
EN

回答 1

Stack Overflow用户

发布于 2015-03-13 08:56:56

事实证明,我在stringAttributes的键中使用NSFontAttributeName作为字符串,而不是类型本身。删除引号已解决此问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29019694

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档