WP_Image_Editor_GD::load(): true| WP_Error

In this article

Loads image from $this->file into new GD Resource.

Return

true| WP_Error True if loaded successfully; WP_Error on failure.

Source

 public function load() { if ( $this->image ) { return true; } if ( !  is_file( $this->file ) && !  preg_match( '|^https?://|', $ this->file ) ) { return new WP_Error( 'error_loading_image', __( 'File does not exist?' ), $this->file ); } // Set artificially high because GD uses uncompressed images in memory. wp_raise_memory_limit( 'image' ); $file_contents = @file_get_contents( $this->file ); if ( ! $ file_contents ) { return new WP_Error( 'error_loading_image', __( 'File does not exist?' ), $this->file ); } // WebP may not work with imagecreatefromstring(). if ( function_exists( 'imagecreatefromwebp' ) && ( 'image/webp' === wp_get_image_mime( $this->file ) ) ) { $this->image = @imagecreatefromwebp( $this->file ); } else { $this->image = @imagecreatefromstring( $file_contents ); } // AVIF may not work with imagecreatefromstring(). if ( function_exists( 'imagecreatefromavif' ) && ( 'image/avif' === wp_get_image_mime( $this->file ) ) ) { $this->image = @imagecreatefromavif( $this->file ); } else { $this->image = @imagecreatefromstring( $file_contents ); } if ( !  is_gd_image( $this->image ) ) { return new WP_Error( 'invalid_image', __( 'File is not an image.' ), $this->file ); } $size = wp_getimagesize( $this->file ); if ( ! $ size ) { return new WP_Error( 'invalid_image', __( 'Could not read image size.' ), $this->file ); } if ( function_exists( 'imagealphablending' ) && function_exists( 'imagesavealpha' ) ) { imagealphablending( $this->image, false ); imagesavealpha( $this->image, true ); } $this->update_size( $size[0], $size[1] ); $this->mime_type = $size['mime']; return $this->set_quality(); }

Changelog

Version Description
3.5.0 Introduced.

User Contributed Notes

You must log in before being able to contribute a note or feedback.