Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Adobe Creative SDK ImageEdit UIの紹介
Search
Ippei Sumida
April 23, 2016
Programming
860
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Adobe Creative SDK ImageEdit UIの紹介
2016.04.23に『フロントエンド✕モバイルアプリ勉強会 』でお話しした、『Adobe Creative SDK ImageEdit UIの紹介』のスライドです。
Ippei Sumida
April 23, 2016
More Decks by Ippei Sumida
See All by Ippei Sumida
DROBEの生成AI活用事例 with AWS
ippey
0
330
みんなでQAしてる話
ippey
0
200
AIで生成したものをAIでチェックしてる話
ippey
0
2.4k
『WordPressコミュニティで学ぶ』OSS貢献の多様性
ippey
0
1.4k
25分で理解する!Symfonyの魅力とその実践的活用法
ippey
1
7.9k
素早いバリュー提供のための DROBEの新戦略
ippey
0
1.5k
Symfony 6.3のおすすめ新機能まとめ
ippey
1
2.2k
PhpStorm + GitHub Copilotはいいぞ
ippey
0
3.3k
それぞれの特徴から考えるフレームワーク選び
ippey
1
1.2k
Other Decks in Programming
See All in Programming
パズルゲームの作り方 / how to make puzzle games
kaityo256
PRO
2
280
sbt 2.0: takeoff
eed3si9n
0
110
AIに “答え“を書かせるのを やめてみた
___akari11
0
110
wkhtmltopdfの次どうするか問題2026
willnet
2
1.9k
Atomic Design, Enforced: Scaling Mobile Design Systems (next.app devCon / droidCon Berlin 2026)
steliosf
PRO
0
160
Unity6 URPによる海底をテーマにしたVJシステムの解説 | Unity Shader 完全に理解した 勉強会
gam0022
0
350
【加筆修正版】Laravel のアプリケーションをどこにデプロイするか #phpcon_ehime
akase244
0
150
Vue Fes Japan の “作る側”に関わってみて
naokihaba
0
140
自サークルのIdPからログアウトできるようになるまで
taiseiue
1
130
技術的負債の返済は、AI時代の複利で効く投資 — 経営としての意思決定とその遂行
curekoshimizu
1
2.3k
dotNET_vulnclicker_intro.pdf
deka_morita
0
130
Agents on Rails - Rails at Scale 2026
irinanazarova
0
520
Featured
See All Featured
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
350
Making the Leap to Tech Lead
cromwellryan
135
10k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
870
Six Lessons from altMBA
skipperchong
29
4.5k
Become a Pro
speakerdeck
PRO
31
6.3k
Utilizing Notion as your number one productivity tool
mfonobong
4
610
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.2k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
7k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
530
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2.2k
The Curse of the Amulet
leimatthew05
3
15k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
2
350
Transcript
Adobe Creative SDK ImageEdit UIͷհ ϑϩϯτΤϯυ✕ϞόΠϧΞϓϦษڧձ 2016.04.23
ࣗݾհ • ֯ాɹҰฏʢεϛμɹΠοϖΠʣ • DNPσδλϧίϜ • PHP, iOS, AndroidΤϯδχΞ •
CoderDojoٶɾകాɹϝϯλʔɺੈਓձ
ࣗݾհ @ippey_s ippeisumida
Adobe Creative SDK
Adobe Creative SDKͱ • Adobeͷը૾ܥϥΠϒϥϦ • iOS, Android, Web͕༻ҙ͞Ε͍ͯΔ •
ແྉͰར༻Մೳ
ओͳػೳ
Creative Cloud Content Management
Creative Cloud Market
Creative Tool
Connected Workflow
ओͳػೳ • Creative Cloud Content Management • Creative Cloud Market
• Creative Tools • Connected Workflow
Creative Tools • Image Edit UIʢAviaryʣ • Color Tools UI
ಋೖࣄྫ
KURURi
ಋೖࣄྫʢKURURiʣ • DNPϑϦϚΞϓϦ • iOS, AndroidରԠ • ग़ը૾ͷฤूػೳʹར༻
ར༻Πϝʔδ
ಋೖϝϦοτ • ը૾ฤूػೳ։ൃͷίετݮ • എܠɾจࣈ৭ͳͲ͋ΔఔΧελϚΠζՄೳ • iOS, AndroidͷػೳΛ౷ҰͰ͖Δ
How to use Image Edit UI
How to use Image Edit UI • iOS, AndroidωΠςΟϒ •
WebJavaScript͕ͩɺPC, λϒϨοτ͚ • ࠓճɺCordova + iOS SDK
ClientID, Secretऔಘ
ClientID, Secretऔಘ
SDKμϯϩʔυ
Frameworkίϐʔ
BuildPhaseઃఆʢPluginՃޙʣ
PluginϑΝΠϧߏ
Plugin࡞ FrameworkՃ <framework src="src/ios/AdobeCreativeSDKImage.framework" custom="true" /> <framework src="src/ios/AdobeCreativeSDKCore.framework" custom="true" />
<framework src="Accelerate.framework" /> <framework src="CoreData.framework" /> <framework src="libsqlite3.0.dylib" /> <framework src="libz.1.2.5.dylib" /> <framework src="Foundation.framework" /> <framework src="MessageUI.framework" /> <framework src="OpenGLES.framework" /> <framework src="QuartzCore.framework" /> <framework src="StoreKit.framework" /> <framework src="MobileCoreServices.framework" /> <framework src="UIKit.framework" /> <framework src="libc++.dylib" />
Plugin࡞ ίϚϯυՃ #import <Cordova/CDVPlugin.h> #import <Cordova/CDVInvokedUrlCommand.h> #import <AdobeCreativeSDKCore/AdobeCreativeSDKCore.h> #import <AdobeCreativeSDKImage/AdobeCreativeSDKImage.h>
@interface AviaryImageEdit : CDVPlugin <AdobeUXImageEditorViewControllerDelegate> { AdobeUXImageEditorViewController *editorController; NSString *callbackId; } - (void)launch:(CDVInvokedUrlCommand*)command; @end
Plugin࡞ ίϚϯυՃ #import <Cordova/CDVPlugin.h> #import <Cordova/CDVInvokedUrlCommand.h> #import <AdobeCreativeSDKCore/AdobeCreativeSDKCore.h> #import <AdobeCreativeSDKImage/AdobeCreativeSDKImage.h>
@interface AviaryImageEdit : CDVPlugin <AdobeUXImageEditorViewControllerDelegate> { AdobeUXImageEditorViewController *editorController; NSString *callbackId; } - (void)launch:(CDVInvokedUrlCommand*)command; @end Protocolઃఆ
Plugin࡞ ίϚϯυՃ #import <Cordova/CDVPlugin.h> #import <Cordova/CDVInvokedUrlCommand.h> #import <AdobeCreativeSDKCore/AdobeCreativeSDKCore.h> #import <AdobeCreativeSDKImage/AdobeCreativeSDKImage.h>
@interface AviaryImageEdit : CDVPlugin <AdobeUXImageEditorViewControllerDelegate> { AdobeUXImageEditorViewController *editorController; NSString *callbackId; } - (void)launch:(CDVInvokedUrlCommand*)command; @end ίϚϯυએݴ
Plugin࡞ ίϚϯυՃ - (void)launch:(CDVInvokedUrlCommand*)command { [[AdobeUXAuthManager sharedManager] setAuthenticationParametersWithClientID:@"Client ID" clientSecret:@"Client
Secret" enableSignUp:NO]; callbackId = command.callbackId; NSString *path = (NSString *) [command.arguments objectAtIndex: 0]; UIImage *imageToEdit = [UIImage imageWithContentsOfFile: [path substringFromIndex: 7]]; editorController = [[AdobeUXImageEditorViewController alloc] initWithImage:imageToEdit]; [editorController setDelegate: self]; [super.viewController presentViewController:editorController animated:YES completion:nil]; }
Plugin࡞ ίϚϯυՃ - (void)launch:(CDVInvokedUrlCommand*)command { [[AdobeUXAuthManager sharedManager] setAuthenticationParametersWithClientID:@"Client ID" clientSecret:@"Client
Secret" enableSignUp:NO]; callbackId = command.callbackId; NSString *path = (NSString *) [command.arguments objectAtIndex: 0]; UIImage *imageToEdit = [UIImage imageWithContentsOfFile: [path substringFromIndex: 7]]; editorController = [[AdobeUXImageEditorViewController alloc] initWithImage:imageToEdit]; [editorController setDelegate: self]; [super.viewController presentViewController:editorController animated:YES completion:nil]; } Client ID, Secretઃఆ
Plugin࡞ ίϚϯυՃ - (void)launch:(CDVInvokedUrlCommand*)command { [[AdobeUXAuthManager sharedManager] setAuthenticationParametersWithClientID:@"Client ID" clientSecret:@"Client
Secret" enableSignUp:NO]; callbackId = command.callbackId; NSString *path = (NSString *) [command.arguments objectAtIndex: 0]; UIImage *imageToEdit = [UIImage imageWithContentsOfFile: [path substringFromIndex: 7]]; editorController = [[AdobeUXImageEditorViewController alloc] initWithImage:imageToEdit]; [editorController setDelegate: self]; [super.viewController presentViewController:editorController animated:YES completion:nil]; } ฤूϏϡʔੜɾදࣔ
Plugin࡞ Delegateઃఆʢอଘʣ - (void)photoEditor:(AdobeUXImageEditorViewController *)editor finishedWithImage:(UIImage *)image { // Handle
the result image here NSArray * paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString * basePath = ([paths count] > 0) ? [paths objectAtIndex:0] : nil; NSData *binaryData = UIImagePNGRepresentation(image); [binaryData writeToFile:[basePath stringByAppendingPathComponent: @"result.png"] atomically: YES]; CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK messageAsString: @"save"]; [editorController dismissViewControllerAnimated: YES completion: nil]; [self.commandDelegate sendPluginResult:pluginResult callbackId:callbackId]; }
Plugin࡞ DelegateઃఆʢΩϟϯηϧʣ - (void)photoEditorCanceled:(AdobeUXImageEditorViewController *)editor { // Handle cancellation here
CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK messageAsString: @"cancel"]; [editorController dismissViewControllerAnimated: YES completion: nil]; [self.commandDelegate sendPluginResult:pluginResult callbackId:callbackId]; }
༻্ͷҙ • iOS, Web؆୯ • Androidͦͦ͜͜؆୯ • ωοτϫʔΫ͕ଓ͞Ε͍ͯΔલఏ • SDKͷߋ৽ϖʔε͕ૣ͍
ࠂ
DojoCon Japan 2016 20168݄27ʢʣ։࠵ʂ
͝੩ௌ ͋Γ͕ͱ͏͍͟͝·ͨ͠