Swift UIView、PDF化、複数枚、保存、PKCanvasView入れる
UIView、PDF化、複数枚、保存、PKCanvasView入れる
PKCanvasViewを生成、書込みデータをPKDrawingで復元、UIView.addSubview()、PDF化しても反映されない。
試しに、画面に表示すると、表示される。
これに1時間悩まされた。
出来るのかもしれないが、現状解決法は見つけられず。
別の解決方法は、PKDrawing.image(from:scale:)で画像化、UIView.addSubview()する。
scaleを正しく設定しないと粗い画像になる。
今回は3.0に設定。
開発しているアプリからの抜粋
func createPKCanvasView(view: UIView, dateComponentsWeek: [DateComponents]) {
if let page = Pages.select(year: dateComponentsWeek[0].year!, week: dateComponentsWeek[0].weekOfYear!) {
do {
print(page.count)
let drawaing = try PKDrawing(data: page).image(from: CGRect(x: 0.0, y: 0.0, width: 1366.0, height: 1024.0), scale: 3.0)
let image = UIImageView(frame: CGRect(x: 0.0, y: 0.0, width: 1366.0, height: 1024.0))
image.image = drawaing
view.addSubview(image)
}
catch {
let nserror = error as NSError
fatalError("Unresolved error \(nserror), \(nserror.userInfo)")
}
}
else {
print("select no page")
}
}




