Since Symfony 7+, it's possible to set the locale directly in the Symfony\Bridge\Twig\Mime\TemplatedEmail
:
Example from the documentation:
$email = (new TemplatedEmail())
->from('[email protected]')
->to(new Address('[email protected]'))
->subject('Thanks for signing up!')
// path of the Twig template to render
->htmlTemplate('emails/signup.html.twig')
// change locale used in the template, e.g. to match user's locale
->locale('de')
;