ImageSaveAlpha($phpThumb->gdimg_source, true); } $new_background_color = phpthumb_functions::ImageHexColorAllocate($phpThumb->gdimg_source, $bghexcolor, false, $alpha); ImageFilledRectangle($phpThumb->gdimg_source, 0, 0, $phpThumb->w, $phpThumb->h, $new_background_color); } else { $phpThumb->ErrorImage('failed to create "new" image (' . $phpThumb->w . 'x' . $phpThumb->h . ')'); } } elseif (!$phpThumb->src) { $phpThumb->ErrorImage('Usage: ' . $_SERVER['PHP_SELF'] . '?src=/path/and/filename.jpg' . "\n" . 'read Usage comments for details'); } elseif (preg_match('/^(f|ht)tp\\:\\/\\//i', $phpThumb->src)) { $phpThumb->DebugMessage('$phpThumb->src (' . $phpThumb->src . ') is remote image, attempting to download', __FILE__, __LINE__); if ($phpThumb->config_http_user_agent) { $phpThumb->DebugMessage('Setting "user_agent" to "' . $phpThumb->config_http_user_agent . '"', __FILE__, __LINE__); ini_set('user_agent', $phpThumb->config_http_user_agent); } $cleanedupurl = phpthumb_functions::CleanUpURLencoding($phpThumb->src); $phpThumb->DebugMessage('CleanUpURLencoding(' . $phpThumb->src . ') returned "' . $cleanedupurl . '"', __FILE__, __LINE__); $phpThumb->src = $cleanedupurl; unset($cleanedupurl); if ($rawImageData = phpthumb_functions::SafeURLread($phpThumb->src, $error, $phpThumb->config_http_fopen_timeout, $phpThumb->config_http_follow_redirect)) { $phpThumb->DebugMessage('SafeURLread(' . $phpThumb->src . ') succeeded' . ($error ? ' with messsages: "' . $error . '"' : ''), __FILE__, __LINE__); $phpThumb->DebugMessage('Setting source data from URL "' . $phpThumb->src . '"', __FILE__, __LINE__); $phpThumb->setSourceData($rawImageData, urlencode($phpThumb->src)); } else { $phpThumb->ErrorImage($error); } } //////////////////////////////////////////////////////////////// // Debug output, to try and help me diagnose problems $phpThumb->DebugTimingMessage('phpThumbDebug[7]', __FILE__, __LINE__); if (@$_GET['phpThumbDebug'] == '7') {
$phpThumb->setParameter('is_alpha', true); ImageAlphaBlending($phpThumb->gdimg_source, false); ImageSaveAlpha($phpThumb->gdimg_source, true); } $new_background_color = phpthumb_functions::ImageHexColorAllocate($phpThumb->gdimg_source, $bghexcolor, false, $alpha); ImageFilledRectangle($phpThumb->gdimg_source, 0, 0, $phpThumb->w, $phpThumb->h, $new_background_color); } else { $phpThumb->ErrorImage('failed to create "new" image (' . $phpThumb->w . 'x' . $phpThumb->h . ')'); } } elseif (!$phpThumb->src) { $phpThumb->ErrorImage('Usage: ' . $_SERVER['PHP_SELF'] . '?src=/path/and/filename.jpg' . "\n" . 'read Usage comments for details'); } elseif (eregi('^(f|ht)tp\\://', $phpThumb->src)) { if ($phpThumb->config_http_user_agent) { ini_set('user_agent', $phpThumb->config_http_user_agent); } if ($rawImageData = phpthumb_functions::SafeURLread(phpthumb_functions::CleanUpURLencoding($phpThumb->src), $error, $phpThumb->config_http_fopen_timeout, $phpThumb->config_http_follow_redirect)) { $phpThumb->setSourceData($rawImageData, urlencode($phpThumb->src)); } else { $phpThumb->ErrorImage($error); } } //////////////////////////////////////////////////////////////// // Debug output, to try and help me diagnose problems $phpThumb->DebugTimingMessage('phpThumbDebug[7]', __FILE__, __LINE__); if (@$_GET['phpThumbDebug'] == '7') { $phpThumb->phpThumbDebug(); } //////////////////////////////////////////////////////////////// $phpThumb->GenerateThumbnail(); //////////////////////////////////////////////////////////////// // Debug output, to try and help me diagnose problems