Magento 2 पर JPG संपीड़न बहुत मजबूत है, ताकि उत्पाद छवियों की गुणवत्ता कैटलॉग और उत्पाद दृश्य में वास्तव में खराब हो। मैं Magento 2 में JPG की छवि संपीड़न कैसे बदल सकता हूं?
Magento 2 पर JPG संपीड़न बहुत मजबूत है, ताकि उत्पाद छवियों की गुणवत्ता कैटलॉग और उत्पाद दृश्य में वास्तव में खराब हो। मैं Magento 2 में JPG की छवि संपीड़न कैसे बदल सकता हूं?
जवाबों:
यह समाधान मेरे लिए काम करता है:
फ़ाइल: {विक्रेता} / {मॉड्यूल} /etc/di.xml
<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
<preference for="Magento\Catalog\Model\Product\Image" type="{Vendor}\{Module}\Model\Product\Image" />
</config>
फ़ाइल: {विक्रेता} / {मॉड्यूल} / मॉडल / उत्पाद आप जो भी चाहते हैं उसके लिए गुणवत्ता निर्धारित कर सकते हैं। फिर फ्लश इमेज कैश।
namespace {Vendor}\{Module}\Model\Product;
class Image extends \Magento\Catalog\Model\Product\Image {
protected function _construct() {
$this->_quality = 100;
parent::_construct();
}
}
vendor/magento/framework/Image/Adapter/Gd2.php:167
9 से (अधिकतम)
Magento 2.3.2 के लिए कोड को बदले बिना छवि गुणवत्ता सेट करना संभव है:
स्टोर> कॉन्फ़िगरेशन> उन्नत> सिस्टम> छवियां कॉन्फ़िगरेशन> गुणवत्ता> 100 अपलोड करें
XML कॉन्फ़िगरेशन पथ है:
system/upload_configuration/jpeg_quality
अंदर - विक्रेता / Magento / मॉड्यूल-कैटलॉग / हेल्पर / Image.php
आप सामान्य पाएंगे:
public function setQuality($quality)
{
$this->_getModel()->setQuality($quality);
return $this;
}
यदि आप इसके उपयोग के लिए grep करते हैं तो आपको उसी नाम का एक तरीका मिलेगा:
Magento / मॉड्यूल-सूची / मॉडल / उत्पाद / Image.php
और उस फ़ाइल के अंदर:
/**
* Default quality value (for JPEG images only).
*
* @var int
*/
protected $_quality = 80;
यह मान है - जिसे 95 पर सेट करने की आवश्यकता है।
यह साइट में संपीड़न और कलाकृतियों को कम करेगा।
मेरे लोग मानेंगे कि इस संशोधन को एक उपयुक्त रूप से तैनात कोड ओवरराइड के साथ करना होगा - अर्थात इस कोर फ़ाइल के संशोधन द्वारा नहीं। मैं एक Magento डेवलपर नहीं हूँ अन्यथा मैं एक दरार होगा ...।
यहाँ जवाब बहुत गलत हैं IMO। यह वह गुणवत्ता नहीं है जिसे आपको पहले हाथ से बदलना चाहिए , यह छवियों का आकार है। क्यों?
अच्छी बात यह है कि जब किसी छोटी से छोटी फ़ाइल का आकार प्राप्त करने के लिए एक छवि को संपीड़ित किया जाता है तो उस लक्ष्य को प्राप्त करने में संपीड़न दर सबसे अधिक फायदेमंद होती है। दूसरा एक छवि का आयाम है। फ़ाइल के आकार को जितना संभव हो सके उतना कम करने से पहले आपको इसे डाउन करने से पहले हमेशा मूल स्रोत छवि को संपीड़ित करना चाहिए (मैंने यह जांच नहीं की है कि मैगेंटो इसे कैसे संभालता है)।
रेटिना स्क्रीन पर आपको प्रदर्शित आकार 2x की आवश्यकता होती है। इसलिए 250x250 पिक्सल में एक तेज छवि प्रदर्शित करने के लिए, फिर छवि को 500x500 पिक्सल होना चाहिए।
इसलिए मैं view.xml
प्रदर्शित आकार को दोगुना करने के लिए थीम में बदलाव के साथ शुरू करूंगा । अगर छवि अभी भी अच्छी नहीं दिखती है तो मैं गुणवत्ता सेटिंग पर विचार करूंगा। यदि आपके पास समय है तो आप उत्तरदायी छवियों को लागू कर सकते हैं (इसलिए दोगुना आकार केवल रेटिना स्क्रीन उपकरणों पर लोड किया जाता है )।
आप छवि से सभी मेटा डेटा को हटाकर आकार भी प्राप्त कर सकते हैं, यह सुनिश्चित नहीं है कि क्या Magento डिफ़ॉल्ट रूप से करता है या नहीं। यह आमतौर पर अच्छी छवि कंप्रेसिंग सेवाओं का एक हिस्सा है।