我问这个的原因是因为文件选择器Intent的回调返回一个Uri。通过Intent打开文件选择器:Intentintent=newIntent();intent.setType("image/*");intent.setAction(Intent.ACTION_GET_CONTENT);startActivityForResult(Intent.createChooser(intent,"SelectPicture"),CHOOSE_IMAGE_REQUEST);回调:@OverridepublicvoidonActivityResult(intrequestCode,intresult
我编写了一个以编程方式拍摄照片的AndroidActivity。我想将图像保存为具有正确EXIF方向数据的JPEG(就像nativeAndroid相机应用程序自动执行的那样)。这是实际拍照的方法(我删除了try/catchblock):privatevoidtakePhoto(){camera=Camera.open();SurfaceTexturedummySurfaceTexture=newSurfaceTexture(0);camera.setPreviewTexture(dummySurfaceTexture);camera.startPreview();camera.take
我想做的事:使用我自己的PictureActivity*拍照并添加EXIF(地理标签)数据*:实现SurfaceHolder.Callback并使用Camera什么不起作用:添加EXIFGPS数据我尝试过的:使用ExifInterface并手动设置Camera.Parameters(使用设置GPS元数据的特定方法和使用params.set(String,Value))。我正在使用FlickrJ将图片上传到Flickr(是的,我已将Flickr设置为导入GPS数据——其他图片工作正常),但是此工具还显示EXIF中没有GPS数据:http://regex.info/exif.cgi我错过了
我想在图像中存储一些元数据。我的相机应用程序为我提供了一个位图,我将其存储在存储(MediaStore)设备中。除此之外,我想在图片的元数据中添加一些标签。我认为EXIF是执行此操作的好方法。但我找不到关于如何执行此操作的良好引用。如果在Android编程中有一些工具可以实现这个任务,请告诉我。谢谢 最佳答案 好的,有人(离线)向我指出了一个有用的资源。ExifInterface看起来像我正在搜索的内容。Android-er有一篇文章演示如何在Android中读取EXIF元数据,我认为写起来应该差别不大。我不知道,但我们可以通过EX
将照片中的EXIF数据存储在数据库(在我的例子中是MySQL)中的最佳方式是什么。这是一个照片共享网站。什么是最重要的标签,什么是可丢弃的? 最佳答案 我们很难确定对您什么是重要的。一种方法可能是将所有属性存储在创建如下内容(近似SQL语法)的表中:createtableexif_info(photo_idinteger,namevarchar,valuevarchar);此表中的每一行都将一个EXIF属性与一个照片相关联。因此,您需要一大堆行来保存单张照片的所有EXIF属性,但这正是关系数据库所擅长的。通过这种方式,您可以存储所有
我正在尝试使用地理标记信息更新UIImage。我看了SavingGeotaginfowithphotooniOS4.1,这是我找到对NSMutableDDictionary+ImageMetadatacategory的引用的地方.不过,我不想保存到相册,而是有一个UIImage传过去以下代码似乎制作了太多图像副本,并且需要链接所有这些框架:CoreImage、AssetsLibrary、CoreMedia、ImageIO。有没有比UIImage->CIImage->CGImage->UIImage更高效的东西设置EXIF数据所需的属性NSDictionary?-(UIImage*)up
我想将带有GPS位置的exif数据写入iPhone上的uiimage。我用谷歌搜索了这个,我找到了libiPhone-exif.a用于iPhone的库,但它不适用于armv7架构xcode项目。我还尝试使用以下链接中建议的ALAssetsLibrary函数GetExifdatafromUIImage-UIImagePickerController我可以使用上面的代码从UIImagePickerController获取exif数据,我想用NSData将它写入UIIMage。而且我还想知道在使用以下语句压缩UIImage后是否会保留exif数据,NSData*imgData=UIImage
我之前问过这个问题:Howtowriteexifmetadatatoanimage.我现在找到了一种注入(inject)元数据的方法。但是,它会将图像复制到内存中。对于大图像,并且需要在内存中已经有一个副本,这将具有性能,并可能导致内存崩溃。是否有一种无需复制图像即可注入(inject)元数据的正确方法?也许它可以在写入磁盘后附加到文件中?如果可能的话,我更喜欢native实现,而不必为此求助于第三方库。 最佳答案 此问题可能需要少量或大量代码,具体取决于您的需要。EXIF数据存储在JPEGAPP1标记(FFE1)中。它看起来非常像
我使用ALAsset的setImageData:metadata:completionBlock:来更新Assets的exif(元数据)。我只想更新元数据,但此方法需要一个imageData作为第一个参数。我使用下面的代码生成imageData,但它修改了我的图像(我检查了文件大小和文件哈希)。ALAssetRepresentation*dr=asset.defaultRepresentation;UIImage*image=[UIImageimageWithCGImage:dr.fullResolutionImagescale:dr.scaleorientation:dr.orien
我目前正在使用AVCaptureStillImageOutput获取全分辨率图片。我还可以使用以下代码获取exif元数据:[self.stillImageOutputcaptureStillImageAsynchronouslyFromConnection:videoConnectioncompletionHandler:^(CMSampleBufferRefimageSampleBuffer,NSError*error){CFDictionaryRefmetaDict=CMCopyDictionaryOfAttachments(NULL,imageSampleBuffer,kCMAt