добавить стиль к встроенному изображению - PullRequest
2 голосов
/ 12 марта 2019

Я отправляю встроенное изображение по электронной почте. Я использую:

$mail->AddEmbeddedImage("../public/img/swb.jpg", "swb-image");

Когда я смотрю на источник письма, я нахожу следующее:

<img border=0 width=915 height=187 style='width:9.5333in;height:1.95in' id="Picture_x0020_3" src="cid:swb-image" alt="cid:swb-image">

Есть ли способ добавить: style="border-radius: 15px;

Если невозможно добавить стиль к встроенному изображению, возможно ли скруглить углы изображения в php?

моя функция электронной почты выглядит так:

function mailerExpressBlueHost(array $mailInputs){


          require_once '../includes/phpmailer/PHPMailerAutoload.php';

          $mail = new PHPMailer();
          $mail->IsMail();          
          $mail->SetFrom('skipper@sailwbob.com');
          $mail->IsHTML(true);
          $mail->addAddress($mailInputs['addAddress']);

          $mail->AddEmbeddedImage("../public/img/swb.jpg", "swb-image"); 

          $body = $mailInputs['body'] ;
          $mail->isHTML(true);
          $mail->Subject = $mailInputs['subject'] ;
          $mail->Body    = $body;

         if(!$mail->send()) {
         return 'Message could not be sent.' . 'Mailer Error: ' . $mail->ErrorInfo;

          } else {
         return 'Message has been sent';
          }

          $mail->ClearAddresses();

}

1 Ответ

1 голос
/ 12 марта 2019

Да, но PHPMailer не имеет к этому никакого отношения - он полностью зависит от того, что вы вкладываете в тело сообщения, и в нем много различий в приложениях почтового клиента. Кроме того, вы смешиваете пиксели и дюймовые единицы измерения и не согласны с цитированием атрибутов. Попробуйте это:

<img border="0" width="915" height="187" style="width:915px;height:187px;border-radius: 15px;" id="Picture_x0020_3" src="cid:swb-image" alt="swb-image">

Возможно, свойство радиуса границы не поддерживается на изображениях, и в этом случае вы можете сделать это, поместив его в элемент div, который применяет его вместо:

<div style="border-radius: 15px;">
    <img border="0" width="915" height="187" style="width:915px;height:187px;" id="Picture_x0020_3" src="cid:swb-image" alt="swb-image">
</div>

Что касается PHPMailer, важно только то, что значение cid, которое вы используете в теле сообщения, совпадает с параметром cid, который вы передаете в addEmbeddedImage.

...