2012-04-23 78 views
0

我想將UIImage轉換爲諸如jpeg或png之類的格式,以便我可以使用稱爲「AddThis」的IOS插件共享該文件」。 我試了一下只使用UIImage的,但該插件不支持它,所以我需要找到一種方法,在第一的UIImage轉換爲JPEG格式,然後將其添加到這個代碼共享:使用AddThis插件將UIImage轉換爲jpeg/png文件以便共享

[AddThisSDK shareImage:[UIImage imageNamed:@"test.jpg] withService:@"twitter" title:@"I'm sharing something" description:@"Random description of image"]; 

代碼必須有shareImage:[UIImageNamed:@""]否則會發生錯誤。

到目前爲止,我試圖用UIImageJPEGRepresentation來轉換它,但我認爲我沒有做好它。說實話,我想同樣做怎麼你轉換它直接從拍攝的圖像:

NSString *jpgPath = [NSHomeDirectory() stringByAppendingPathComponent:@"photo_boom.jpg"]; 

[UIImageJPEGRepresentation(shareImage, 1.0) writeToFile:jpgPath atomically:YES]; 

NSError *error; 
NSFileManager *fileMgr = [NSFileManager defaultManager]; 

NSString *documentsDirectory = [NSHomeDirectory() stringByAppendingPathComponent:@"photo_boom.jpg"]; 

NSLog(@"Documents directory: %@", [fileMgr contentsOfDirectoryAtPath:documentsDirectory error:&error]); 

東西告訴我,這是不正確的方式...主要是因爲我一直沒能讓它起作用。

我真的很感謝任何幫助!

基本上,我已經從轉換的UIView做一個UIImage:

UIGraphicsBeginImageContext(firstPage.bounds.size); 
[firstPage.layer renderInContext:UIGraphicsGetCurrentContext()]; 
UIImage *image = UIGraphicsGetImageFromCurrentImageContext(); 

然後我想給一個JPEG格式,因爲當我試圖簡單地把它作爲

[AddThisSDK shareImage:image withService:@"twitter" title:@"I'm sharing something" description:@"Random description of image"]; 

它給我一個錯誤

回答

1

UIImage有它自己的圖像的內部表示,所以它是無關緊要你加載它與JPEG或PNG數據。

API調用你感興趣已經沿着

[AddThisSDK shareImage:[UIImage imageNamed:@"photo_boom.jpg"] 
      withService:@"twitter" 
       title:@"I'm sharing something" 
      description:@"Random description of image"]; 

應該工作線UIImage作爲第一個參數,這樣的東西,提供photo_boom.jpg包含在你的包。如果你從一個文件夾加載以前保存的圖像,你需要這樣的事:

NSString *jpgPath = [NSHomeDirectory() stringByAppendingPathComponent:@"photo_boom.jpg"]; 
UIImage * myImage = [UIImage imageWithContentsOfFile: jpgPath]; 

[AddThisSDK shareImage:myImage 
      withService:@"twitter" 
       title:@"I'm sharing something" 
      description:@"Random description of image"]; 

如果不工作,你有沒有試圖把在AddThisSDK行設置一個斷點,並檢查值的image?在控制檯上鍵入po image

+0

這並沒有工作,但它是因爲photo_boom.jpg不是現有的文件。基本上,我已經做了一個UIImage轉換UIView:UIGraphicsBeginImageContext(firstPage.bounds.size); [firstPage.layer renderInContext:UIGraphicsGetCurrentContext()]; 的UIImage *圖像= UIGraphicsGetImageFromCurrentImageContext();' 然後我想給一個JPEG格式,因爲當我試圖簡單地把它作爲'[AddThisSDK shareImage:圖像 withService:@「推特」 標題:@「我m分享的東西「 描述:@」圖像的隨機描述「];' 它給了我一個錯誤 – Ollie177 2012-04-23 12:28:25

+0

有沒有這樣的事情作爲jpeg格式UIImage - 它有它自己的內部格式。你遇到了什麼錯誤? – 2012-04-23 12:52:05

+0

它不在代碼內,它與插件本身一起使用。這是我測試我的應用程序時。它只是說「發生了錯誤」。我假設這是因爲插件只會響應'[AddThisSDK shareImage:[UIImage imageNamed:@「photo_boom。jpg「]'而不是'[AddThisSDK shareImage:image' – Ollie177 2012-04-23 13:23:02

相關問題