web-dev-qa-db-ja.com

サムネイルadd_image_sizeでトリミングしますか?

私は特定のページの私のサムネイルを正確に300px×100pxにしたいです。現在、画像は300ピクセルまたは100ピクセルのマークに達するまで縮小されます。画像を正確に300×100にトリミングするにはどうすればよいですか(できれば画像を歪ませないで)。

// functions.php:
if ( function_exists( 'add_image_size' ) ) add_theme_support( 'post-thumbnails' );

if ( function_exists( 'add_image_size' ) ) { 
    add_image_size( 'post-thumb', 620, 207, true );
    add_image_size( 'home-thumb', 220, 180, true );
    add_image_size( 'index-thumb', 300, 100, true );
}
// index.php:
if ( has_post_thumbnail()) the_post_thumbnail('index-thumb');
1
pope

add_image_size()Codexエントリを参照してください

<?php add_image_size( $name, $width, $height, $crop ); ?>

$cropパラメータが重要です。

(boolean)(optional)画像をトリミングするかどうか。 False - ソフトプロポーショナルクロップモード。 True - ハードクロップモード.

デフォルト:false

あれは:

  • False(デフォルト):box-resize - (画像を拘束寸法に対してサイズ変更する)
  • Truehard-crop - 指定された大きさになるように画像を切り取る正確に

したがって、あなたのコードはうまくいくはずです。

// Add Theme support
add_theme_support( 'post-thumbnails' );

// Register custom image sizes
add_image_size( 'post-thumb', 620, 207, true );
add_image_size( 'home-thumb', 220, 180, true );
add_image_size( 'index-thumb', 300, 100, true );

画像が正しくレンダリング/表示されていないことがわかった場合は、確認することがいくつかあります。

  • これらのカスタム画像サイズの以前の実装が追加された画像の場合は、これらの画像のサムネイルを再生成する必要があります
  • 画像サイズ生成されません指定された画像サイズの指定された寸法と少なくとも同じ大きさではない画像の場合。したがって、あなたの画像は少なくともあなたの最大指定のハードクロップ画像サイズと同じ大きさであることを確認してください。 (ボックスリサイズされた画像はそれほど制約されておらず、少なくとも与えられた画像サイズの最小寸法と同じ大きさである必要があります。)
4
Chip Bennett

これを見てみましょう plugin

  • それは無制限の画像サイズを作成します
  • メディア選択フィールドにサイズが追加されます
  • それはCSSフィルタリングとアニメーションを追加します
  • 透かしを管理できます
0
AD-THEME