1.0.8 • Published 7 months ago

lcs-flyimg-processor v1.0.8

Weekly downloads
-
License
ISC
Repository
-
Last release
7 months ago

FlyimgProcessor

The FlyimgProcessor is a utility class for interacting with the Flyimg image processing API. It provides methods to construct URLs for resizing and processing images based on Flyimg's capabilities.

Features

  • Construct Flyimg-compatible URLs for image resizing and processing.
  • Support for various image processing options such as resizing, cropping, filtering, and more.
  • Handle single and multiple image processing requests.

Installation

  1. Install:
    npm i lcs-flyimg-processor

Usage

Import the Processor

import FlyimgProcessor from "lcs-flyimg-processor";
const FlyimgProcessor = require("lcs-flyimg-processor");

Initialize the Processor

const processor = new FlyimgProcessor("https://your-flyimg-api-url");

Methods

1. processImage

Generates a Flyimg URL for resizing a single image.

Parameters:

  • imageUrl (string): The source image URL.
  • options_keys (object): Resize options.
  • process_type (string): Type of process (upload or path).

Example:

const processedImageUrl = processor.processImage({
  imageUrl: "https://example.com/image.jpg",
  options_keys: { w: 400, q: 90 },
});
console.log(processedImageUrl);

2. processImages

Processes multiple images by constructing Flyimg URLs for each.

Parameters:

  • imageUrls (array): List of source image URLs.
  • options_keys (object): Resize options.
  • process_type (string): Type of process (upload or path).

Example:

const processedImageUrls = processor.processImages({
  imageUrls: [
    "https://example.com/image1.jpg",
    "https://example.com/image2.jpg",
  ],
  options_keys: { w: 300, h: 300 },
});
console.log(processedImageUrls);

Supported Options Keys

The options_keys object can include the following keys based on Flyimg documentation:

KeyDescription
qQuality
oOutput
unshUnsharp
shSharpen
blrBlur
fcFace-crop
fcpFace-crop-position
fbFace-blur
wWidth
hHeight
cCrop
bgBackground
stStrip
aoAuto-orient
rzResize
gGravity
fFilter
rRotate
tText
tcText-color
tsText-size
tbgText-bg
scScale
sfSampling-factor
rfRefresh
smcSmart-crop
ettExtent
parPreserve-aspect-ratio
pnsPreserve-natural-size
webplWebP-lossless
webpmWebP-method
gfGif-frame
eExtract
p1xExtract-top-x
p1yExtract-top-y
p2xExtract-bottom-x
p2yExtract-bottom-y
pdfpPDF-page-number
tmTime
clspColorspace
mnchrMonochrome

License

This project is licensed under the ISC License.


Contributions

Feel free to submit issues or pull requests for improvements!

1.0.8

7 months ago

1.0.7

7 months ago

1.0.5

7 months ago

1.0.4

7 months ago

1.0.3

7 months ago

1.0.2

7 months ago

1.0.1

7 months ago

1.0.0

7 months ago