NPM 包 react-native-image-resizer-meifacil 使用教程

阅读时长 6 分钟读完

简介

react-native-image-resizer-meifacil 是一款用于 React Native 项目中的图片压缩组件。它可以帮助开发者在不影响图片质量的同时减小图片的尺寸,降低图片加载的时间和占用的内存。

该组件在实现上使用了 native-image-resizer,该库基于 libvips 库实现,使用 libvips 库可以在不损失图片质量的同时快速对图片进行缩放,降低内存的消耗以及图片处理时的 CPU 开销。

安装

使用

压缩图片

-- -------------------- ---- -------
------ ------------ ---- --------------------------------------

----- -------- ------------- -
  ----- -------- - ----- ---------------------------------------
  ----- ---- - ----- ----------------
  
  ----- --------------- - ----- ---------------------
    ---- ---------
    ------ ----
    ------- ----
    -------- ---
    ------- -------
    ----- ----------
  ---
  
  -------------------- ----- ------ ----------------- -- -----------------------------------
-

在上面的示例代码中,我们首先使用 fetch 函数获取了一张图片的二进制数据,并使用 blob 属性获取了该二进制数据的 URI 地址。然后,我们使用 ImageResizer.resize 方法对该图片进行压缩,其中,widthheight 属性分别表示目标图片的宽度和高度,quality 属性表示图片的质量(0-100),format 属性表示图片的格式,mode 属性表示缩放模式(参见下文「API 文档」)。最后,该方法返回压缩后的图片的 URI 地址。

取消操作

-- -------------------- ---- -------
------ ------------ ---- --------------------------------------

--- -----

-------- ------------- -
  ----- -------- - ----- ---------------------------------------
  ----- ---- - ----- ----------------

  ---- - ---------------------
    ---- ---------
    ------ ----
    ------- ----
    -------- ---
    ------- -------
    ----- ----------
  ------------------------- -- -
    -------------------- ----- ------ ----------------- -- -----------------------------------
  ---
-

-------- -------- -
  -- ------ -
    --------------
    ---- - -----
  -
-

在上面的示例代码中,我们定义了一个 task 变量,保存了 ImageResizer.resize 方法的执行结果。如果需要取消正在进行的压缩操作,我们只需要调用 task.cancel() 方法即可。

API 文档

ImageResizer.resize(options)

该方法用于压缩图片。

参数名 类型 默认值 描述
options.uri string 必填 图片的 URI 地址
options.width number 必填 目标图片的宽度
options.height number 必填 目标图片的高度
options.quality number 80 图片的质量(0-100)
options.format string JPEG 目标图片的格式
options.mode string default 缩放模式。可选值:containcoverdefault

返回值:一个 Promise,执行成功后将返回压缩后的图片的 URI 地址。

缩放模式

缩放模式分为以下几种。

1. contain

将图片缩放后居中显示,以黑色填充剩余区域。

2. cover

将图片缩放后以最小的边缘来填满容器区域,裁剪超出的部分。

3. default

默认缩放模式,适用于大部分情况。

注意事项

  • 该组件仅适用于 React Native 项目;
  • 该组件仅支持 iOS 和 Android 系统;
  • 该组件依赖于 native-image-resizerlibvips 库,因此,在使用该组件之前需要先在项目中安装这些库;
  • 由于 libvips 库的特殊性,该组件不支持 GIF 格式的图片压缩;

结语

本文介绍了 react-native-image-resizer-meifacil 组件的使用方法及 API 文档,希望读者能够掌握该组件的使用技巧,并能够在自己的项目中使用该组件,提高图片加载速度和内存占用效率。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60065f90238a385564ab6f8e

纠错
反馈