Class: Google::Apis::SlidesV1::CropProperties

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
generated/google/apis/slides_v1/classes.rb,
generated/google/apis/slides_v1/representations.rb,
generated/google/apis/slides_v1/representations.rb

Overview

The crop properties of an object enclosed in a container. For example, an Image. The crop properties is represented by the offsets of four edges which define a crop rectangle. The offsets are measured in percentage from the corresponding edges of the object's original bounding rectangle towards inside, relative to the object's original dimensions.

  • If the offset is in the interval (0, 1), the corresponding edge of crop rectangle is positioned inside of the object's original bounding rectangle.
  • If the offset is negative or greater than 1, the corresponding edge of crop rectangle is positioned outside of the object's original bounding rectangle.
  • If the left edge of the crop rectangle is on the right side of its right edge, the object will be flipped horizontally.
  • If the top edge of the crop rectangle is below its bottom edge, the object will be flipped vertically.
  • If all offsets and rotation angle is 0, the object is not cropped. After cropping, the content in the crop rectangle will be stretched to fit its container.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Core::JsonObjectSupport

#to_json

Methods included from Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ CropProperties

Returns a new instance of CropProperties



866
867
868
# File 'generated/google/apis/slides_v1/classes.rb', line 866

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#angleFloat

The rotation angle of the crop window around its center, in radians. Rotation angle is applied after the offset. Corresponds to the JSON property angle

Returns:

  • (Float)


836
837
838
# File 'generated/google/apis/slides_v1/classes.rb', line 836

def angle
  @angle
end

#bottom_offsetFloat

The offset specifies the bottom edge of the crop rectangle that is located above the original bounding rectangle bottom edge, relative to the object's original height. Corresponds to the JSON property bottomOffset

Returns:

  • (Float)


843
844
845
# File 'generated/google/apis/slides_v1/classes.rb', line 843

def bottom_offset
  @bottom_offset
end

#left_offsetFloat

The offset specifies the left edge of the crop rectangle that is located to the right of the original bounding rectangle left edge, relative to the object's original width. Corresponds to the JSON property leftOffset

Returns:

  • (Float)


850
851
852
# File 'generated/google/apis/slides_v1/classes.rb', line 850

def left_offset
  @left_offset
end

#right_offsetFloat

The offset specifies the right edge of the crop rectangle that is located to the left of the original bounding rectangle right edge, relative to the object's original width. Corresponds to the JSON property rightOffset

Returns:

  • (Float)


857
858
859
# File 'generated/google/apis/slides_v1/classes.rb', line 857

def right_offset
  @right_offset
end

#top_offsetFloat

The offset specifies the top edge of the crop rectangle that is located below the original bounding rectangle top edge, relative to the object's original height. Corresponds to the JSON property topOffset

Returns:

  • (Float)


864
865
866
# File 'generated/google/apis/slides_v1/classes.rb', line 864

def top_offset
  @top_offset
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



871
872
873
874
875
876
877
# File 'generated/google/apis/slides_v1/classes.rb', line 871

def update!(**args)
  @angle = args[:angle] if args.key?(:angle)
  @bottom_offset = args[:bottom_offset] if args.key?(:bottom_offset)
  @left_offset = args[:left_offset] if args.key?(:left_offset)
  @right_offset = args[:right_offset] if args.key?(:right_offset)
  @top_offset = args[:top_offset] if args.key?(:top_offset)
end