我正在开发一个处理图像编辑的应用程序,并且我正试图集成 twitter。到目前为止,它运行良好,我可以从应用程序内发送推文并附加用户正在编辑的图像。我注意到的缺点是图像会自动压缩。这意味着用户正在编辑的 PNG,如果它具有透明度,则不再具有透明度。这不好。有没有解决的办法?我希望能够发送推文并附加透明的PNG图像,基本上防止它在发送后转换为JPG。
这是我到目前为止的代码。非常不言自明和直截了当。
SLComposeViewController *tweetSheet = [SLComposeViewController composeViewControllerForServiceType: SLServiceTypeTwitter];
[tweetSheet addImage:self.workingImage];
[self presentModalController:tweetSheet animated:YES completion:nil];
self.workingImage
是用户正在处理的图像。
编辑:我已经更新了上面的代码以在 iOS6 上工作,并且似乎有完全相同的问题(我猜这并不奇怪)。看起来一旦图像在 Twitter 上,它是 JPG 格式。有没有办法保持PNG格式?
我不想失去所有这些简单的代码,只是为了走上使用 3rd 方图像托管网站的路线。
编辑 2:我现在已将所有代码转换为不再使用 alpha 通道。这意味着我不再关心图像是 PNG 还是 JPEG 格式,因为所有 3 个 RGB 通道将始终存在。无论原始图像的质量如何,发布推文仍然会在发布之前压缩图像。
我什至使用该应用程序将图像发布到推特,将其通过推特压缩,保存图像并尝试使用新压缩的图像重复,但推特仍然被压缩!
我迷路了。推特(甚至脸书)无论如何都会压缩图像吗?我唯一的选择是第三方图片托管网站吗?我不想失去 iOS6 框架内置的所有不错的社交功能,转而使用第三方网站...