Magento 2: Как изменить шрифт, Цвет и фон капчи по умолчанию
4
2 answers
Цвет и фон
Magento создает свою модель капчи, которая простирается от класса Zend_Captcha_Image
. Итак, в вашем случае мы должны переопределить класс Magento\Captcha\Model\DefaultModel
.
<preference for="Magento\Captcha\Model\DefaultModel"
type="Vendor\Module\Model\DefaultModel"/>
Нам нужно переопределить метод _generateImage
.
protected function _generateImage($id, $word)
{
......
$w = $this->getWidth();
$h = $this->getHeight();
$fsize = $this->getFontSize();
......
}
Мы можем удалить шум генерации:
Пользовательский шрифт
Добавьте новый шрифт в конфигурацию по умолчанию:
app/code/Company/Module/etc/config.xml
<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="urn:magento:module:Magento_Store:etc/config.xsd">
<default>
<captcha translate="label">
<fonts>
<arial>
<label>Arial</label>
<path>CustomFont/Arial.ttf</path>
</arial>
</fonts>
</captcha>
</default>
</config>
Добавьте наш собственный шрифт: lib/internal/CustomFont/Arial.ttf
Взгляните: vendor/magento/module-captcha/Helper/Data.php::getFonts()
, чтобы увидеть более подробную информацию.
3
Author: Khoa TruongDinh, 2020-06-15 08:30:17
Для настройки капчи, я думаю, вам нужно внести изменения в этот файл:
magento2/vendor/magento/zendframework1/library/Zend/Captcha/Image.php
0
Author: Nikunj Vadariya, 2016-10-21 05:54:29