问题描述
假设我有一个图像,例如来自图像选择器,它看起来像这样:
{身高":2848,"origURL": "assets-library://asset/asset.JPG?id=B84E8479-475C-4727-A4A4-B77AA9980897&ext=JPG",取消":假,宽度":4288,文件大小":342120,isVertical":假,"uri": "file:///Users/sepp/Library/Developer/CoreSimulator/Devices/998C81E0-5CC6-4A3E-90C2-A7C43060220C/data/Containers/Data/Application/53F9F372-37DD-4CD2-B5E2-0D984A064686/库/缓存/%2540anonymous%252Fcleanguide-c5413b44-e71a-4958-80a6-25b9c9e5d7a5/ImagePicker/A1D3644A-516E-4D7C-911C-2AC120B229BB.jpg"}
查看 React Natives ImageStore 的文档 (https://facebook.github.io/react-native/docs/imagestore.html),人们会假设将该图像的 URI 传递给 ImageStore.getBase64ForTag
应该返回该图像的 base64.
相反,它会产生一个错误Invalid imageTag: file:///Users/sepp/Library[...](为便于阅读而缩短).
所以我的问题是:ImageStore.getBase64ForTag
期望什么样的 URI?
这篇关于 React Native 问题跟踪器的帖子有答案:
要使用ImageStore.getBase64ForTag
,你首先要把你的图片放入ImageStore,这只能通过ImageEditor.cropImage
函数来完成.p>
这可能看起来很麻烦,但这是因为我们通常不鼓励将图像转换为 base64 数据.如果你能解释你想要做什么,可能会有更好的方法,或者我们可以为它创建一个更好的 API.
Suppose I have an Image, for example from the Image Picker, that looks like this:
{
"height": 2848,
"origURL": "assets-library://asset/asset.JPG?id=B84E8479-475C-4727-A4A4-B77AA9980897&ext=JPG",
"cancelled": false,
"width": 4288,
"fileSize": 342120,
"isVertical": false,
"uri": "file:///Users/sepp/Library/Developer/CoreSimulator/Devices/998C81E0-5CC6-4A3E-90C2-A7C43060220C/data/Containers/Data/Application/53F9F372-37DD-4CD2-B5E2-0D984A064686/Library/Caches/%2540anonymous%252Fcleanguide-c5413b44-e71a-4958-80a6-25b9c9e5d7a5/ImagePicker/A1D3644A-516E-4D7C-911C-2AC120B229BB.jpg"
}
Looking at the docs for React Natives ImageStore (https://facebook.github.io/react-native/docs/imagestore.html), one would assume that passing the URI of that Image to ImageStore.getBase64ForTag
should return the base64 for that Image.
Instead it produces an error Invalid imageTag: file:///Users/sepp/Library[…] (shortened for readability).
So my question is: What kind of URIs does ImageStore.getBase64ForTag
expect?
This post on the React Native issue tracker has the answer:
To use ImageStore.getBase64ForTag
, you first have to get your image into the ImageStore, which can only be done by using the ImageEditor.cropImage
function first.
这篇关于ImageStore.getBase64ForTag 期望什么 URI 格式?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!