カメラでキャプチャした写真は大きすぎて、Reactネイティブで効率的にアップロードおよびダウンロードできません。
React NativeでPNG画像ファイルを圧縮するためのAPIまたはライブラリはありますか?
https://github.com/bamlab/react-native-image-resizer は、ローカルイメージのサイズを変更するAPIを提供します。
以下を指定できます。
[〜#〜] api [〜#〜]
import ImageResizer from 'react-native-image-resizer';
ImageResizer.createResizedImage(imageUri, newWidth, newHeight, compressFormat, quality).then((resizedImageUri) => {
// resizeImageUri is the URI of the new image that can now be displayed, uploaded...
}).catch((err) => {
// Oops, something went wrong. Check that the filename is correct and
// inspect err to get more details.
});
画像のアップロードに react-native-image-picker を使用している場合は、maxWidth、maxHeight、または画像の品質を設定してサイズを縮小できます。
const options = {
title: 'Select Picture',
storageOptions: {
skipBackup: true,
path: 'images',
},
maxWidth: 500,
maxHeight: 500,
quality: 0.5
};
ImagePicker.showImagePicker(options, resolve, reject);