1.0.8 • Published 7 months ago
lcs-flyimg-processor v1.0.8
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
- 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
orpath
).
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
orpath
).
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:
Key | Description |
---|---|
q | Quality |
o | Output |
unsh | Unsharp |
sh | Sharpen |
blr | Blur |
fc | Face-crop |
fcp | Face-crop-position |
fb | Face-blur |
w | Width |
h | Height |
c | Crop |
bg | Background |
st | Strip |
ao | Auto-orient |
rz | Resize |
g | Gravity |
f | Filter |
r | Rotate |
t | Text |
tc | Text-color |
ts | Text-size |
tbg | Text-bg |
sc | Scale |
sf | Sampling-factor |
rf | Refresh |
smc | Smart-crop |
ett | Extent |
par | Preserve-aspect-ratio |
pns | Preserve-natural-size |
webpl | WebP-lossless |
webpm | WebP-method |
gf | Gif-frame |
e | Extract |
p1x | Extract-top-x |
p1y | Extract-top-y |
p2x | Extract-bottom-x |
p2y | Extract-bottom-y |
pdfp | PDF-page-number |
tm | Time |
clsp | Colorspace |
mnchr | Monochrome |
License
This project is licensed under the ISC License.
Contributions
Feel free to submit issues or pull requests for improvements!