LoginSignup
3
2

More than 5 years have passed since last update.

カメラロールから複数画像取得してPDFに変換して開くまでのライブラリ作った

Posted at

注意事項

ベースとしているオリジナルライブラリの導入が必須です。
それも配布しますが、UIKitを多分に変更するので気をつけてください。

動き

alt

実装コード

ただし見てわかるように非常に独自仕様


class ImagePickViewController: ADNavigationController {

    //今回のキモ、カメラロールから複数選択を行う
    let imagePicker = RMImagePicker()
    //Androidっぽいボタン
    let okButton = ADMainButton(icon: "done")

    //画面の設定を行う
    override func setSetting() {
        //ナビゲーションバーに表示されるタイトル
        title = "カメラロール"
    }

    //UIの設定を行う
    override func setUISetting() {
        //ボタンのアクションを設定 ここではimagePicker.endPickingImage()
        okButton.addAction(imagePicker.endPickingImage)

        //endPickingImage()を呼ぶと画像の配列で呼ばれる images:[UIImage]
        imagePicker.completion = {images in

            //[UIImage] の extension,PDF に変換 data:NSData
            images.createPDF {data in

                //NSData の extension,name で保存 url:NSURL
                data.save("tmp.pdf") {url in
                    //UIDocumentInteractionController を表示する show(from:RMViewController,_ url:NSURL)
                    RMDocumentController.show(self,url)
                }
            }
        }
    }

    //UIの追加を行う
    override func addUIs() {
        addSubview(imagePicker.view)
        //メインボタンをokButtonに設定
        mainButton = okButton
    }

    override func setLoadControl() {
        //imagePickerのサイズをfullContentsFrameに
        imagePicker.frame = fullContentsFrame
    }
}


ダウンロード

ちょっと待って

RM

そのうちライブラリの方の解説も作る
でもまだ仕様が安定しないから、もうちょっと経ってからで

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2