WP_Image_Editor_Imagick::pdf_load_source() WordPress Method
This function loads a PDF document into an Imagick object for further editing. PDF documents can be loaded into Imagick objects using the WP_Image_Editor_Imagick::pdf_load_source() function. This function supports loading PDFs from either a file or a URL. Once the PDF has been loaded, it can be edited using the various methods provided by the Imagick class.
WP_Image_Editor_Imagick::pdf_load_source() #
Load the image produced by Ghostscript.
Description
Includes a workaround for a bug in Ghostscript 8.70 that prevents processing of some PDF files when use-cropbox is set.
Return
(true|WP_Error)
Source
File: wp-includes/class-wp-image-editor-imagick.php
protected function pdf_load_source() {
$filename = $this->pdf_setup();
if ( is_wp_error( $filename ) ) {
return $filename;
}
try {
// When generating thumbnails from cropped PDF pages, Imagemagick uses the uncropped
// area (resulting in unnecessary whitespace) unless the following option is set.
$this->image->setOption( 'pdf:use-cropbox', true );
// Reading image after Imagick instantiation because `setResolution`
// only applies correctly before the image is read.
$this->image->readImage( $filename );
} catch ( Exception $e ) {
// Attempt to run `gs` without the `use-cropbox` option. See #48853.
$this->image->setOption( 'pdf:use-cropbox', false );
$this->image->readImage( $filename );
}
return true;
}
Expand full source codeCollapse full source codeView on TracView on GitHub
Changelog
| Version | Description |
|---|---|
| 5.6.0 | Introduced. |