本文整理汇总了PHP中Thumbnail::destruct方法的典型用法代码示例。如果您正苦于以下问题:PHP Thumbnail::destruct方法的具体用法?PHP Thumbnail::destruct怎么用?PHP Thumbnail::destruct使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Thumbnail
的用法示例。
在下文中一共展示了Thumbnail::destruct方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getThumb
function getThumb($text, $size = 70, $reflections = false)
{
preg_match("/\\<img.+?src=\"(.+?)\".+?\\/>/", $text, $matches);
$paths = array();
if (isset($matches[1])) {
$image_path = $matches[1];
//joomla 1.5 only
$full_url = JURI::base();
//remove any protocol/site info from the image path
$parsed_url = parse_url($full_url);
$paths[] = $full_url;
if (isset($parsed_url['path']) && $parsed_url['path'] != "/") {
$paths[] = $parsed_url['path'];
}
foreach ($paths as $path) {
if (strpos($image_path, $path) !== false) {
$image_path = substr($image_path, strpos($image_path, $path) + strlen($path));
}
}
// remove any / that begins the path
if (substr($image_path, 0, 1) == '/') {
$image_path = substr($image_path, 1);
}
//if after removing the uri, still has protocol then the image
//is remote and we don't support thumbs for external images
if (strpos($image_path, 'http://') !== false || strpos($image_path, 'https://') !== false) {
return false;
}
// create a thumb filename
$file_div = strrpos($image_path, '.');
$thumb_ext = substr($image_path, $file_div);
$thumb_prev = substr($image_path, 0, $file_div);
$thumb_path = $thumb_prev . "_thumb" . $thumb_ext;
// check to see if this file exists, if so we don't need to create it
if (function_exists("gd_info") && !file_exists($thumb_path)) {
// file doens't exist, so create it and save it
include_once 'thumbnail.inc.php';
$thumb = new Thumbnail($image_path);
if ($thumb->error) {
if (MICRONEWS) {
echo "ROKMININEWS ERROR: " . $thumb->errmsg . ": " . $image_path;
}
return false;
}
$thumb->resize($size);
if ($reflections) {
$thumb->createReflection(30, 30, 60, false);
}
if (!is_writable(dirname($thumb_path))) {
$thumb->destruct();
return false;
}
$thumb->save($thumb_path);
$thumb->destruct();
}
return $thumb_path;
} else {
return false;
}
}
示例2: saveVideoInfo
/**
* Save editted video details
*/
function saveVideoInfo()
{
global $Itemid, $mainframe;
$db = & JFactory::getDBO();
$my = & JFactory::getUser();
$c = hwd_vs_Config::get_instance();
$app = & JFactory::getApplication();
$row = new hwdvids_video($db);
$uid = JRequest::getInt( 'owner', 0, 'post' );
$rowid = JRequest::getInt( 'id', 0, 'post' );
$referrer = JRequest::getVar( 'referrer', JURI::root( true ) . '/index.php?option=com_hwdvideoshare&Itemid='.$Itemid );
// check component access settings and deny those without privileges
if (!hwd_vs_access::allowAccess( $c->gtree_mdrt, $c->gtree_mdrt_child, hwd_vs_access::userGID( $my->id ))) {
if ($my->id == $uid) {
if ($my->id == "0") {
$app->enqueueMessage(_HWDVIDS_ALERT_NOPERM);
$app->redirect( $referrer );
}
if ($c->allowvidedit == "0") {
$app->enqueueMessage(_HWDVIDS_ALERT_NOPERM);
$app->redirect( $referrer );
}
// continue
} else {
$app->enqueueMessage(_HWDVIDS_ALERT_NOPERM);
$app->redirect( $referrer );
}
}
$row->load( $rowid );
$old_category = $row->category_id;
$file_name_org = $_FILES['thumbnail_file']['name'];
$file_ext = substr($file_name_org, strrpos($file_name_org, '.') + 1);
$thumbnail = '';
if ($_FILES['thumbnail_file']['tmp_name'] !== "") {
if ($row->video_type == "local" || $row->video_type == "swf" || $row->video_type == "mp4")
{
$videocode = $row->video_id;
$thumbnail = $file_ext;
}
else
{
$videocode = "tp-".$row->id;
$thumbnail = "tp-".$row->id.".".$file_ext;
}
$base_Dir = JPATH_SITE.DS.'hwdvideos'.DS.'thumbs'.DS;
$upload_result = hwd_vs_tools::uploadFile("thumbnail_file", $videocode, $base_Dir, 2, "jpg,jpeg", 1);
if ($upload_result[0] == "0")
{
$msg = $upload_result[1];
$app->enqueueMessage($msg);
$app->redirect( JURI::root( true ) . '/index.php?option=com_hwdvideoshare&Itemid='.$Itemid.'&task=editvideo&video_id='.$row->id );
}
else
{
require_once(JPATH_SITE.DS.'administrator'.DS.'components'.DS.'com_hwdvideoshare'.DS.'libraries'.DS.'thumbnail.inc.php');
$thumb_path_s = JPATH_SITE.DS.'hwdvideos'.DS.'thumbs'.DS.$videocode.'.'.$file_ext;
$thumb_path_l = JPATH_SITE.DS.'hwdvideos'.DS.'thumbs'.DS.'l_'.$videocode.'.'.$file_ext;
$twidth_s = round($c->con_thumb_n);
$theight_s = round($c->con_thumb_n*$c->tar_fb);
$twidth_l = round($c->con_thumb_l);
$theight_l = round($c->con_thumb_l*$c->tar_fb);
list($width, $height, $type, $attr) = @getimagesize($thumb_path_s);
$ratio = $width/$height;
//echo $thumb_path_s."<br />".$ratio."<br />".$width."<br />".$height."<br />".$c->tar_fb."<br />".$twidth_s."<br />".$theight_s;
if ($ratio > 1)
{
$resized_l = new Thumbnail($thumb_path_s);
$resized_l->resize($twidth_l,$twidth_l);
$resized_l->cropFromCenter($twidth_l, $theight_l);
$resized_l->save($thumb_path_l);
$resized_l->destruct();
$resized_s = new Thumbnail($thumb_path_s);
$resized_s->resize($twidth_s,$twidth_s);
$resized_s->cropFromCenter($twidth_s, $theight_s);
$resized_s->save($thumb_path_s);
$resized_s->destruct();
}
else
{
$resized_l = new Thumbnail($thumb_path_s);
$resized_l->resize($twidth_l,2000);
$resized_l->cropFromCenter($twidth_l, $theight_l);
//.........这里部分代码省略.........
示例3: dirname
<?php
include dirname(__FILE__) . "/init.php";
require_once ISC_BASE_PATH . "/includes/classes/class.thumbnail.php";
$width = (int) $_GET['width'];
$height = (int) $_GET['height'];
$path = $_GET['path'];
$imagename = ISC_BASE_PATH . "/" . $path;
$thumb = new Thumbnail($imagename);
//$thumb->resizeToWidth(240);
$thumb->resize($width, $height);
$thumb->show();
$thumb->destruct();
示例4: savecategories
/**
* save categories
*/
function savecategories()
{
global $option;
$db = & JFactory::getDBO();
$app = & JFactory::getApplication();
$c = hwd_vs_Config::get_instance();
$access_lev_u = Jrequest::getVar( 'access_lev_u', '0' );
$access_lev_v = Jrequest::getVar( 'access_lev_v', '0' );
$row = new hwdvids_cats($db);
if (isset($_FILES['thumbnail_file']['error'])) {
$file_name_org = $_FILES['thumbnail_file']['name'];
$file_ext = substr($file_name_org, strrpos($file_name_org, '.') + 1);
$thumbnail_url = JURI::root( true ).'/hwdvideos/thumbs/category'.$_POST['id'].'.'.$file_ext;
$base_Dir = JPATH_SITE.DS.'hwdvideos'.DS.'thumbs'.DS;
$thumbnail_name = 'category'.$_POST['id'];
$upload_result = hwd_vs_tools::uploadFile("thumbnail_file", $thumbnail_name, $base_Dir, 2, "jpg,jpeg", 1);
if ($upload_result[0] == "0") {
$msg = $upload_result[1];
$app->enqueueMessage($msg);
} else {
include_once(JPATH_SITE.DS.'administrator'.DS.'components'.DS.'com_hwdvideoshare'.DS.'libraries'.DS.'thumbnail.inc.php');
$thumb_path_s = JPATH_SITE.DS.'hwdvideos'.DS.'thumbs'.DS.$thumbnail_name.'.'.$file_ext;
$twidth_s = round($c->con_thumb_n);
$theight_s = round($c->con_thumb_n*$c->tar_fb);
list($width, $height, $type, $attr) = @getimagesize($thumb_path_s);
$ratio = $height/$width;
if ($ratio < $c->tar_fb) {
$resized_s = new Thumbnail($thumb_path_s);
$resized_s->resize(1000, $theight_s);
$resized_s->cropFromCenter($twidth_s, $theight_s);
$resized_s->save($thumb_path_s);
$resized_s->destruct();
} else {
$resized_s = new Thumbnail($thumb_path_s);
$resized_s->resize($twidth_s,1000);
$resized_s->cropFromCenter($twidth_s, $theight_s);
$resized_s->save($thumb_path_s);
$resized_s->destruct();
}
}
// update db with new thumbnail
$db->SetQuery("UPDATE #__hwdvidscategories SET thumbnail = '$thumbnail_url' WHERE id = ".intval($_POST['id']));
$db->Query();
if ( !$db->query() ) {
echo "<script> alert('".$db->getErrorMsg()."'); window.history.go(-1); </script>\n";
exit();
}
$msg = "Thumbnail was successfully uploaded";
$app->enqueueMessage($msg);
$app->redirect( 'index.php?option=com_hwdvideoshare&Itemid='.$Itemid.'&task=editcatA&hidemainmenu=1&cid='.$_POST['id'] );
} else {
if (intval($_POST['id']) !== 0 && (intval($_POST['id']) == intval($_POST['parent']))) {
$app->enqueueMessage(_HWDVIDS_ALERT_PARENTNOTSELF);
$app->redirect( JURI::root( true ) . '/administrator/index.php?option='.$option.'&task=categories' );
}
$_POST['category_name'] = Jrequest::getVar( 'category_name', 'no name supplied' );
$_POST['category_description'] = Jrequest::getVar( 'category_description', 'no name supplied' );
$_POST['access_lev_u'] = @implode(",", $access_lev_u);
$_POST['access_lev_v'] = @implode(",", $access_lev_v);
}
// bind it to the table
if (!$row -> bind($_POST)) {
echo "<script> alert('"
.$row -> getError()
."'); window.history.go(-1); </script>\n";
exit();
}
if(empty($row->category_name)) {
$app->enqueueMessage(_HWDVIDS_NOTITLE);
$app->redirect( JURI::root( true ) . '/administrator/index.php?option='.$option.'&task=categories' );
}
// store it in the db
//.........这里部分代码省略.........
示例5: getImages
function getImages($text, $thumb_size=70) {
$matches = array();
preg_match("/\<img.+?src=\"(.+?)\".+?\/>/", $text, $matches);
$images = new stdClass();
$images->image = false;
$images->thumb = false;
$paths = array();
if (isset($matches[1])) {
$image_path = $matches[1];
//joomla 1.5 only
$full_url = JURI::base();
//remove any protocol/site info from the image path
$parsed_url = parse_url($full_url);
$paths[] = $full_url;
if (isset($parsed_url['path']) && $parsed_url['path'] != "/") $paths[] = $parsed_url['path'];
foreach ($paths as $path) {
if (strpos($image_path,$path) !== false) {
$image_path = substr($image_path,strpos($image_path, $path)+strlen($path));
}
}
// remove any / that begins the path
if (substr($image_path, 0 , 1) == '/') $image_path = substr($image_path, 1);
//if after removing the uri, still has protocol then the image
//is remote and we don't support thumbs for external images
if (strpos($image_path,'http://') !== false ||
strpos($image_path,'https://') !== false) {
return false;
}
$images->image = JURI::Root(True)."/".$image_path;
// create a thumb filename
$file_div = strrpos($image_path,'.');
$thumb_ext = substr($image_path, $file_div);
$thumb_prev = substr($image_path, 0, $file_div);
$thumb_path = $thumb_prev . "_thumb" . $thumb_ext;
// check to see if this file exists, if so we don't need to create it
if (function_exists("gd_info")) {
// file doens't exist, so create it and save it
if (!class_exists("Thumbnail")) include_once('thumbnail.inc.php');
if (file_exists($thumb_path)) {
$existing_thumb = new Thumbnail($thumb_path);
$images->size = $existing_thumb->currentDimensions;
$current_size = $existing_thumb->getCurrentWidth();
}
if (!file_exists($thumb_path) || $current_size!=$thumb_size) {
$thumb = new Thumbnail($image_path);
if ($thumb->error) {
echo "ROKNEWSPAGER ERROR: " . $thumb->errmsg . ": " . $image_path;
return false;
}
$thumb->resize($thumb_size);
if (!is_writable(dirname($thumb_path))) {
$thumb->destruct();
return false;
}
$images->size = $thumb->currentDimensions;
$thumb->save($thumb_path);
$thumb->destruct();
}
}
$images->thumb = $thumb_path;
}
return $images;
}
示例6: editvideos
//.........这里部分代码省略.........
$favs = $db->loadResult();
echo $db->getErrorMsg();
if (empty($favs)) {$favs = 0;}
$db->SetQuery( "SELECT count(*)"
. "\nFROM #__hwdvidsflagged_videos"
. "\nWHERE videoid = $cid"
);
$flagged = $db->loadResult();
echo $db->getErrorMsg();
if (empty($flagged)) {$flagged = 0;}
$upld_thumbnail = JRequest::getInt( 'upld_thumbnail', 0, 'post' );
if ($upld_thumbnail == "1") {
$file_name_org = $_FILES['thumbnail_file']['name'];
$file_ext = substr($file_name_org, strrpos($file_name_org, '.') + 1);
if ($row->video_type == "local" || $row->video_type == "swf" || $row->video_type == "mp4")
{
$videocode = $row->video_id;
$thumbnail = $file_ext;
}
else
{
$videocode = "tp-".$row->id;
$thumbnail = "tp-".$row->id.".".$file_ext;
}
$base_Dir = JPATH_SITE.DS.'hwdvideos'.DS.'thumbs'.DS;
$upload_result = hwd_vs_tools::uploadFile("thumbnail_file", $videocode, $base_Dir, 2, "jpg,jpeg", 1);
if ($upload_result[0] == "0")
{
$msg = $upload_result[1];
$app->enqueueMessage($msg);
$app->redirect( 'index.php?option=com_hwdvideoshare&Itemid='.$Itemid.'&task=editvidsA&hidemainmenu=1&cid='.$row->id );
}
else
{
include_once(JPATH_SITE.DS.'administrator'.DS.'components'.DS.'com_hwdvideoshare'.DS.'libraries'.DS.'thumbnail.inc.php');
$thumb_path_s = JPATH_SITE.DS.'hwdvideos'.DS.'thumbs'.DS.$videocode.'.'.$file_ext;
$thumb_path_l = JPATH_SITE.DS.'hwdvideos'.DS.'thumbs'.DS.'l_'.$videocode.'.'.$file_ext;
$twidth_s = round($c->con_thumb_n);
$theight_s = round($c->con_thumb_n*$c->tar_fb);
$twidth_l = round($c->con_thumb_l);
$theight_l = round($c->con_thumb_l*$c->tar_fb);
list($width, $height, $type, $attr) = @getimagesize($thumb_path_s);
$ratio = $width/$height;
//echo $thumb_path_s."<br />".$ratio."<br />".$width."<br />".$height."<br />".$c->tar_fb."<br />".$twidth_s."<br />".$theight_s;
if ($ratio > 1)
{
$resized_l = new Thumbnail($thumb_path_s);
$resized_l->resize($twidth_l,$twidth_l);
$resized_l->cropFromCenter($twidth_l, $theight_l);
$resized_l->save($thumb_path_l);
$resized_l->destruct();
$resized_s = new Thumbnail($thumb_path_s);
$resized_s->resize($twidth_s,$twidth_s);
$resized_s->cropFromCenter($twidth_s, $theight_s);
$resized_s->save($thumb_path_s);
$resized_s->destruct();
}
else
{
$resized_l = new Thumbnail($thumb_path_s);
$resized_l->resize($twidth_l,2000);
$resized_l->cropFromCenter($twidth_l, $theight_l);
$resized_l->save($thumb_path_l);
$resized_l->destruct();
$resized_s = new Thumbnail($thumb_path_s);
$resized_s->resize($twidth_s,1000);
$resized_s->cropFromCenter($twidth_s, $theight_s);
$resized_s->save($thumb_path_s);
$resized_s->destruct();
}
}
// update db with new thumbnail
$db->SetQuery("UPDATE #__hwdvidsvideos SET thumbnail = '$thumbnail' WHERE id = $row->id");
$db->Query();
if ( !$db->query() ) {
echo "<script> alert('".$db->getErrorMsg()."'); window.history.go(-1); </script>\n";
exit();
}
$msg = "Thumbnail was successfully uploaded";
$app->enqueueMessage($msg);
$app->redirect( 'index.php?option=com_hwdvideoshare&Itemid='.$Itemid.'&task=editvidsA&hidemainmenu=1&cid='.$row->id );
}
hwdvids_HTML::editvideos($row, $cat, $usr, $favs, $flagged);
}
示例7: scale
function scale($imagePath, $thumbnailPath, $dimensions)
{
$imgMaxWidth = is_numeric($this->image_size[0]) ? min($this->image_size[0], trim(intval($dimensions[0]))) : trim(intval($dimensions[0]));
// $imgMaxHeight = trim(intval($this->size));
$thumb = new Thumbnail($imagePath);
if ($thumb->error) {
echo $imagePath . ":" . $thumb->errmsg . "<br />";
return false;
}
// $thumb->resize($imgMaxWidth,$imgMaxHeight);
$thumb->resize($imgMaxWidth);
$thumb->save($thumbnailPath, $this->quality);
$thumb->destruct();
if (file_exists($thumbnailPath)) {
return true;
}
return false;
}
示例8: showImage
function showImage($filePath, $width, $height)
{
//echo $filePath;die;
App::import('Vendor', 'Thumbnail', array('file' => 'thumbnail.inc.php'));
/* ERROR Image */
if (!file($filePath)) {
$filePath = URL_SITE . '/img/noimage.png';
$size = getimagesize($filePath);
if (empty($width)) {
$width = $size[0];
}
}
/* End of error image */
$thumb = new Thumbnail($filePath);
$size = getimagesize($filePath);
/* width and height setting and resize width and height with respect to image width and height */
if (!empty($width)) {
if ($size[0] > $width) {
$width = $width;
} else {
$width = $size[0];
}
}
if (!empty($height)) {
if ($size[1] > $height) {
$height = $height;
} else {
$height = $size[0];
}
}
//echo $width.'/'.$height;die;
/* end of setting */
//check to see if file exists
//$thumb->resize($width,$height);
echo $thumb->show();
exit;
//$thumb->crop(110,120,$width,$height);
if (isset($filePath)) {
$thumb->show();
exit;
} else {
$thumb->destruct();
exit;
}
}
示例9: uploadImages
function uploadImages($listing_id, $path)
{
$imgMaxWidth = $this->Config->content_max_imgwidth;
$fileKeys = $this->fileKeys;
$images = array();
// Load thumbnail library
App::import('Vendor', 'thumbnail' . DS . 'thumbnail.inc');
foreach ($fileKeys as $key) {
$tmp_name = $_FILES['image']['tmp_name'][$key];
$name = basename($_FILES['image']['name'][$key]);
// Append datetime stamp to file name
$nameArray = explode(".", $name);
// Leave only valid characters
$nameArray[count($nameArray) - 2] = preg_replace('/[^0-9a-z]+/i', '', $nameArray[count($nameArray) - 2]);
$nameArray[count($nameArray) - 2] = preg_replace('/[^\\w\\d\\s]+/i', '', $nameArray[count($nameArray) - 2]);
$nameArray[count($nameArray) - 2] = $nameArray[count($nameArray) - 2] . "_" . time();
// Prepend contentid
$name = $listing_id . "_" . implode(".", $nameArray);
$uploadfile = $path . $name;
if (move_uploaded_file($tmp_name, $uploadfile)) {
$images[] = "jreviews/" . $name . "|||0||bottom||";
chmod($uploadfile, 0644);
// Begin image resizing
if ($imgMaxWidth > 0) {
$thumb = new Thumbnail($uploadfile);
if ($thumb->getCurrentWidth() > $imgMaxWidth) {
$thumb->resize($imgMaxWidth, $thumb->getCurrentHeight());
}
$thumb->save($uploadfile);
$thumb->destruct();
}
}
}
$this->images = $images;
}
示例10: updateChannel
/**
* Outputs frontpage HTML
*
* @param string $option the joomla component name
* @param array $rows array of video data
* @param array $rowsfeatured array of featured video data
* @param object $pageNav page navigation object
* @param int $total the total video count
* @return Nothing
*/
function updateChannel()
{
global $Itemid, $mainframe;
$db = & JFactory::getDBO();
$my = & JFactory::getUser();
$c = hwd_vs_Config::get_instance();
$id = JRequest::getInt( 'id', 0 );
$row = new hwdvids_channel($db);
$row->load( $id );
if ($row->user_id != $my->id)
{
$mainframe->enqueueMessage(_HWDVIDS_ALERT_NOPERM);
$mainframe->redirect( JRoute::_("index.php?option=com_hwdvideoshare&Itemid=$Itemid&task=channels") );
}
$channel_description = Jrequest::getVar( 'channel_description', _HWDVS_UNKNOWN );
$_POST['channel_description'] = $channel_description;
$file_name_org = $_FILES['thumbnail_file']['name'];
$file_ext = substr($file_name_org, strrpos($file_name_org, '.') + 1);
$thumbnail = '';
if ($_FILES['thumbnail_file']['tmp_name'] !== "")
{
$videocode = "ch-".$row->id;
$base_Dir = JPATH_SITE.DS.'hwdvideos'.DS.'thumbs'.DS;
$upload_result = hwd_vs_tools::uploadFile("thumbnail_file", $videocode, $base_Dir, 2, "jpg,jpeg,png,gif", 1);
if ($upload_result[0] == "0")
{
$msg = $upload_result[1];
$mainframe->enqueueMessage($msg);
$mainframe->redirect( JURI::root( true ) . '/index.php?option=com_hwdvideoshare&Itemid='.$Itemid.'&task=editvideo&video_id='.$row->id );
}
else
{
require_once(JPATH_SITE.DS.'administrator'.DS.'components'.DS.'com_hwdvideoshare'.DS.'libraries'.DS.'thumbnail.inc.php');
$thumb_path = JPATH_SITE.DS.'hwdvideos'.DS.'thumbs'.DS.$videocode.'.'.$file_ext;
$twidth_s = round($c->con_thumb_n);
$theight_s = round($c->con_thumb_n*$c->tar_fb);
list($width, $height, $type, $attr) = @getimagesize($thumb_path);
$ratio = $width/$height;
//echo $thumb_path."<br />".$ratio."<br />".$width."<br />".$height."<br />".$c->tar_fb."<br />".$twidth_s."<br />".$theight_s;
if ($ratio > 1)
{
$resized = new Thumbnail($thumb_path);
$resized->resize($twidth_s,$twidth_s);
$resized->cropFromCenter($twidth_s, $theight_s);
$resized->save($thumb_path);
$resized->destruct();
}
else
{
$resized = new Thumbnail($thumb_path);
$resized->resize($twidth_s,1000);
$resized->cropFromCenter($twidth_s, $theight_s);
$resized->save($thumb_path);
$resized->destruct();
}
}
$_POST['channel_thumbnail'] = $videocode.'.'.$file_ext;
}
else
{
//echo "No thumbnail uploaded";
}
// bind it to the table
if (!$row -> bind($_POST)) {
echo "<script> alert('"
.$row -> getError()
."'); window.history.go(-1); </script>\n";
exit();
}
// store it in the db
if (!$row -> store()) {
echo "<script> alert('"
.$row -> getError()
."'); window.history.go(-1); </script>\n";
exit();
//.........这里部分代码省略.........