Changeset 46459
- Timestamp:
- 10/11/2019 07:52:12 AM (5 years ago)
- Location:
- trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/wp-admin/includes/image.php
r46421 r46459 582 582 // Resize based on the full size image, rather than the source. 583 583 if ( ! is_wp_error( $uploaded ) ) { 584 $ editor = wp_get_image_editor( $uploaded['path'] );584 $image_file = $uploaded['path']; 585 585 unset( $uploaded['path'] ); 586 586 587 if ( ! is_wp_error( $editor ) ) { 588 $metadata['sizes'] = $editor->multi_resize( $merged_sizes ); 589 $metadata['sizes']['full'] = $uploaded; 590 } 587 $metadata['sizes'] = array( 588 'full' => $uploaded, 589 ); 590 591 // Save the meta data before any image post-processing errors could happen. 592 wp_update_attachment_metadata( $attachment_id, $metadata ); 593 594 // Create sub-sizes saving the image meta after each. 595 $metadata = _wp_make_subsizes( $merged_sizes, $image_file, $metadata, $attachment_id ); 591 596 } 592 597 } -
trunk/tests/phpunit/tests/image/functions.php
r43571 r46459 436 436 $expected = array( 437 437 'sizes' => array( 438 'full' => array( 439 'file' => 'wordpress-gsoc-flyer-pdf.jpg', 440 'width' => 1088, 441 'height' => 1408, 442 'mime-type' => 'image/jpeg', 443 ), 444 'medium' => array( 445 'file' => 'wordpress-gsoc-flyer-pdf-232x300.jpg', 446 'width' => 232, 447 'height' => 300, 448 'mime-type' => 'image/jpeg', 449 ), 450 'large' => array( 451 'file' => 'wordpress-gsoc-flyer-pdf-791x1024.jpg', 452 'width' => 791, 453 'height' => 1024, 454 'mime-type' => 'image/jpeg', 455 ), 438 456 'thumbnail' => array( 439 457 'file' => 'wordpress-gsoc-flyer-pdf-116x150.jpg', … … 442 460 'mime-type' => 'image/jpeg', 443 461 ), 462 ), 463 ); 464 465 $metadata = wp_generate_attachment_metadata( $attachment_id, $test_file ); 466 $this->assertSame( $expected, $metadata ); 467 468 unlink( $test_file ); 469 foreach ( $metadata['sizes'] as $size ) { 470 unlink( '/tmp/' . $size['file'] ); 471 } 472 } 473 474 /** 475 * Crop setting for PDF. 476 * 477 * @ticket 43226 478 */ 479 public function test_crop_setting_for_pdf() { 480 481 if ( ! wp_image_editor_supports( array( 'mime_type' => 'application/pdf' ) ) ) { 482 $this->markTestSkipped( 'Rendering PDFs is not supported on this system.' ); 483 } 484 485 update_option( 'medium_crop', 1 ); 486 487 $orig_file = DIR_TESTDATA . '/images/wordpress-gsoc-flyer.pdf'; 488 $test_file = get_temp_dir() . 'wordpress-gsoc-flyer.pdf'; 489 copy( $orig_file, $test_file ); 490 491 $attachment_id = $this->factory->attachment->create_object( 492 $test_file, 493 0, 494 array( 495 'post_mime_type' => 'application/pdf', 496 ) 497 ); 498 499 $this->assertNotEmpty( $attachment_id ); 500 501 $expected = array( 502 'sizes' => array( 503 'full' => array( 504 'file' => 'wordpress-gsoc-flyer-pdf.jpg', 505 'width' => 1088, 506 'height' => 1408, 507 'mime-type' => 'image/jpeg', 508 ), 444 509 'medium' => array( 445 'file' => 'wordpress-gsoc-flyer-pdf- 232x300.jpg',446 'width' => 232,510 'file' => 'wordpress-gsoc-flyer-pdf-300x300.jpg', 511 'width' => 300, 447 512 'height' => 300, 448 513 'mime-type' => 'image/jpeg', … … 454 519 'mime-type' => 'image/jpeg', 455 520 ), 456 'full' => array(457 'file' => 'wordpress-gsoc-flyer-pdf.jpg',458 'width' => 1088,459 'height' => 1408,460 'mime-type' => 'image/jpeg',461 ),462 ),463 );464 465 $metadata = wp_generate_attachment_metadata( $attachment_id, $test_file );466 $this->assertSame( $expected, $metadata );467 468 unlink( $test_file );469 foreach ( $metadata['sizes'] as $size ) {470 unlink( '/tmp/' . $size['file'] );471 }472 }473 474 /**475 * Crop setting for PDF.476 *477 * @ticket 43226478 */479 public function test_crop_setting_for_pdf() {480 481 if ( ! wp_image_editor_supports( array( 'mime_type' => 'application/pdf' ) ) ) {482 $this->markTestSkipped( 'Rendering PDFs is not supported on this system.' );483 }484 485 update_option( 'medium_crop', 1 );486 487 $orig_file = DIR_TESTDATA . '/images/wordpress-gsoc-flyer.pdf';488 $test_file = get_temp_dir() . 'wordpress-gsoc-flyer.pdf';489 copy( $orig_file, $test_file );490 491 $attachment_id = $this->factory->attachment->create_object(492 $test_file,493 0,494 array(495 'post_mime_type' => 'application/pdf',496 )497 );498 499 $this->assertNotEmpty( $attachment_id );500 501 $expected = array(502 'sizes' => array(503 521 'thumbnail' => array( 504 522 'file' => 'wordpress-gsoc-flyer-pdf-116x150.jpg', 505 523 'width' => 116, 506 524 'height' => 150, 507 'mime-type' => 'image/jpeg',508 ),509 'medium' => array(510 'file' => 'wordpress-gsoc-flyer-pdf-300x300.jpg',511 'width' => 300,512 'height' => 300,513 'mime-type' => 'image/jpeg',514 ),515 'large' => array(516 'file' => 'wordpress-gsoc-flyer-pdf-791x1024.jpg',517 'width' => 791,518 'height' => 1024,519 'mime-type' => 'image/jpeg',520 ),521 'full' => array(522 'file' => 'wordpress-gsoc-flyer-pdf.jpg',523 'width' => 1088,524 'height' => 1408,525 525 'mime-type' => 'image/jpeg', 526 526 ),
Note: See TracChangeset
for help on using the changeset viewer.