What Is the Difference Between SMIL Meet, Slice, and Fill?

In Synchronized Multimedia Integration Language (SMIL), the fit attribute determines how visual media objects scale and position themselves inside a defined layout region. When the intrinsic dimensions and aspect ratio of an image or video do not match the assigned region, SMIL uses scaling values like meet, slice, and fill to resolve the layout discrepancy. This guide breaks down how each of these three scaling modes handles aspect ratios, visual cropping, and spatial distortion.

The Role of the SMIL fit Attribute

SMIL layouts rely on predetermined display regions defined in the document head. Because external assets often arrive in varying resolutions and aspect ratios, the fit attribute dictates whether the renderer should prioritize preserving the original proportions, filling the entire boundary, or clipping surplus visual data.

fit="meet" (Uniform Scaling with Letterboxing)

The meet value scales the visual media object proportionally so that its entire content fits within the target region while maintaining its original aspect ratio.

fit="slice" (Uniform Scaling with Cropping)

The slice value scales the media object proportionally until it completely covers the target region, maintaining the original aspect ratio by slicing away any overflowing dimensions.

fit="fill" (Non-Uniform Distortion)

The fill value scales the media object non-uniformly so that its width and height match the region dimensions exactly, disregarding the original aspect ratio.

Comparison Overview

Feature meet slice fill
Maintains Aspect Ratio Yes Yes No
Fills Entire Region Area Only if ratios match Yes Yes
Cuts Off Media Content No Yes No
Distorts / Stretches Image No No Yes
Common Use Case Showing full diagrams/slides Backgrounds and hero media Exact grid fitting where stretch is acceptable