在UIWebView的img标签中使用ALAsset照片

3
我能够成功地从ALAssetsLibrary中查找图像,并在本地视图中使用UIImage。
是否可能将同一资产的URL(例如:assets-library://asset/asset.JPG?id=88AA03C4-E53F-4FE2-9752-9DA675D1FAF7&ext=JPG)用作UIWevView中img标记的源? <img src="<the asset>">
1个回答

3
您不能在UIWebView中使用此URL,因为assets-library:// URL方案仅被AVFoundation(AVAsset)和AssetsLibrary的类所理解。 要在UIWebView中显示来自AssetsLibrary的图像,应尝试以下2种方法:
1)在您的应用程序中实现一个小型Web服务器,并让它从AssetsLibrary提供图像。因此,在UIWebView中,您将引用这些图像如下:
然后,Web服务器将生成动态响应,返回具有指定ID的资产的AssetsLibrary中的图像数据。
2)另一种方法是完全在您的cocoa代码中生成web页面,然后使用loadHTMLString:baseURL:方法设置UIWebView的内容。在生成的HTML代码中,您将嵌入Base64-Images/Data-URIs的assets-library的图像(有关详细信息,请参见此处:嵌入Base64图像
哪种方法最适合您取决于具体情况。

2
我正在使用Cordova(PhoneGap),通过自定义插件的javascript调用将图像作为base64 NSString返回。因此,这是#2的变体。 - wrightcode
1
你好,你能否分享一下这个插件?我需要实现同样的功能。 - Martin Wawrusch

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接