为嵌入式图像添加样式

时间:2019-03-12 18:16:18

标签: php phpmailer

我在电子邮件中发送了嵌入式图像。我使用:

$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 个答案:

答案 0 :(得分:1)

是的,但是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">

图像上可能不支持border radius属性,在这种情况下,您可以通过将其包装在应用它的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的{​​{1}}参数相同。 / p>

相关问题