Jalara Studio

aktualisiert am
23. 11. 2019

JPEG-Bilder nachschärfen

#


WordPress komprimiert die Bilder standardmäßig mit einer Qualität von 85%. Hierbei verlieren die Bilder leicht an Schärfe. Der Besucher empfindet diese Unschärfe meist weniger stark als ein Fotograf, Designer oder Künstler. Mit folgendem Codeschnipsel (engl. snippet)1, eingefügt in die Datei functions.php im Child Theme oder in ein seitenspezifisches Plugin werden die JPEG-Bilder auf 90% komprimiert und anschließend scharf gezogen:

function schaerfe_jpeg_bilder( $resized_file ) {
    $image = imagecreatefromstring( file_get_contents( $resized_file ) );
    if ( ! is_resource( $image ) )
        return new WP_Error( 'error_loading_image', $image, $file );
    $size = @getimagesize( $resized_file );
    if ( !$size )
        return new WP_Error( 'invalid_image', __('Could not read image size' ), $file);
    list( $orig_w, $orig_h, $orig_type ) = $size;
    switch ( $orig_type ) {
        case IMAGETYPE_JPEG:
            $matrix = array(
               array( -1, -1, -1 ),
               array( -1, 16, -1 ),
               array( -1, -1, -1 ),
            );
            $divisor = array_sum( array_map( 'array_sum', $matrix ) );
            $offset = 0;
            imageconvolution( $image, $matrix, $divisor, $offset );
            imagejpeg( $image, $resized_file,apply_filters( 'jpeg_quality', 90, 'edit_image' ) );
            break;
        case IMAGETYPE_PNG:
            return $resized_file;
        case IMAGETYPE_GIF:
            return $resized_file;
    }
return $resized_file;
}
add_filter( 'image_make_intermediate_size', 'schaerfe_jpeg_bilder',900 );

Bereits in die Mediathek geladene JPEG-Bilder können mit dem Plugin Regenerate Thumbnails2 erneut aus der Originaldatei generiert und nachgeschärft werden.

Credits: