## Color & Background ## Magento builds its Model Captcha which extends from `Zend_Captcha_Image` class. So, in your case, we should override `Magento\Captcha\Model\DefaultModel` class. <?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\Captcha\Model\DefaultModel" type="Vendor\Module\Model\DefaultModel"/> </config> We need to override `_generateImage` method. protected function _generateImage($id, $word) { ...... $w = $this->getWidth(); $h = $this->getHeight(); $fsize = $this->getFontSize(); ...... } We can remove the generation noise: [![enter image description here][1]][1] ## Custom Font ## Add new font to the default config: *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> Add our custom font: `lib/internal/CustomFont/Arial.ttf` [![enter image description here][2]][2] **Take a look: `vendor/magento/module-captcha/Helper/Data.php::getFonts()` to see more details.** [1]: https://i.sstatic.net/uZ0zW.png [2]: https://i.sstatic.net/3hjY5.png