慢慢适应新环境,发点东西。
拍照有三条路子:
1.截屏
2.image picker
3.AVCapture
最近测试,用cameraOverView截屏老是得到黑屏,无解,故抛弃。
image picker和AVCapture效果其实差不多,无论是picker回调得到的image,还是AVCapture回调得到的still image,图片比例都是4:3(AVCapture用的sessionPreset是photo),这个比例很关键,同样高度下,4:3的图比3:2的图宽度更宽,比如480高度下,4:3对应宽度是360,3:2对应宽度是320,所以其实摄像时当前屏幕显示的图其实被裁减过了,360的宽度只取中间的320(拍照时手动截屏,然后把picker回调的image存进相册,对比即可看出)。
搞清楚回调image和当前屏幕image的关系,剩下的就好办了,把回调image手动截取一下即可。
附件demo实现拍照打水印的功能(类似而已,把图片正确crop之后,想印神马都很随意的^^)
参考:
http://stackoverflow.com/questions/8800279/iphone-image-ratio-captured-from-avcapturesession
http://lifeinlofi.com/2011/12/12/iphone-image-sizes-2007-2011/
扩展:
http://vocaro.com/trevor/blog/2009/10/12/resize-a-uiimage-the-right-way/