SampleBase
文件对自己的项目进行相关环境配置,详见 TuSDK-for-iOS-demo 。AlbumMultipleComponentSample
或者 AlbumComponentSample
中的代码进行照片美化组件的调用。不要更改组件的代码顺序
。#import <TuSDKGeeV1/TuSDKGeeV1.h>
。/**
* 多选相册组件
*/
@interface AlbumMultipleComponentSample ()
{
// 多选相册组件
TuSDKCPAlbumMultipleComponent *_albumComponent;
}
@end
self
。option
功能参数设置可以参考文档相机组件的使用。 // 使用默认主题包的组件需要在组件启动前提前选择主题包的`style`,避免默认主题包组件 UI 显示异常。
// [TuSDK shared].style = lsqSdkUIDefault;
_albumComponent =
[TuSDKGeeV1 albumMultipleCommponentWithController:controller
callbackBlock:^(TuSDKResult *result, NSError *error, UIViewController *controller)
{
// 相册选择获取到的是照片的对象,选择单张照片获取的是 result.imageAsset ,是 id<TuSDKTSAssetInterface> imageAsset 类型
// 选择多张照片获取的是 result.imageAssets ,是 NSArray<TuSDKTSAssetInterface> *imageAssets 类型
// result.imageAssets 这个数组内存放的是 id<TuSDKTSAssetInterface> imageAsset 类型的对象
// 用户可以将多选相册连接图片编辑器使用
// 开启裁切+滤镜组件,需要遵守 TuSDKPFEditTurnAndCutDelegate
// [self openEditAndCutWithController:controller result:result];
// 开启裁切+滤镜+贴纸编辑组件,需要将组件声明成全局变量
// [self openEditAdvancedWithController:controller result:result];
// 开启照片美化组件,需要将组件声明成全局变量
// [self openEditMultipleWithController:controller result:result];
// 详细开启编辑组件的方法请参考 demo 中各组件开启方法内的详细代码
// 用户只是单独的使用多选相册并对选择的图片对象进行处理
// 用户可以通过数组下标的方式获取到对应的照片对象
// 将 result.imageAsset 对象转换为图片的操作需要消耗一部分性能
// id<TuSDKTSAssetInterface> storeimageAsset = [result.imageAssets objectAtIndex:0];
// UIImage *storeImage = [storeimageAsset fullResolutionImage];
// 用户使用多选相册的相机进行拍照获取 result.image 需要对 option 对应的功能参数进行设置
}
maxSelectionNumber:9];
// @see-http://tusdk.com/docs/ios/image/api-geev1/Classes/TuSDKPFAlbumMultipleOptions.html
// _albumComponent.options.albumOptions
// _albumComponent.options.albumOptions.viewClazz = [TuSDKPFAlbumView class];
// @see-http://tusdk.com/docs/ios/image/api-geev1/Classes/TuSDKPFCameraOptions.html
// _albumComponent.options.cameraOptions
// _albumComponent.options.cameraOptions.viewClazz = [TuSDKPFCameraView class];
// 需要进行对 option 进行设置,相机拍照后可以获取到 result.image
// _albumComponent.options.cameraOptions.saveToAlbum = NO;
// _albumComponent.options.cameraOptions.saveToTemp = NO;
// 相册组件中每行的相片数目,默认是 0 ,系统会自动适配,也可以自己进行设置
// _albumComponent.options.albumOptions.photoColumnNumber = 5;
// 设置照片排序方式(多选相册特有,支持 iOS 8 及以上)
// _albumComponent.options.albumOptions.photosSortKeyType = lsqAssetSortKeyCreateDate;
// 设置选择照片的最大尺寸 默认:8000*8000
// _albumComponent.options.albumOptions.maxSelectionImageSize = CGSizeMake(8000, 8000);
// 是否在组件执行完成后自动关闭组件 (默认:NO)
_albumComponent.autoDismissWhenCompelted = YES;
[_albumComponent showComponent];
_albumComponent.options.albumOptions
进行设置,全部参数请阅读多选相册的选项配置。_albumComponent.options.cameraOptions
进行设置,全部参数请阅读相机组件选项配置。 _albumComponent.options.albumOptions.viewClazz = [TuSDKPFAlbumMultipleView class];
_albumComponent.options.albumOptions.componentClazz = [TuSDKPFAlbumMultipleViewController class];
_albumComponent.options.albumOptions.photosViewClazz = [TuSDKPFPhotosGridView class];
_albumComponent.options.albumOptions.gridCellViewClazz = [TuSDKPFPhotosGridCell class];
_albumComponent.options.albumOptions.albumPopListClazz = [TuSDKPFAlbumPopList class];
_albumComponent.options.albumOptions.albumPopListCellClazz = [TuSDKPFAlbumPopListCell class];
_albumComponent.options.cameraOptions.viewClazz = [TuSDKPFCameraView class];
_albumComponent.options.cameraOptions.configBarViewClazz = [TuSDKPFCameraConfigView class];
_albumComponent.options.cameraOptions.bottomBarViewClazz = [TuSDKPFCameraBottomView class];
_albumComponent.options.cameraOptions.flashViewClazz = [TuSDKPFCameraFlashView class];
_albumComponent.options.cameraOptions.filterViewClazz = [TuSDKPFCameraFilterGroupView class];
_albumComponent.options.cameraOptions.focusTouchViewClazz = [TuSDKCPFocusTouchView class];
_albumComponent.options.cameraOptions.filterBarGroupCellClazz = [TuSDKCPGroupFilterGroupCell class];
_albumComponent.options.cameraOptions.filterBarTableCellClazz = [TuSDKCPGroupFilterItemCell class];
_albumComponent.options.cameraOptions.filterBarCellWidth = 60;
_albumComponent.options.cameraOptions.filterBarHeight = 80;
_albumComponent.options.cameraOptions.cameraPostion = [AVCaptureDevice firstBackCameraPosition];
_albumComponent.options.cameraOptions.cameraPostion = [AVCaptureDevice firstFrontCameraPosition];
_albumComponent.options.cameraOptions.disableMirrorFrontFacing = YES;
_albumComponent.options.cameraOptions.sessionPreset = AVCaptureSessionPresetHigh;
_albumComponent.options.cameraOptions.outputCompress = 0.95f;
_albumComponent.options.cameraOptions.regionViewColor = [UIColor lsqClorWithHex:@"#403e43"];
_albumComponent.options.cameraOptions.outputSize = CGSizeMake(1440, 1920);
_albumComponent.options.cameraOptions.cameraDefaultFlashMode = AVCaptureFlashModeOff;
_albumComponent.options.cameraOptions.cameraDefaultFlashMode = AVCaptureFlashModeOn;
_albumComponent.options.cameraOptions.cameraDefaultFlashMode = AVCaptureFlashModeAuto;
_albumComponent.options.cameraOptions.cameraViewRatio = 0.75f
_albumComponent.options.cameraOptions.ratioType = lsqRatioAll;
lsqRatioAll = lsqRatioOrgin | lsqRatio_1_1 | lsqRatio_2_3 | lsqRatio_3_4 | lsqRatio_9_16 ;
_albumComponent.options.cameraOptions.displayGuideLine = false;
_albumComponent.options.cameraOptions.enableLongTouchCapture = YES;
_albumComponent.options.cameraOptions.longTouchDelay = 1.2;
_albumComponent.options.cameraOptions.disableContinueFoucs = YES;
_albumComponent.options.cameraOptions.autoFoucsDelay = 5;
_albumComponent.options.cameraOptions.enableFilters = YES;
_albumComponent.options.cameraOptions.showFilterDefault = YES;
_albumComponent.options.cameraOptions.enableFilterHistory = YES;
_albumComponent.options.cameraOptions.enableOnlineFilter = YES;
_albumComponent.options.cameraOptions.displayFilterSubtitles = YES;
注意
: 使用在线滤镜下载到本地的滤镜是分组显示的滤镜,如果设置了 filterGroup
,那么在线滤镜下载的滤镜将会无法显示。 _albumComponent.options.cameraOptions.filterGroup = @[@"SkinNature", @"SkinPink", @"SkinNoir", @"SkinRuddy", @"SkinSugar"];
©2019-2024 TUTUCLOUD. All Rights Reserved. 杭州元凡视觉智能科技有限公司 | 浙ICP备14040447号-1 | 浙公网安备33010602001649号