TCPDF : html content and href link empty

If you get an issue with TCPDF and link inside html content, here is a little patch (apply it in tcpdf.php file) :

// get attributes
// patch
if ($dom[$key][‘value’]==’a’)
{
$element = str_replace(‘\\\”‘, ‘”‘, $element);
}

// en patch
preg_match_all(‘/([^=\s]*)=[“]?([^”]*)[“]?/’, $element, $attr_array, PREG_PATTERN_ORDER);
$dom[$key][‘attribute’] = array(); // reset attribute array
while (list($id, $name) = each($attr_array[1])) {
$dom[$key][‘attribute’][strtolower($name)] = $attr_array[2][$id];
}

PHP Imagick black background gif transparency

If you want to put a white background instead of black background, add this piece of code :

$path_parts = pathinfo($file);
if ($path_parts[‘extension’]==’gif’)
{
$img = imagecreatefromgif($file);
$imgr = imagecreatetruecolor($neww, $newh);
$bgc = imagecolorallocate ($imgr, 255, 255, 255);
imagefilledrectangle ($imgr, 0, 0, $neww, $newh, $bgc);

imagecopyresampled($imgr, $img, 0, 0, 0, 0, $neww, $newh, $pixw, $pixh);
}

PHPMailer : inline image seen as attachment

There is an issue with PHPMailer and AddEmbeddedImage method.

In some email client, you will get image as an attachment and not inline as expected.

To fix that, patch the class.phpmailer.php with following :

$disposition = $this->attachment[$i][6];
$cid         = $this->attachment[$i][7];

// patch
$path_parts = pathinfo($filename);
$extension = $path_parts[‘extension’];
// end patch

$mime[] = sprintf(“–%s%s”, $this->boundary[1], $this->LE);

// patch
//$mime[] = sprintf(“Content-Type: %s; name=\”%s\”%s”, $type, $name, $this->LE);
$mime[] = sprintf(“Content-Type: image/”.$extension.”;\n”);
// end patch
$mime[] = sprintf(“Content-Transfer-Encoding: %s%s”, $encoding, $this->LE);

if($disposition == “inline”)
$mime[] = sprintf(“Content-ID: <%s>%s”, $cid, $this->LE);