xenon54 Опубликовано 17 января, 2015 Поделиться Опубликовано 17 января, 2015 Всем привет. Кто-нибудь знает можно ли сохранить Bitmap в фотоальбом? И если да, то как? Ссылка на комментарий
0 estra Опубликовано 17 января, 2015 Поделиться Опубликовано 17 января, 2015 Примерно так uses System.IOUtils; var b: TBitmap; begin b.SaveToFile( TPath.GetPicturesPath + PathDelim + '1.bmp' ); end; Правда не уверен на счет пути, может другой надо подставить (GetPublicPath, GetDocumentsPath). Поэкспериментируйте... Ссылка на комментарий
0 Администраторы Brovin Yaroslav Опубликовано 30 января, 2015 Администраторы Поделиться Опубликовано 30 января, 2015 (изменено) Первый способ Сохранить можно через библиотеку AssetsLibrary uses iOSapi.AssetsLibrary, FMX.Helpers.iOS; procedure SaveToAlbum(const ASourceBitmap: TBitmap); var AssetsLibrary: ALAssetsLibrary; Image: UIImage; begin Image := BitmapToUIImage(ASourceBitmap); AssetsLibrary := TALAssetsLibrary.Create; try AssetsLibrary.writeImageToSavedPhotosAlbum(Image.CGImage, Image.imageOrientation, PerformResultOfSavingPhoto); finally AssetsLibrary.release; end; end; Второй способ Через UIImageWriteToSavedPhotosAlbum: В декларации этой функции в делфи допущена ошибка, поэтому ниже привожу исправленную декларацию: uses iOSapi.UIKit, MacApi.ObjectiveC, Macapi.ObjCRuntime; // ===== External functions ===== const libUIKit = '/System/Library/Frameworks/UIKit.framework/UIKit'; procedure UIImageWriteToSavedPhotosAlbum(image: Pointer; completionTarget: Pointer; completionSelector: SEL; contextInfo: Pointer); cdecl; external libUIKit name _PU + 'UIImageWriteToSavedPhotosAlbum'; procedure SavePhotoToAlbum(const ABitmap: TBitmap); var AssetsLibrary: ALAssetsLibrary; Image: UIImage; begin Image := BitmapToUIImage(ABitmap); UIImageWriteToSavedPhotosAlbum((Image as ILocalObject).GetObjectID, nil, nil, nil); end; Изменено 30 января, 2015 пользователем Brovin Yaroslav xenon54 1 Ссылка на комментарий
0 xenon54 Опубликовано 30 января, 2015 Автор Поделиться Опубликовано 30 января, 2015 В первом способе "TALAssetsLibrary" не смог найти где описан этот класс. Второй способ работает на ура, спасибо. Ссылка на комментарий
0 Администраторы Brovin Yaroslav Опубликовано 30 января, 2015 Администраторы Поделиться Опубликовано 30 января, 2015 TLAssetsLibrary находится в iOSapi.AssetsLibrary.pas Ссылка на комментарий
0 Администраторы Brovin Yaroslav Опубликовано 10 июля, 2015 Администраторы Поделиться Опубликовано 10 июля, 2015 В XE8 был добавлен сервис для сохранения изображения в системную галерею для iOS и Android. Сервис FMX.MediaLibrary: /// <summary>Saves image to System Photos Album</summary> IFMXPhotoLibrary = interface ['{D10DE62A-7398-4BC6-AA4C-AF5F4382BC46}'] /// <summary>Adds specified image to photo album</summary> procedure AddImageToSavedPhotosAlbum(const ABitmap: TBitmap); end; Ссылка на комментарий
Вопрос
xenon54
Всем привет. Кто-нибудь знает можно ли сохранить Bitmap в фотоальбом? И если да, то как?
Ссылка на комментарий
5 ответов на этот вопрос
Рекомендуемые сообщения