本文整理汇总了PHP中Varien_Image::keepTransparency方法的典型用法代码示例。如果您正苦于以下问题:PHP Varien_Image::keepTransparency方法的具体用法?PHP Varien_Image::keepTransparency怎么用?PHP Varien_Image::keepTransparency使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Varien_Image
的用法示例。
在下文中一共展示了Varien_Image::keepTransparency方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getProfileImage
public function getProfileImage()
{
if (isset($this->_seller['sstech_profileimage']) && ($_file_name = $this->_seller['sstech_profileimage'])) {
$_media_dir = Mage::getBaseDir('media') . DS . 'customer' . DS;
// Here i create a resize folder. for upload new category image
$cache_dir = $_media_dir . 'resize' . DS;
if (file_exists($cache_dir . $_file_name)) {
$img = Mage::getBaseUrl('media') . 'customer' . DS . 'resize' . $_file_name;
} elseif (file_exists($_media_dir . $_file_name)) {
if (!is_dir($cache_dir)) {
mkdir($cache_dir);
}
$_image = new Varien_Image($_media_dir . $_file_name);
$_image->constrainOnly(false);
$_image->keepAspectRatio(true);
$_image->keepFrame(true);
$_image->keepTransparency(true);
$_image->backgroundColor(array(255, 255, 255));
$_image->resize(300, null);
// change image height, width
$_image->save($cache_dir . $_file_name);
$img = Mage::getBaseUrl('media') . 'customer' . DS . 'resize' . $_file_name;
}
}
if (!isset($img)) {
$img = Mage::getBaseUrl('media') . "default_user.jpg";
}
return $img;
}
示例2: injectImage
/**
* Move the image in the fixture under magento media
* directory and save a cache version of it.
*
* @param string $image
* @return string
*/
protected function injectImage($image)
{
if (empty($image)) {
return '';
}
$baseImage = basename($image);
$imageName = Mage::getBaseDir('media') . DS . 'catalog' . DS . 'product' . DS . $image;
$cacheImage = Mage::getBaseDir('media') . DS . 'catalog' . DS . 'product' . DS . 'resize' . DS . $baseImage;
$fixtureImage = __DIR__ . DS . 'ProductsTest' . DS . 'fixtures' . DS . $baseImage;
// @see Varien_Image_Adapter_Gd2::_isMemoryLimitReached
// There's a bug in Varien_Image_Adapter_Gd2::open that causes
// an exception to be thrown when the PHP built in method
// ini_get('memory_limit') return -1, which imply no limit.
// I'm guessing that the right environment setting are not set when
// running phpunit with EcomDev.
if (ini_get('memory_limit') <= 0) {
ini_set('memory_limit', '512M');
}
$productMediaDir = str_replace($baseImage, '', $imageName);
@mkdir($productMediaDir, 0777, true);
// if the file already exist remove it.
@unlink($imageName);
// Copy the image file in our fixture directory into
// Magento product media directory.
@copy($fixtureImage, $imageName);
$image = new Varien_Image($imageName);
$image->constrainOnly(true);
$image->keepAspectRatio(false);
$image->keepFrame(false);
$image->keepTransparency(true);
$image->resize(100, 100);
$image->save($cacheImage);
return $imageName;
}
示例3: resizeCategoryImage
public function resizeCategoryImage($file_name, $resize = 550)
{
$file_name;
$resize_dir = 'resized-' . $resize;
$category_dir = 'catalog' . DS . 'category';
$category_path = $_SERVER['DOCUMENT_ROOT'] . DS . 'media' . DS . $category_dir;
$full_resized_url_path = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA) . $category_dir . DS . $resize_dir . DS;
if (file_exists($category_path . DS . $resize_dir . DS . $file_name)) {
return $full_resized_url_path . $file_name;
}
if (file_exists($category_path . DS . $file_name)) {
if (!is_dir($category_path . DS . $resize_dir)) {
mkdir($category_path . DS . $resize_dir);
}
$_image = new Varien_Image($category_path . DS . $file_name);
$_image->constrainOnly(true);
$_image->keepAspectRatio(false);
$_image->keepFrame(false);
$_image->keepTransparency(true);
$_image->resize($resize);
$_image->save($category_path . DS . $resize_dir . DS . $file_name);
$catImg = $full_resized_url_path . $file_name;
}
return $catImg;
}
示例4: _entityImageUrl
protected function _entityImageUrl(Varien_Object $entity, $width, $height, $entityField)
{
$entityPath = $entity->getData($entityField);
if (!$entityPath) {
return null;
}
$dstPath = array('cache', Mage::app()->getStore()->getId(), $entityField, $width . 'x' . $height, $entityPath);
$dstFile = $this->getBaseMediaPath() . DS . implode(DS, $dstPath);
if (!file_exists($dstFile)) {
$srcPath = array($entityPath);
$srcFile = $this->getBaseMediaPath() . DS . implode(DS, $srcPath);
if (!file_exists($srcFile)) {
return null;
}
$image = new Varien_Image($srcFile);
$image->keepAspectRatio(true);
$image->keepTransparency(true);
$image->keepFrame(true);
$image->constrainOnly(false);
$image->backgroundColor(array(255, 255, 255));
$image->resize($width, $height);
$image->save($dstFile);
}
return $this->getBaseMediaUrl() . '/' . implode('/', $dstPath);
}
示例5: getCatResizedImage
public function getCatResizedImage($cat, $width, $height = null, $quality = 100)
{
if (!$cat->getThumbnail()) {
return false;
}
$imageUrl = Mage::getBaseDir('media') . DS . "catalog" . DS . "category" . DS . $cat->getThumbnail();
if (!is_file($imageUrl)) {
return false;
}
$imageResized = Mage::getBaseDir('media') . DS . "catalog" . DS . "category" . DS . "cache" . DS . "cat_resized" . DS . $cat->getThumbnail();
// Because clean Image cache function works in this folder only
//if (! file_exists ( $imageResized ) && file_exists ( $imageUrl ) || file_exists($imageUrl) && filemtime($imageUrl) > filemtime($imageResized)) :
$imageObj = new Varien_Image($imageUrl);
$imageObj->constrainOnly(true);
$imageObj->keepAspectRatio(true);
$imageObj->keepFrame(true);
// ep
$imageObj->quality($quality);
$imageObj->keepTransparency(true);
// png
$imageObj->backgroundColor(array(255, 255, 255));
$imageObj->resize($width, $height);
$imageObj->save($imageResized);
//endif;
if (file_exists($imageResized)) {
return Mage::getBaseUrl('media') . "/catalog/category/cache/cat_resized/" . $cat->getThumbnail();
} else {
return $this->getImageUrl();
}
}
示例6: resizeImg
public function resizeImg($fileName, $width = '', $height = null)
{
$imageURL = $this->getBaseTmpMediaUrl() . $fileName;
$imagePath = $this->getBaseTmpMediaPath() . str_replace('/', DS, $fileName);
$extra = $width . 'x' . $height;
$newPath = $this->getBaseTmpMediaPath() . "cache" . DS . $extra . str_replace('/', DS, $fileName);
//if width empty then return original size image's URL
if ($width != '' && $height != '') {
//if image has already resized then just return URL
if (file_exists($imagePath) && is_file($imagePath) && !file_exists($newPath)) {
$imageObj = new Varien_Image($imagePath);
$imageObj->constrainOnly(TRUE);
$imageObj->keepAspectRatio(FALSE);
$imageObj->keepTransparency(true);
$imageObj->keepFrame(FALSE);
$imageObj->quality(100);
//$width, $height - sizes you need (Note: when keepAspectRatio(TRUE), height would be ignored)
$imageObj->resize($width, $height);
$imageObj->save($newPath);
}
$resizedURL = $this->getBaseTmpMediaUrl() . "cache" . '/' . $extra . '/' . $fileName;
} else {
$resizedURL = $imageURL;
}
return $resizedURL;
}
示例7: resizeImg
/**
* Resize image
*
* @param string $fileName
* @param int $width
* @param int $height
* @return string Resized image url
*/
public function resizeImg($fileName, $width, $height = '')
{
if (!$height) {
$height = $width;
}
$thumbDir = self::IMAGE_THUMB_DIR;
$resizeDir = $thumbDir . "/resized_{$width}x{$height}";
$ioFile = new Varien_Io_File();
$ioFile->checkandcreatefolder(Mage::getBaseDir(Mage_Core_Model_Store::URL_TYPE_MEDIA) . DS . $resizeDir);
$imageParts = explode('/', $fileName);
$imageFile = end($imageParts);
$folderURL = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA);
$imageURL = $folderURL . $fileName;
$basePath = Mage::getBaseDir(Mage_Core_Model_Store::URL_TYPE_MEDIA) . DS . $fileName;
$newPath = Mage::getBaseDir(Mage_Core_Model_Store::URL_TYPE_MEDIA) . DS . $resizeDir . DS . $imageFile;
if ($width != '') {
if (file_exists($basePath) && is_file($basePath) && !file_exists($newPath)) {
$imageObj = new Varien_Image($basePath);
$imageObj->constrainOnly(TRUE);
$imageObj->keepAspectRatio(TRUE);
$imageObj->keepFrame(FALSE);
$imageObj->keepTransparency(TRUE);
//$imageObj->backgroundColor(array(255,255,255));
$imageObj->resize($width, $height);
$imageObj->save($newPath);
}
$resizedURL = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA) . $resizeDir . '/' . $imageFile;
} else {
$resizedURL = $imageURL;
}
return $resizedURL;
}
示例8: resize
public function resize($imageUrl, $width, $height)
{
if (!file_exists(Mage::getBaseDir('media') . DS . "catalog" . DS . "category" . DS . "resized")) {
mkdir(Mage::getBaseDir('media') . DS . "catalog" . DS . "category" . DS . "resized", 0777, true);
}
$imageName = substr(strrchr($imageUrl, "/"), 1);
if ('255,255,255' !== $this->getBackgroundColor(true)) {
$imageName = $width . 'x' . $height . '/' . $this->getBackgroundColor(true) . '/' . $imageName;
} else {
$imageName = $width . 'x' . $height . '/' . $imageName;
}
$imageResized = Mage::getBaseDir('media') . DS . "catalog" . DS . "category" . DS . "resized" . DS . $imageName;
$imagePath = str_replace(Mage::getBaseUrl('media'), 'media/', $imageUrl);
$imagePath = Mage::getBaseDir() . DS . str_replace("/", DS, $imagePath);
if (!file_exists($imageResized) && file_exists($imagePath)) {
$imageObj = new Varien_Image($imagePath);
$imageObj->constrainOnly(true);
$imageObj->keepAspectRatio(true);
$imageObj->keepFrame(true);
$imageObj->keepTransparency(true);
$imageObj->backgroundColor($this->getBackgroundColor());
$imageObj->resize($width, $height);
$imageObj->save($imageResized);
}
$imageUrl = Mage::getBaseUrl('media') . "catalog/category/resized/" . $imageName;
return $imageUrl;
}
示例9: getCategoryImage
public function getCategoryImage($category = null, $width = 300, $height = 300, $image_type = "thumbnail")
{
if (empty($category) && !is_object($category)) {
return "";
}
if ($image_type == "thumbnail") {
$_file_name = $category->getThumbnail();
} else {
$_file_name = $category->getImage();
}
$_media_dir = Mage::getBaseDir('media') . DS . 'catalog' . DS . 'category' . DS;
$cache_dir = $_media_dir . 'cache' . DS;
if ($_file_name) {
if (file_exists($cache_dir . $_file_name)) {
return Mage::getBaseUrl('media') . '/catalog/category/cache/' . $_file_name;
} elseif (file_exists($_media_dir . $_file_name)) {
if (!is_dir($cache_dir)) {
mkdir($cache_dir);
}
$_image = new Varien_Image($_media_dir . $_file_name);
$_image->constrainOnly(true);
$_image->keepAspectRatio(true);
$_image->keepTransparency(true);
$_image->resize((int) $width, (int) $height);
$_image->save($cache_dir . $_file_name);
return Mage::getBaseUrl('media') . '/catalog/category/cache/' . $_file_name;
}
}
return "";
}
示例10: resizeImage
public function resizeImage($image, $type = "l", $width, $height, $storeid = null)
{
$image = str_replace("/", DS, $image);
$_imageUrl = Mage::getBaseDir('media') . DS . $image;
if ($storeid === null) {
$storeid = Mage::app()->getStore()->getId();
}
if (!$storeid) {
$imageResized = Mage::getBaseDir('media') . DS . "resized" . DS . $type . DS . $image;
} else {
$image2 = str_replace("blog" . DS, "", $image);
$image = "blog" . DS . $storeid . DS . $image2;
$imageResized = Mage::getBaseDir('media') . DS . "resized" . DS . $type . DS . "blog" . DS . $storeid . DS . $image2;
}
if (!file_exists($imageResized) && file_exists($_imageUrl)) {
$imageObj = new Varien_Image($_imageUrl);
$imageObj->quality(100);
$imageObj->constrainOnly(true);
$imageObj->keepAspectRatio(false);
$imageObj->keepFrame(false);
$imageObj->keepTransparency(true);
$imageObj->resize($width, $height);
$imageObj->save($imageResized);
}
return Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA) . 'resized/' . "{$type}/" . str_replace(DS, "/", $image);
}
示例11: resizeImg
public function resizeImg($fileName, $width, $height = null)
{
$baseURL = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA);
$imageURL = $baseURL . '/' . 'magiccart/blog' . '/' . $fileName;
$basePath = Mage::getBaseDir('media');
$imagePath = $basePath . DS . 'magiccart/blog/' . str_replace('/', DS, $fileName);
$extra = $width . 'x' . $height;
$newPath = Mage::getBaseDir('media') . DS . 'magiccart/blog' . DS . "cache" . DS . $extra . '/' . str_replace('/', DS, $fileName);
//if width empty then return original size image's URL
if ($width != '' && $height != '') {
//if image has already cache then just return URL
if (file_exists($imagePath) && is_file($imagePath) && !file_exists($newPath)) {
$imageObj = new Varien_Image($imagePath);
$imageObj->constrainOnly(TRUE);
$imageObj->keepAspectRatio(FALSE);
$imageObj->keepTransparency(true);
$imageObj->keepFrame(FALSE);
$imageObj->quality(100);
//$width, $height - sizes you need (Note: when keepAspectRatio(TRUE), height would be ignored)
$imageObj->resize($width, $height);
$imageObj->save($newPath);
}
$cacheURL = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA) . "magiccart/blog" . '/' . "cache" . '/' . $extra . '/' . $fileName;
} else {
$cacheURL = $imageURL;
}
return $cacheURL;
}
示例12: getLableImage
public function getLableImage($fileName)
{
//$fileName = Mage::getStoreConfig('productlable/sample/newimage');
$width = 50;
$height = 50;
$folderURL = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA);
$imageURL = $folderURL . $fileName;
$basePath = Mage::getBaseDir(Mage_Core_Model_Store::URL_TYPE_MEDIA) . DS . 'theme' . DS . $fileName;
$newPath = Mage::getBaseDir(Mage_Core_Model_Store::URL_TYPE_MEDIA) . DS . "resized" . DS . $fileName;
//if width empty then return original size image's URL
if ($width != '') {
//if image has already resized then just return URL
if (file_exists($basePath) && is_file($basePath) && !file_exists($newPath)) {
$imageObj = new Varien_Image($basePath);
$imageObj->constrainOnly(TRUE);
$imageObj->keepAspectRatio(FALSE);
$imageObj->keepFrame(FALSE);
$imageObj->keepTransparency(TRUE);
$imageObj->resize($width, $height);
$imageObj->save($newPath);
}
$resizedURL = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA) . "resized/" . $fileName;
} else {
$resizedURL = $imageURL;
}
return $resizedURL;
}
示例13: resize
public function resize($width, $height)
{
if (!($imageUrl = $this->getImageUrl())) {
return '';
}
$dir = Mage::getBaseDir('media') . DS . "testimonials" . DS . "pictures" . DS . "resized";
if (!file_exists($dir)) {
mkdir($dir, 0777);
}
$imageName = substr(strrchr($imageUrl, "/"), 1);
$imageName = $width . '_' . $height . '_' . $imageName;
$imageResized = $dir . DS . $imageName;
$imagePath = str_replace(Mage::getBaseUrl('media'), 'media/', $imageUrl);
$imagePath = Mage::getBaseDir() . DS . str_replace("/", DS, $imagePath);
if (!file_exists($imageResized) && file_exists($imagePath)) {
$imageObj = new Varien_Image($imagePath);
$imageObj->constrainOnly(true);
$imageObj->keepAspectRatio(true);
$imageObj->keepFrame(false);
$imageObj->keepTransparency(true);
$imageObj->resize($width, $height);
$imageObj->save($imageResized);
}
$imageUrl = Mage::getBaseUrl('media') . "testimonials/pictures/resized/" . $imageName;
return $imageUrl;
}
示例14: getResizedUrl
public function getResizedUrl($imgUrl, $x, $y = NULL)
{
$imgPath = $this->splitImageValue($imgUrl, "path");
$imgName = $this->splitImageValue($imgUrl, "name");
/**
* Path with Directory Seperator
*/
$imgPath = str_replace("/", DS, $imgPath);
/**
* Absolute full path of Image
*/
$imgPathFull = Mage::getBaseDir("media") . DS . $imgPath . DS . $imgName;
/**
* If Y is not set set it to as X
*/
$widht = $x;
$y ? $height = $y : ($height = $x);
/**
*
* Resize folder is widthXheight
*/
$resizeFolder = $widht . "X" . $height;
/**
* Image resized path will then be
*/
$imageResizedPath = Mage::getBaseDir("media") . DS . $imgPath . DS . $resizeFolder . DS . $imgName;
/**
* First check in cache i.e image resized path
* If not in cache then create image of the width=X and height = Y
*/
if (!file_exists($imageResizedPath) && file_exists($imgPathFull)) {
$imageObj = new Varien_Image($imgPathFull);
$imageObj->constrainOnly(true);
// image picture will not be bigger, than it was
$imageObj->keepAspectRatio(true);
// image picture width/height will not be distorted
$imageObj->keepFrame(true);
// image will have dimensions, set in $width/$height
$imageObj->keepTransparency(true);
$imageObj->backgroundColor(array(255, 255, 255));
$imageObj->resize($widht, $height);
$imageObj->save($imageResizedPath);
}
/**
* Else image is in cache replace the Image Path with / for http path.
*/
$imgUrl = str_replace(DS, "/", $imgPath);
/**
* Return full http path of the image
*/
return Mage::getBaseUrl("media") . $imgUrl . "/" . $resizeFolder . "/" . $imgName;
}
示例15: resize
/**
* if there's no thumb for the image, we make it
*
* @param string $imageName
* @param int $size
*
* @return string
*/
public function resize($imageName, $size)
{
$helper = Mage::helper('adjicon');
$fileName = $helper->getThumbnailFileName($size, $imageName);
if (!file_exists($this->_imagePath . $fileName)) {
$image = new Varien_Image($this->_imagePath . $imageName);
$image->keepFrame(true);
$image->keepAspectRatio(true);
$image->keepTransparency(true);
$image->backgroundColor(array(255, 255, 255));
$image->resize($size);
$image->save(null, $fileName);
}
return $fileName;
}