wp-includes/class-wp-image-editor-gd.php:575Sets Image Compression quality on a 1-100% scale. Handles WebP lossless images.
$qualityintoptionalnulltrue|WP_Error public function set_quality( $quality = null ) { $quality_result = parent::set_quality( $quality ); if ( is_wp_error( $quality_result ) ) { return $quality_result; } else { $quality = $this->get_quality(); } // Handle setting the quality for WebP lossless images, see https://php.watch/versions/8.1/gd-webp-lossless. try { if ( 'image/webp' === $this->mime_type && defined( 'IMG_WEBP_LOSSLESS' ) ) { $webp_info = wp_get_webp_info( $this->file ); if ( ! empty( $webp_info['type'] ) && 'lossless' === $webp_info['type'] ) { $quality = IMG_WEBP_LOSSLESS; parent::set_quality( $quality ); } } } catch ( Exception $e ) { return new WP_Error( 'image_quality_error', $e->getMessage() ); } $this->quality = $quality; return true; }Introduced in 6.7.0. One change between 6.7.7 and 7.1.0.
Signature, return type and hooks compared across 5 parsed releases.
$dims added.verified against sourcesrc/wp-includes/class-wp-image-editor-gd.php, and regenerated for each WordPress release so it tracks the code rather than a snapshot of it.