質問

Magento での製品画像の生成はどのように機能しますか?

役に立ちましたか?

解決

画像生成が製品画像のサイズ変更を意味する場合、これはクラスから開始して行われます。 Mage_Catalog_Helper_Image.
メソッドを呼び出します init 製品モデルのインスタンスと、サイズ変更しようとしている画像属性のコードをパラメーターとして受け取ります (image, thumbnail, small_image またはその他のカスタム画像属性)。

このヘルパー クラスはモデルの単なるラッパーです Mage_Catalog_Model_Product_Image
に設定したパラメータに基づいて、 init magento メソッドは、実際のフルサイズ画像へのパス、または画像が存在しない場合はプレースホルダーを取得します。

このヘルパー (上記のモデルを呼び出します) を通じて、幅、高さ、アスペクト比、透明度など、新しい画像のいくつかの属性を設定できます。

電話をかけるときは、 __toString ヘルパーからのメソッド (echo $helperInstance を呼び出したときに発生します)。サイズ変更された画像が存在しない場合は生成され、その URL が返されます。
方法 __toString ヘルパーからの電話 saveFile そして getUrl モデルからのメソッド。

saveFile モデル呼び出しからのメソッド getImageProcessor()->save() メソッド getImageProcessor のインスタンスを返します Varien_Image. 。「アダプター」を使用して画像を処理します。このアダプターはデフォルトで次のインスタンスです。 Varien_Image_Adapter_Gd2.
これらのクラスが何をするのかを確認することから始めて、そこからさらに深く進んでいくことができます。

このアダプターは、イメージのタイプに応じて次の PHP 関数のいずれかを使用するという考えです。

  • magecreatefromgif - GIF用
  • imagecreatefromjpeg - JPEGの場合
  • imagecreatefrompng - pngの場合
  • imagecreatefromxbm - XBMおよびwbmpの場合
ライセンス: CC-BY-SA帰属
所属していません magento.stackexchange
scroll top