UIScrollViewのようなスクロールできるViewをPDFとして出力するようなものを書いてみました。

PDFと言っても、スクリーンショットをPDFにしてるのと同様です。(文字列も画像データになってしまうためコピペ等はできない)

単純にやるなら、 UIGraphicsBeginImageContextWithOptions(scrollView.contentSize, YES, 2.0);のような方法で、ScrollViewの描画内容を
UIImageとして取得できるので、UIScrollView -> PNG(ScreenShot) -> PDF というフローでScrollViewの描画内容をPDFに出力できます。

ただ、このような遠回りをしなくても UIKitにはUIGraphicsBeginPDFContextToDataというような描画内容を直接PDF(NSData)にするものが存在します。
ScrollViewToPDF.m のクラスの方がこれを元に作ったもので、サンプルではTableViewをPDF化して出力しています。
(UIGraphicsBeginPDFPageWithInfoでPDFをページに分割もできます)

このように描画内容をPDFにするだけなら比較的簡単に行えます。
ただし、文字列のコピーや複雑な配置などを真面目に作る場合は A-Liaison BLOG: libHaruを使ってiPhoneアプリからPDFを作成するのように書いていく必要があります。

  • Kazunabe

    非常にわかりやすい内容でためになりました。このようにPDF変換する方法があるのですね。

Post Navigation