def crop_scale(self, dimensions: Tuple[int, int]) -> 'Segment':
"""
Returns
-------
A new Segment, cropped and/or scaled as necessary to reach specified dimensions
"""
segment = self.copy()
dimensions = Dimensions(*dimensions)
if segment.aspect_ratio != dimensions.aspect_ratio:
# Crop segment to match aspect ratio
segment = segment.crop_to_aspect_ratio(dimensions.aspect_ratio)
if segment.dimensions != dimensions:
# Resize segment to reach final dimensions
segment = segment.resize(dimensions)
return segment
评论列表
文章目录