Vignette

Add vignette effect by darkening or lightening the edges of an image. Creates focus on the center, adds artistic mood, and enhances portraits. Classic photography technique.

Installation

To install the Image plugin:

Terminal
$ npm install -g @mediaproc/image

Usage

Terminal
$ mediaproc image vignette <input> [options]

Basic Usage

Terminal
$ mediaproc image vignette photo.jpg
✓ Vignette applied (strength: 50)
$ mediaproc image vignette portrait.jpg -s 30
$ mediaproc image vignette landscape.png -s 80
$ mediaproc image vignette image.jpg -o artistic.jpg
$ mediaproc image vignette "photos/*.jpg" -s 60

Options

OptionAliasTypeDefaultDescription
--strength <value>-snumber50Vignette strength (0-100)
--output <path>-ostring-Output file path (default: <input>-vignette.<ext>)
--dry-runbooleanfalsePreview without making changes
--verbose-vbooleanfalseShow detailed output
--helpbooleanfalseDisplay help information

Strength Guide

StrengthEffectUse Case
0-20Very subtleBarely noticeable, natural look
30-40SubtleGentle focus, professional portraits
50-60ModerateBalanced effect (recommended)
70-80StrongDramatic, artistic mood
90-100Very intenseHeavy artistic effect, vintage

Visual Guide

Lower strength (0-40):

  • Gentle edge darkening
  • Maintains natural appearance
  • Best for: Professional portraits, subtle focus

Middle strength (50-70):

  • Noticeable but balanced
  • Clear focus on center
  • Best for: General photography, social media

Higher strength (80-100):

  • Dramatic darkening
  • Strong artistic effect
  • Best for: Vintage looks, creative portraits

Examples

1. Default Vignette

Balanced vignette effect:

mediaproc image vignette photo.jpg

Result: Moderate edge darkening (50%)

2. Portrait Focus

Subtle portrait vignette:

mediaproc image vignette portrait.jpg -s 35 -o focused.jpg

Portraits: Gentle focus on subject

3. Dramatic Effect

Strong artistic vignette:

mediaproc image vignette landscape.jpg -s 85

Dramatic: Heavy edge darkening

4. Vintage Look

Classic vintage vignette:

mediaproc image vignette old-photo.jpg -s 70 -o vintage.jpg

Vintage: Retro appearance

5. Subtle Enhancement

Barely noticeable vignette:

mediaproc image vignette photo.png -s 20

Subtle: Natural enhancement

6. Wedding Photography

Romantic vignette:

mediaproc image vignette wedding.jpg -s 45 -o romantic.jpg

Weddings: Romantic mood

7. Food Photography

Focus on dish:

mediaproc image vignette food.jpg -s 40

Food: Plate focus

8. Batch Portrait Processing

Consistent vignette:

mediaproc image vignette "portraits/*.jpg" -s 35

Batch: Uniform effect

9. Social Media Post

Engaging vignette:

mediaproc image vignette social.jpg -s 55 -o post.jpg

Social: Eye-catching post

10. Artistic Photography

Creative vignette:

mediaproc image vignette art.png -s 90

Art: Strong artistic statement

11. Product Photography

Subtle product focus:

mediaproc image vignette product.jpg -s 30

Products: Draw to product

12. Landscape Mood

Dramatic landscape:

mediaproc image vignette landscape.jpg -s 65

Landscapes: Mood enhancement

13. Verbose Processing

See processing details:

mediaproc image vignette photo.jpg -s 50 --verbose

Info: Strength confirmation

14. Preview Vignette

Check before processing:

mediaproc image vignette image.jpg -s 60 --dry-run

Safety: Verify output path

15. Maximum Intensity

Extreme vignette effect:

mediaproc image vignette photo.jpg -s 100 -o intense.jpg

Extreme: Maximum darkening

Use Cases

1. Portrait Photography

Focus attention on subject:

# Headshot with vignette
mediaproc image vignette headshot.jpg -s 40 -o focused-portrait.jpg

# Draws eye to face

Portraits: Professional focus

2. Vintage/Retro Effects

Classic photo look:

# Vintage vignette
mediaproc image vignette modern-photo.jpg -s 75 -o vintage.jpg

# Old photograph aesthetic

Vintage: Nostalgic appearance

3. Wedding Photography

Romantic atmosphere:

# Wedding photo
mediaproc image vignette ceremony.jpg -s 45

# Soft, romantic mood

Weddings: Romantic enhancement

4. Artistic Mood

Creative expression:

# Dramatic artistic shot
mediaproc image vignette artistic.jpg -s 80

# Strong mood

Art: Creative atmosphere

5. Direct Viewer Attention

Focus on center:

# Draw attention to subject
mediaproc image vignette subject.jpg -s 55

# Clear focal point

Focus: Visual hierarchy

6. Social Media Posts

Engaging content:

# Instagram/Facebook post
mediaproc image vignette post.jpg -s 50

# Eye-catching effect

Social: Attention-grabbing

7. Food Photography

Highlight dish:

# Food photo
mediaproc image vignette dish.jpg -s 35

# Focus on food

Food: Plate emphasis

8. Product Photography

Draw to product:

# Product focus
mediaproc image vignette product.jpg -s 40

# Subtle product highlight

E-commerce: Product attention

9. Event Photography

Atmospheric events:

# Concert/event
mediaproc image vignette concert.jpg -s 70

# Dramatic atmosphere

Events: Mood setting

10. Landscape Drama

Dramatic scenes:

# Landscape with mood
mediaproc image vignette mountain.jpg -s 60

# Enhanced atmosphere

Landscapes: Dramatic impact

Combining with Other Commands

Sepia + Vignette

Classic vintage combo:

# Apply sepia
mediaproc image sepia photo.jpg -o sepia.jpg

# Add vignette
mediaproc image vignette sepia.jpg -s 70 -o vintage.jpg

Vintage: Complete retro look

Vignette + Sharpen

Focus with sharpness:

# Add vignette
mediaproc image vignette portrait.jpg -o vignette.jpg

# Sharpen subject
mediaproc image sharpen vignette.jpg -s 0.7

Enhancement: Sharp focus

Blur + Vignette

Dreamy effect:

# Slight blur
mediaproc image blur photo.jpg -s 0.5 -o soft.jpg

# Add vignette
mediaproc image vignette soft.jpg -s 60

Dreamy: Soft, atmospheric

Tint + Vignette

Colored mood:

# Apply tint
mediaproc image tint photo.jpg -c orange -o tinted.jpg

# Add vignette
mediaproc image vignette tinted.jpg -s 50

Mood: Colored atmosphere

Vignette + Border

Framed effect:

# Vignette
mediaproc image vignette photo.jpg -o vignette.jpg

# Add border
mediaproc image border vignette.jpg --width 20 --color white

Framing: Complete presentation

Technical Details

Vignette Algorithm

Process:

  1. Get image dimensions
  2. Create radial gradient overlay (SVG)
  3. Gradient: transparent center → black edges
  4. Adjust gradient opacity by strength
  5. Composite overlay using multiply blend
  6. Output vignetted image

Radial Gradient:

<radialGradient>
  <stop offset="40%" opacity="0" />      <!-- Center: transparent -->
  <stop offset="100%" opacity="strength" /> <!-- Edge: dark -->
</radialGradient>

Blend Mode:

  • Uses "multiply" blend mode
  • Darkens edges progressively
  • Center remains bright
  • Smooth transition

Strength Calculation

Input: 0-100 (percentage) Output: 0-1 (opacity multiplier)

opacity = strength / 100

Example:

  • Strength 50 → opacity 0.5
  • Strength 80 → opacity 0.8
  • Strength 100 → opacity 1.0 (maximum darkness)

Performance

  • Fast operation: ~100-250ms per image
  • Small images: ~100-150ms
  • Medium images (1920×1080): ~150-200ms
  • Large images (4K+): ~200-350ms
  • SVG generation + composite operation

Quality Preservation

  • Non-destructive overlay
  • No detail loss in center
  • Smooth gradient transition
  • No banding artifacts

Best Practices

1. Start with 50

Default strength usually works well:

# Try default first
mediaproc image vignette photo.jpg

2. Subtle for Professional

Lower strength for professional work:

# Professional portraits
mediaproc image vignette portrait.jpg -s 35

3. Strong for Artistic

Higher strength for creative work:

# Artistic shots
mediaproc image vignette art.jpg -s 75

4. Match Subject Type

Portraits: 30-50 (subtle to moderate) Landscapes: 50-70 (moderate to strong) Artistic: 70-90 (strong to dramatic)

5. Combine with Other Effects

Layer effects for best results:

# Sepia → Vignette for vintage
# Adjust → Vignette for enhanced photos

6. Consistent Batch Processing

Use same strength for series:

# Uniform look
mediaproc image vignette "series/*.jpg" -s 45

7. Test on Sample

Try different strengths:

# Test variations
mediaproc image vignette test.jpg -s 30 -o test-30.jpg
mediaproc image vignette test.jpg -s 50 -o test-50.jpg
mediaproc image vignette test.jpg -s 70 -o test-70.jpg

Troubleshooting

Issue: Vignette Too Strong

Problem: Edges too dark

Cause: Strength too high

Solution: Lower strength value

# Reduce strength
mediaproc image vignette photo.jpg -s 30

Issue: Vignette Not Visible

Problem: Can't see effect

Cause: Strength too low or dark source image

Solution: Increase strength

# Higher strength
mediaproc image vignette photo.jpg -s 70

Issue: Unnatural Look

Problem: Effect looks artificial

Cause: Too high strength for subject type

Solution: Use appropriate strength

# Natural for portraits
mediaproc image vignette portrait.jpg -s 35

Issue: Center Too Bright

Problem: Center stands out too much

Cause: This is expected vignette behavior

Solution: Adjust base image brightness first

# Reduce overall brightness before vignette
mediaproc image linear photo.jpg -b -10 -o adjusted.jpg
mediaproc image vignette adjusted.jpg -s 50

Issue: Hard Edge Transition

Problem: Visible ring around vignette

Cause: Should have smooth gradient (check source quality)

Solution: This shouldn't happen with proper implementation

Issue: Inconsistent Results

Problem: Different effect on different images

Cause: Images have different brightness/content

Solution: This is expected; vignette interacts with source

  • sepia - Combine for vintage look
  • tint - Add color mood
  • blur - Combine for dreamy effect
  • sharpen - Enhance center focus
  • border - Frame with vignette

Further Reading

Found an issue? Help us improve this page.

Edit on GitHub →