def largest_dimensions_for_aspect_ratio(dimensions_list: List[Dimensions], desired_aspect_ratio: float,
default: Any = _sentinel) -> Union[Dimensions, Any]:
"""
Returns
-------
The largest dimensions after cropping each dimensions to reach desired aspect ratio
"""
if not dimensions_list:
if default is not _sentinel:
return default
raise ValueError(f"{dimensions_list} must not be empty.")
largest_dimensions = crop_dimensions_to_aspect_ratio(dimensions_list[0], desired_aspect_ratio)
for dimensions in dimensions_list[1:]:
nearest_dimensions_to_aspect_ratio = crop_dimensions_to_aspect_ratio(dimensions, desired_aspect_ratio)
if nearest_dimensions_to_aspect_ratio.resolution > largest_dimensions.resolution:
largest_dimensions = nearest_dimensions_to_aspect_ratio
return largest_dimensions
评论列表
文章目录