wp_image_matches_ratio( int $source_width, int $source_height, int $target_width, int $target_height )
Helper function to test if aspect ratios for two images match.
Parameters
- $source_width
-
(int) (Required) Width of the first image in pixels.
- $source_height
-
(int) (Required) Height of the first image in pixels.
- $target_width
-
(int) (Required) Width of the second image in pixels.
- $target_height
-
(int) (Required) Height of the second image in pixels.
Return
(bool) True if aspect ratios match within 1px. False if not.
Source
File: wp-includes/media.php
function wp_image_matches_ratio( $source_width, $source_height, $target_width, $target_height ) { /* * To test for varying crops, we constrain the dimensions of the larger image * to the dimensions of the smaller image and see if they match. */ if ( $source_width > $target_width ) { $constrained_size = wp_constrain_dimensions( $source_width, $source_height, $target_width ); $expected_size = array( $target_width, $target_height ); } else { $constrained_size = wp_constrain_dimensions( $target_width, $target_height, $source_width ); $expected_size = array( $source_width, $source_height ); } // If the image dimensions are within 1px of the expected size, we consider it a match. $matched = ( wp_fuzzy_number_match( $constrained_size[0], $expected_size[0] ) && wp_fuzzy_number_match( $constrained_size[1], $expected_size[1] ) ); return $matched; }
Changelog
Version | Description |
---|---|
4.6.0 | Introduced. |
© 2003–2021 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/functions/wp_image_matches_ratio