本文整理汇总了PHP中ImageSx函数的典型用法代码示例。如果您正苦于以下问题:PHP ImageSx函数的具体用法?PHP ImageSx怎么用?PHP ImageSx使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了ImageSx函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: resizeImage
function resizeImage($image, $maxHeight)
{
$width = ImageSx($image);
$height = ImageSy($image);
if ($height > $maxHeight) {
$ratio = $maxHeight / $height;
$x = $width * $ratio;
$y = $maxHeight;
} else {
$x = $width;
$y = $height;
}
$dst = ImageCreate($x, $y);
ImageCopyResized($dst, $image, 0, 0, 0, 0, $x, $y, $width, $height);
return $dst;
}
示例2: process
function process()
{
global $CONFIG;
$matches = array();
if (!preg_match("/^([0-9a-zA-Z]+)\\.png\$/", $this->file, $matches)) {
error_exit("Invalid image request for {$this->file}");
}
$code = $matches[1];
$basepath = trim($CONFIG['paths']['base_url'], '/') . '/image/pins';
$basefile = trim($CONFIG['paths']['file_path'], '/') . '/image/pins';
$localfile = "{$basefile}/{$code}.png";
if (file_exists($localfile)) {
header("Location: http://{$_SERVER['HTTP_HOST']}/{$basepath}/{$code}.png");
} else {
if (!function_exists('ImageCreateFromPNG')) {
header("Location: http://{$_SERVER['HTTP_HOST']}/{$basepath}/blank-marker.png");
} else {
$font = 'ttf-bitstream-vera/Vera';
$size = 6;
if (strlen($code) < 3) {
# Bigger image for number-only pins
$size = 8;
}
$im = ImageCreateFromPNG("{$basefile}/blank-marker.png");
imageSaveAlpha($im, true);
$tsize = ImageTTFBBox($size, 0, $font, $code);
$textbg = ImageColorAllocate($im, 255, 119, 207);
$black = ImageColorAllocate($im, 0, 0, 0);
$dx = abs($tsize[2] - $tsize[0]);
$dy = abs($tsize[5] - $tsize[3]);
$x = (ImageSx($im) - $dx) / 2 + 1;
$y = (ImageSy($im) - $dy) / 2;
ImageTTFText($im, $size, 0, $x, $y, $black, $font, $code);
header('Content-Type: image/png');
ImagePNG($im);
ImagePNG($im, $localfile);
ImageDestroy($im);
}
}
exit;
}
示例3: CreatThumb
public function CreatThumb($filetype, $tsrc, $dest, $n_width, $n_height)
{
if ($filetype == "gif") {
$im = ImageCreateFromGIF($dest);
// Original picture width is stored
$width = ImageSx($im);
// Original picture height is stored
$height = ImageSy($im);
$newimage = imagecreatetruecolor($n_width, $n_height);
imageCopyResized($newimage, $im, 0, 0, 0, 0, $n_width, $n_height, $width, $height);
ImageGIF($newimage, $tsrc);
chmod("{$tsrc}", 0755);
}
if ($filetype == "jpg") {
$im = ImageCreateFromJPEG($dest);
// Original picture width is stored
$width = ImageSx($im);
// Original picture height is stored
$height = ImageSy($im);
$newimage = imagecreatetruecolor($n_width, $n_height);
imageCopyResized($newimage, $im, 0, 0, 0, 0, $n_width, $n_height, $width, $height);
ImageJpeg($newimage, $tsrc);
chmod("{$tsrc}", 0755);
}
if ($filetype == "png") {
$im = ImageCreateFromPNG($dest);
// Original picture width is stored
$width = ImageSx($im);
// Original picture height is stored
$height = ImageSy($im);
$newimage = imagecreatetruecolor($n_width, $n_height);
imageCopyResized($newimage, $im, 0, 0, 0, 0, $n_width, $n_height, $width, $height);
imagepng($newimage, $tsrc);
chmod("{$tsrc}", 0755);
}
}
示例4: add_image
function add_image($thread, $id, $image, $absolute_path, $db, $imagenumber)
{
// get max_imagesize from parameters
$params = JComponentHelper::getParams('com_discussions');
$max_image_size = $params->get('maxImageSize', '209715200');
// 200 KByte default
$discussions_folder = $absolute_path . "/images/discussions/";
if (!is_dir($discussions_folder)) {
mkdir($discussions_folder);
}
$thread_folder = $absolute_path . "/images/discussions/posts/";
if (!is_dir($thread_folder)) {
mkdir($thread_folder);
}
$image_folder = $absolute_path . "/images/discussions/posts/" . $thread . "/";
if (!is_dir($image_folder)) {
mkdir($image_folder);
}
$image_too_big = 0;
if (isset($_FILES[$image])) {
if ($_FILES[$image]['size'] > $max_image_size) {
$image_too_big = 1;
}
}
if ($image_too_big == 1) {
echo "<font color='#CC0000'>";
echo JText::_('COFI_UPLOADED_IMAGE_TOO_BIG');
echo "</font>";
echo "<br>";
echo "<br>";
} else {
$af_size = GetImageSize($_FILES[$image]['tmp_name']);
switch ($af_size[2]) {
case 1:
$thispicext = 'gif';
break;
case 2:
$thispicext = 'jpg';
break;
case 3:
$thispicext = 'png';
break;
}
// if ( $af_size[2] >= 1 && $af_size[2] <= 3) { // 1=GIF, 2=JPG or 3=PNG
if ($af_size[2] >= 2 && $af_size[2] <= 3) {
// 2=JPG or 3=PNG
chmod($_FILES[$image]['tmp_name'], 0644);
// 1. if directory ./images/USERID does not exist, create it
// 2. create the subdirs for ORIGINAL, LARGE (128) and SMALL(32)
if (!is_dir($image_folder . $id)) {
mkdir($image_folder . $id);
mkdir($image_folder . $id . "/original");
// ORIGINAL
mkdir($image_folder . $id . "/large");
// LARGE (800)
mkdir($image_folder . $id . "/small");
// SMALL (128)
}
$original_image = $image_folder . $id . "/original/" . $id . "_" . $imagenumber . "." . $thispicext;
$large_image = $image_folder . $id . "/large/" . $id . "_" . $imagenumber . "." . $thispicext;
$small_image = $image_folder . $id . "/small/" . $id . "_" . $imagenumber . "." . $thispicext;
// copy original image to folder "original"
move_uploaded_file($_FILES[$image]['tmp_name'], $original_image);
// create "large" image 800px
switch ($af_size[2]) {
case 1:
$src = ImageCreateFromGif($original_image);
break;
case 2:
$src = ImageCreateFromJpeg($original_image);
break;
case 3:
$src = ImageCreateFromPng($original_image);
break;
}
$width_before = ImageSx($src);
$height_before = ImageSy($src);
if ($width_before >= $height_before) {
$width_new = min(800, $width_before);
$scale = $width_before / $height_before;
$height_new = round($width_new / $scale);
} else {
$height_new = min(600, $height_before);
$scale = $height_before / $width_before;
$width_new = round($height_new / $scale);
}
$dst = ImageCreateTrueColor($width_new, $height_new);
// GD Lib 2
ImageCopyResampled($dst, $src, 0, 0, 0, 0, $width_new, $height_new, $width_before, $height_before);
switch ($af_size[2]) {
case 1:
ImageGIF($dst, $large_image);
break;
case 2:
ImageJPEG($dst, $large_image);
break;
case 3:
ImagePNG($dst, $large_image);
break;
}
//.........这里部分代码省略.........
示例5: create_image
function create_image()
{
// To send to print sizes, per original asset.
$sizes['print']['w'] = 5315;
$sizes['print']['h'] = 3780;
// Preview size
$sizes['preview']['w'] = 786;
$sizes['preview']['h'] = 588;
// Create print size document, so all additional components are in correct position
$printCanvas = imagecreatetruecolor($sizes['print']['w'], $sizes['print']['h']);
// Colour references, white for foil blocked text (won't be on final print) and black for date and names.
$colours['white'] = imagecolorallocate($printCanvas, 255, 255, 255);
$colours['black'] = imagecolorallocate($printCanvas, 0, 0, 0);
// Initially start with black image
imagefill($printCanvas, 0, 0, $colours['black']);
// Load in print asset
$printSrc = imagecreatefromjpeg('final.jpg');
// Add print asset to current canvas
imagecopymerge($printCanvas, $printSrc, 0, 0, 0, 0, $sizes['print']['w'], $sizes['print']['h'], 100);
// Once merged, destroy source image
imagedestroy($printSrc);
// Add in foil blocked text if in preview mode
if (isset($_GET['preview'])) {
imagettftext($printCanvas, 300, 0, 1865, 1225, $colours['white'], '28DaysLater.ttf', 'Established');
imagettftext($printCanvas, 200, 0, 2418, 2325, $colours['white'], '28DaysLater.ttf', isset($_GET['title']) ? $_GET['title'] : 'Title here');
}
// If we have a valid information, set it, else just change to "Data here"
if (isset($_GET['date'])) {
$date = $_GET['date'];
} else {
$date = 'Date here';
}
if (isset($_GET['names'])) {
$names = $_GET['names'];
} else {
$names = 'Names here';
}
if (isset($_GET['image'])) {
$image = $_GET['image'];
} else {
$image = 'http://lorempixel.com/1280/1120/people/Sample Image';
}
// Print names onto the canvas
imagettftext($printCanvas, 120, 0, 2418, 2490, $colours['black'], 'Rockwell.ttf', $names);
// Print date onto the canvas, make the end of it match up to the end of "Established" above
$type_space = imagettfbbox(120, 0, 'Rockwell.ttf', $date);
imagettftext($printCanvas, 120, 0, 3750 - $type_space[4], 1360, $colours['black'], 'Rockwell.ttf', $date);
// Ascertain if this is a external image, and if not, add on the current server address
if (substr($image, 0, 4) != 'http') {
$image = 'http://' . $_SERVER['SERVER_NAME'] . '/' . $image;
}
// Create image using the supplied image, and log the size
$imageSrc = imagecreatefromjpeg($image);
$sizes['image']['w'] = ImageSx($imageSrc);
$sizes['image']['h'] = ImageSy($imageSrc);
if (1280 - $sizes['image']['w'] < 1120 - $sizes['image']['h']) {
$s = 1120 / $sizes['image']['h'];
$sizes['imageSrc']['w'] = round($sizes['image']['w'] * $s);
$sizes['imageSrc']['h'] = round($sizes['image']['h'] * $s);
} else {
$s = 1280 / $sizes['image']['w'];
$sizes['imageSrc']['w'] = round($sizes['image']['w'] * $s);
$sizes['imageSrc']['h'] = round($sizes['image']['h'] * $s);
}
// Create canvas for the supplied image to sit in
$imageCanvas = ImageCreateTrueColor(1280, 1120);
// Adjust the image position if the width or height is too big, to place the image in the centre
if ($sizes['imageSrc']['w'] > 1280) {
$newX = -(($sizes['imageSrc']['w'] - 1280) / 2);
} else {
$newX = 0;
}
if ($sizes['imageSrc']['h'] > 1120) {
$newY = -(($sizes['imageSrc']['h'] - 1120) / 2);
} else {
$newY = 0;
}
// Copy image source onto the canvas
imagecopyresized($imageCanvas, $imageSrc, $newX, $newY, 0, 0, $sizes['imageSrc']['w'], $sizes['imageSrc']['h'], $sizes['image']['w'], $sizes['image']['h']);
// Prep the image for rotation
$canvasTrans = imagecolorallocatealpha($imageCanvas, 0, 0, 0, 127);
// Rotate image, and log new size
$imageCanvas = imagerotate($imageCanvas, 5, $canvasTrans);
$sizes['rotated-image']['w'] = ImageSx($imageCanvas);
$sizes['rotated-image']['h'] = ImageSy($imageCanvas);
// Add the rotated supplied image onto the print canvas
ImageCopyResampled($printCanvas, $imageCanvas, 870, 1650, 0, 0, $sizes['rotated-image']['w'], $sizes['rotated-image']['h'], $sizes['rotated-image']['w'], $sizes['rotated-image']['h']);
// Once copied, destroy image canvas, and source image
imagedestroy($imageSrc);
imagedestroy($imageCanvas);
// If generating preview, adjust size of output
if (isset($_GET['preview'])) {
// Calculate how the aspect ratio should be calculated
if ($sizes['preview']['w'] - $sizes['print']['w'] > $sizes['preview']['h'] - $sizes['print']['h']) {
$s = $sizes['preview']['h'] / $sizes['print']['h'];
$nw = round($sizes['print']['w'] * $s);
$nh = round($sizes['print']['h'] * $s);
} else {
$s = $sizes['preview']['w'] / $sizes['print']['w'];
$nw = round($sizes['print']['w'] * $s);
//.........这里部分代码省略.........
示例6: md5
} else {
// return the finished image as PNG
if (!headers_sent()) {
Safe::header("Content-type: image/png");
}
// enable 30-minute caching (30*60 = 1800), even through https, to help IE6 on download
http::expire(1800);
// strong validator
$etag = '"' . md5($item['geo_place_name'] . $item['longitude'] . $item['latitude']) . '"';
// manage web cache
if (http::validate(NULL, $etag)) {
return;
}
// load the main image
$image = ImageCreateFromJpeg($context['path_to_root'] . 'locations/images/earth_310.jpg');
$width = ImageSx($image);
$height = ImageSy($image);
// ensure we have split coordinates
if (!$item['latitude'] || !$item['longitude']) {
list($item['latitude'], $item['longitude']) = preg_split('/[\\s,;]+/', $item['geo_position']);
}
// scale coordinates
$x = round(($item['longitude'] + 180) * ($width / 360));
$y = round(($item['latitude'] * -1 + 90) * ($height / 180));
// mark the point on the map using a red 4 pixel rectangle
$red = ImageColorAllocate($image, 255, 0, 0);
ImageFilledRectangle($image, $x - 2, $y - 2, $x + 2, $y + 2, $red);
// actual transmission except on a HEAD request
if (isset($_SERVER['REQUEST_METHOD']) && $_SERVER['REQUEST_METHOD'] != 'HEAD') {
ImagePng($image);
}
示例7: mb_convert_encoding
$fn2 = mb_convert_encoding($fn, $file_char_code, 'auto');
$path_parts = pathinfo($fn2);
//echo $path_parts['extension'];
if ($path_parts['extension'] == "JPG" || $path_parts['extension'] == "jpg") {
//JPEGファイルを読み込む
$image = ImageCreateFromJPEG($fn2);
} else {
if ($path_parts['extension'] == "png") {
//$fn2=mb_convert_encoding($fn,$file_char_code,'auto');
$image = imagecreatefrompng($fn2);
//imagecreatefromstring(file_get_contents($fn));
}
}
//echo $info;
// 元画像のファイルサイズを取得
$original_width = ImageSx($image);
$original_height = ImageSy($image);
//元画像の比率を計算し、高さを設定
$proportion = $original_width / $original_height;
$height = $width / $proportion;
//高さが幅より大きい場合は、高さを幅に合わせ、横幅を縮小
if ($proportion < 1) {
$height = $width;
$width = $width * $proportion;
}
$new_image = ImageCreateTrueColor($width, $height);
// 画像作成
// 元画像から再サンプリング
ImageCopyResampled($new_image, $image, 0, 0, 0, 0, $width, $height, $original_width, $original_height);
// 保存
ImageJpeg($new_image, '/var/www/lifelog/DATA/boost/s/' . $newstr, 80);
示例8: update_produk
function update_produk()
{
$this->load->library('form_validation');
$this->form_validation->set_rules('nama', 'nama', 'trim|required');
$this->form_validation->set_rules('harga', 'harga', 'trim|required');
$this->form_validation->set_rules('stok', 'stok', 'trim|required');
$this->form_validation->set_rules('dibeli', 'dibeli', 'trim|required');
$this->form_validation->set_rules('username', 'Username', 'trim|required');
$this->form_validation->set_rules('deskripsi', 'deskripsi', 'trim|required');
$this->form_validation->set_error_delimiters('<span style="color:#FF00000">' . '</span>');
$kategori = mysql_real_escape_string($this->input->post('kategori'));
$nama = mysql_real_escape_string($this->input->post('nama'));
$harga = mysql_real_escape_string($this->input->post('harga'));
$stok = mysql_real_escape_string($this->input->post('stok'));
$dibeli = mysql_real_escape_string($this->input->post('dibeli'));
$deskripsi = mysql_real_escape_string($this->input->post('deskripsi'));
$tipe = mysql_real_escape_string($this->input->post('tipe'));
$kode = $this->input->post('id');
$gbr = $this->input->post('gbr');
if (empty($_FILES['imagefile']['name'])) {
$this->produk_model->jalankan_query_manual("update produk set id_kategori='" . $kategori . "', nama_produk='" . $nama . "', harga='" . $harga . "', stok='" . $stok . "', dibeli='" . $dibeli . "', deskripsi='" . $deskripsi . "' where id_produk='" . $kode . "'");
echo "<meta http-equiv='refresh' content='0; url=" . site_url() . "/produk'>";
} else {
if ($_FILES['imagefile']['type'] == "image/jpeg") {
$ori_src = "assets/produk/imgoriginal/" . strtolower(str_replace(' ', '_', $_FILES['imagefile']['name']));
if (move_uploaded_file($_FILES['imagefile']['tmp_name'], $ori_src)) {
chmod("{$ori_src}", 0777);
} else {
echo "Gagal melakukan proses upload file.";
exit;
}
$thumb_src = "assets/produk/" . strtolower(str_replace(' ', '_', $_FILES['imagefile']['name']));
$n_width = 150;
$n_height = 150;
if ($_FILES['imagefile']['type'] == "image/jpeg" || $_FILES['imagefile']['type'] == "image/png" || $_FILES['imagefile']['type'] == "image/gif") {
$im = @ImageCreateFromJPEG($ori_src) or $im = @ImageCreateFromPNG($ori_src) or $im = @ImageCreateFromGIF($ori_src) or $im = false;
// If image is not JPEG, PNG, or GIF
//$im=ImageCreateFromJPEG($ori_src);
$width = ImageSx($im);
// Original picture width is stored
$height = ImageSy($im);
// Original picture height is stored
if ($n_height == 0 && $n_width == 0) {
$n_height = $height;
$n_width = $width;
}
if (!$im) {
echo '<p>Gagal membuat thumnail</p>';
exit;
} else {
$newimage = @imagecreatetruecolor($n_width, $n_height);
@imageCopyResized($newimage, $im, 0, 0, 0, 0, $n_width, $n_height, $width, $height);
@ImageJpeg($newimage, $thumb_src);
chmod("{$thumb_src}", 0777);
}
}
$this->produk_model->jalankan_query_manual("update produk set id_kategori='" . $kategori . "', nama_produk='" . $nama . "', harga='" . $harga . "', stok='" . $stok . "', dibeli='" . $dibeli . "', gbr_kecil='" . $_FILES['imagefile']['name'] . "', gbr_besar='" . $_FILES['imagefile']['name'] . "', deskripsi='" . $deskripsi . "' where id_produk='" . $kode . "'");
$file_kcl = './assets/produk/' . $gbr;
$file_bsr = './assets/produk/imgoriginal/' . $gbr;
unlink($file_kcl);
unlink($file_bsr);
echo "<meta http-equiv='refresh' content='0; url=" . site_url() . "/produk'>";
} else {
echo "Mohon upload foto yang berjenis gambar!";
}
}
}
示例9: imagecreatetruecolor
}
$newimage = imagecreatetruecolor($n_width, $n_height);
imageCopyResized($newimage, $im, 0, 0, 0, 0, $n_width, $n_height, $width, $height);
ImageJPEG($newimage, $tsrc);
}
// $to = "skippy@skippysearch.com"; //
// $subject = "***Skippy Alert***"; //
// $body = "Somebody just used Skippy the Shoe Finder!"; //
// $headers = "From: noreply@skippysearch.com\n"; //
// mail($to,$subject,$body,$headers); //
// Color Select //
$sample = 100;
$pig = 32;
// Get picture height and width //
$im = imagecreatefromjpeg($tsrc);
$width = ImageSx($im);
$height = ImageSy($im);
$winc = round($width / sqrt($sample / ($height / $width)));
$hinc = round($height / sqrt($sample / ($width / $height)));
// Scan the picture //
$tick = 0;
$winc = 3;
$hinc = 3;
$topx = $width * 0.4;
$bottomx = $width * 0.6;
$topy = $height * 0.4;
$bottomy = $height * 0.6;
for ($x = $topx; $x < $bottomx; $x += $winc) {
for ($y = $topy; $y < $bottomy; $y += $hinc) {
$tick = $tick + 1;
$samp[$tick] = ImageColorAt($im, $x, $y);
示例10: ImageRectangle
// Draw a border in destination image
ImageRectangle($imageOut, 0, 0, $outX - 1, $outY - 1, ImageColorAllocate($imageOut, 0, 0, 0));
// Do the work
$nextX = BORDER_LEFT;
$nextY = BORDER_TOP;
foreach ($imageKeys as $imageKey) {
// Fetch the image
print " Fetch image '{$imageKey}'\n";
$image = $s3->get_object(BOOK_BUCKET, $imageKey);
// Convert it to GD format
$imageBits = ImageCreateFromString($image->body);
// Copy it to proper spot in the destination
print " Render image at {$nextX}, {$nextY}\n";
ImageCopy($imageOut, $imageBits, $nextX, $nextY, 0, 0, ImageSx($imageBits), ImageSy($imageBits));
// Draw a border around it
ImageRectangle($imageOut, $nextX, $nextY, $nextX + ImageSx($imageBits), $nextY + ImageSy($imageBits), ImageColorAllocate($imageOut, 0, 0, 0));
// Update position for next image
$nextX += THUMB_SIZE + GAP_SIZE;
if ($nextX + THUMB_SIZE > $outX) {
$nextX = BORDER_LEFT;
$nextY += THUMB_SIZE + GAP_SIZE;
}
}
// Get the bits of the destination image
$imageFileOut = tempnam('/tmp', 'aws') . '.png';
ImagePNG($imageOut, $imageFileOut, 0);
$imageBitsOut = file_get_contents($imageFileOut);
unlink($imageFileOut);
// Store the final image in S3
$key = 'page_image_' . md5($pageTitle) . '.png';
if (uploadObject($s3, BOOK_BUCKET, $key, $imageBitsOut, AmazonS3::ACL_PUBLIC)) {
示例11: addwatermark
function addwatermark($newimage, $wm_loc, $wm_use, $wm_file, $wm_dir)
{
global $roster, $addon;
$widthtn = ImageSx($newimage);
// thumb width is stored
$heightn = ImageSy($newimage);
// thumb width is stored
$wm = $addon['dir'] . $wm_dir . '/' . $wm_file;
if (file_exists($wm)) {
$blah = getimagesize($wm);
$type = $blah['mime'];
$widthwm = $blah[0];
$heightwm = $blah[1];
# this is where we determin where to place the water mark we ar gona
# allways ass a 5pix buffer incase the image uses the hole image size
# 1 = top left - 2 = top right - 3 = bottom left - 4 = bottom right
if ($wm_loc == 1) {
$lox = 8;
$loy = 8;
}
if ($wm_loc == 2) {
$lox = $widthtn - $widthwm - 8;
$loy = 8;
}
if ($wm_loc == 3) {
$lox = 8;
$loy = $heightn - $heightwm - 8;
}
if ($wm_loc == 4) {
$lox = $widthtn - $widthwm - 8;
$loy = $heightn - $heightwm - 8;
}
$this->combineImage($newimage, $wm, __LINE__, $lox, $loy);
} else {
$this->setMessage("watermark " . $wm . " does not exist");
}
return $newimage;
}
示例12: resizeImage
/**
* resize image
*/
function resizeImage($path,$file,$filename,$width,$height,$format) {
/*
use this example for reference
path: C:/xampp/htdocs/vl/onlinefiles/uploads/_usericons/84/,
file: C:/xampp/htdocs/vl/onlinefiles/uploads/_usericons/84/bmwx62.jpg,
filename: bmwx62.jpg,
width: 640,
height: 480,
dir: ,
format: jpg
*/
//thumbnail settings
$tmb_src=0;
$tmb_src=$file;
//thumbnail creation
$image=0;
$imagewidth=0;
$imageheight=0;
switch($format) {
case GIF:
case gif:
$image=ImageCreateFromGIF($tmb_src);
break;
case JPEG:
case JPG:
case jpeg:
case jpg:
$image=ImageCreateFromJPEG($tmb_src);
break;
case PNG:
$image=ImageCreateFromPNG($tmb_src);
break;
}
//parsed dimensions
$tmb_width=0;
$tmb_height=0;
//default dimensions
$imagewidth=ImageSx($image);
$imageheight=ImageSy($image);
$newimage=0;
//do the neccessary resizing on condition that ...
if($imagewidth>$width || $imageheight>$height) {
if ($imagewidth > $imageheight) {
$tmb_width=$width;
$tmb_height=$imageheight*($width/$imagewidth);
} else if($imageheight > $imagewidth) {
$tmb_height=$height;
$tmb_width=$imagewidth*($height/$imageheight);
} else {
$tmb_width=$width;
$tmb_height=$height;
}
} else {
$tmb_width=$imagewidth;
$tmb_height=$imageheight;
}
$newimage=imagecreatetruecolor($tmb_width,$tmb_height);
imageCopyResized($newimage,$image,0,0,0,0,$tmb_width,$tmb_height,$imagewidth,$imageheight);
switch($format) {
case GIF:
case gif:
if(function_exists("imagegif")) {
//Header("Content-type: image/gif");
ImageGIF($newimage,$path.$filename);
chmod($path.$filename,0755);
} else if(function_exists("imagejpeg")) {
//Header("Content-type: image/jpeg");
ImageJPEG($newimage,$path.$filename);
chmod($path.$filename,0755);
}
break;
case JPEG:
case JPG:
case jpeg:
case jpg:
if(function_exists("imagejpeg")) {
//Header("Content-type: image/jpeg");
ImageJPEG($newimage,$path.$filename);
chmod($path.$filename,0755);
}
break;
case PNG:
case png:
if(function_exists("imagepng")) {
//Header("Content-type: image/png");
ImagePNG($newimage,$path.$filename);
chmod($path.$filename,0755);
}
break;
//.........这里部分代码省略.........
示例13: update_produk
function update_produk()
{
if ($this->session->userdata('masuk')) {
$kategori = mysql_real_escape_string($this->input->post('kategori'));
$nama = mysql_real_escape_string($this->input->post('nama'));
$harga = mysql_real_escape_string($this->input->post('harga'));
$stok = mysql_real_escape_string($this->input->post('stok'));
$dibeli = mysql_real_escape_string($this->input->post('dibeli'));
$deskripsi = mysql_real_escape_string($this->input->post('deskripsi'));
$tipe = mysql_real_escape_string($this->input->post('tipe'));
$kode = $this->input->post('id');
$gbr = $this->input->post('gbr');
$gbr2 = $this->input->post('gbr2');
if (empty($_FILES['imagefile']['name'])) {
//gambar 2 edit mulai
if (empty($_FILES['imagefile2']['name'])) {
$this->m_awal->jalankan_query_manual("update tbl_produk set id_kategori='" . $kategori . "', nama_produk='" . $nama . "', harga='" . $harga . "', \n\t\t\t\t\tstok='" . $stok . "', dibeli='" . $dibeli . "', deskripsi='" . $deskripsi . "', tipe_produk='" . $tipe . "' where kode_produk='" . $kode . "'");
echo "<meta http-equiv='refresh' content='0; url=" . base_url() . "index.php/admin'>";
} else {
if ($_FILES['imagefile2']['type'] == "image/jpeg") {
$ori_src = "asset/produk/imgoriginal/" . strtolower(str_replace(' ', '_', $_FILES['imagefile2']['name']));
if (move_uploaded_file($_FILES['imagefile2']['tmp_name'], $ori_src)) {
chmod("{$ori_src}", 0777);
} else {
echo "Gagal melakukan proses upload file.";
exit;
}
$thumb_src = "asset/produk/" . strtolower(str_replace(' ', '_', $_FILES['imagefile2']['name']));
$n_width = 150;
$n_height = 150;
if ($_FILES['imagefile2']['type'] == "image/jpeg" || $_FILES['imagefile2']['type'] == "image/png" || $_FILES['imagefile2']['type'] == "image/gif") {
$im = @ImageCreateFromJPEG($ori_src) or $im = @ImageCreateFromPNG($ori_src) or $im = @ImageCreateFromGIF($ori_src) or $im = false;
// If image is not JPEG, PNG, or GIF
//$im=ImageCreateFromJPEG($ori_src);
$width = ImageSx($im);
// Original picture width is stored
$height = ImageSy($im);
// Original picture height is stored
if ($n_height == 0 && $n_width == 0) {
$n_height = $height;
$n_width = $width;
}
if (!$im) {
echo '<p>Gagal membuat thumnail</p>';
exit;
} else {
$newimage = @imagecreatetruecolor($n_width, $n_height);
@imageCopyResized($newimage, $im, 0, 0, 0, 0, $n_width, $n_height, $width, $height);
@ImageJpeg($newimage, $thumb_src);
chmod("{$thumb_src}", 0777);
}
}
$this->m_awal->jalankan_query_manual("update tbl_produk set id_kategori='" . $kategori . "', nama_produk='" . $nama . "', harga='" . $harga . "', \n\t\t\t\t\t\tstok='" . $stok . "', dibeli='" . $dibeli . "', gbr_kecil2='" . $_FILES['imagefile2']['name'] . "', gbr_besar2='" . $_FILES['imagefile2']['name'] . "', \n\t\t\t\t\t\tdeskripsi='" . $deskripsi . "', tipe_produk='" . $tipe . "' where kode_produk='" . $kode . "'");
$file_kcl = './asset/produk/' . $gbr2;
$file_bsr = './asset/produk/imgoriginal/' . $gbr2;
unlink($file_kcl);
unlink($file_bsr);
echo "<meta http-equiv='refresh' content='0; url=" . base_url() . "index.php/admin'>";
} else {
echo "Hayooo,,,mau upload file apaan tuh...??? Upload yang berjenis gambar aja mas brow, gak usah macam-macam...!!! OKOK";
}
//gambar 2 edit selssai
}
} else {
if (empty($_FILES['imagefile2']['name'])) {
if ($_FILES['imagefile']['type'] == "image/jpeg") {
$ori_src = "asset/produk/imgoriginal/" . strtolower(str_replace(' ', '_', $_FILES['imagefile']['name']));
if (move_uploaded_file($_FILES['imagefile']['tmp_name'], $ori_src)) {
chmod("{$ori_src}", 0777);
} else {
echo "Gagal melakukan proses upload file.";
exit;
}
$thumb_src = "asset/produk/" . strtolower(str_replace(' ', '_', $_FILES['imagefile']['name']));
$n_width = 150;
$n_height = 150;
if ($_FILES['imagefile']['type'] == "image/jpeg" || $_FILES['imagefile']['type'] == "image/png" || $_FILES['imagefile']['type'] == "image/gif") {
$im = @ImageCreateFromJPEG($ori_src) or $im = @ImageCreateFromPNG($ori_src) or $im = @ImageCreateFromGIF($ori_src) or $im = false;
// If image is not JPEG, PNG, or GIF
//$im=ImageCreateFromJPEG($ori_src);
$width = ImageSx($im);
// Original picture width is stored
$height = ImageSy($im);
// Original picture height is stored
if ($n_height == 0 && $n_width == 0) {
$n_height = $height;
$n_width = $width;
}
if (!$im) {
echo '<p>Gagal membuat thumnail</p>';
exit;
} else {
$newimage = @imagecreatetruecolor($n_width, $n_height);
@imageCopyResized($newimage, $im, 0, 0, 0, 0, $n_width, $n_height, $width, $height);
@ImageJpeg($newimage, $thumb_src);
chmod("{$thumb_src}", 0777);
}
}
$this->m_awal->jalankan_query_manual("update tbl_produk set id_kategori='" . $kategori . "', nama_produk='" . $nama . "', harga='" . $harga . "', \n\t\t\t\t\t\tstok='" . $stok . "', dibeli='" . $dibeli . "', gbr_kecil='" . $_FILES['imagefile']['name'] . "', gbr_besar='" . $_FILES['imagefile']['name'] . "', \n\t\t\t\t\t\tdeskripsi='" . $deskripsi . "', tipe_produk='" . $tipe . "' where kode_produk='" . $kode . "'");
$file_kcl = './asset/produk/' . $gbr;
//.........这里部分代码省略.........
示例14: To_XML_String
$XML = To_XML_String($Codes);
if (Is_Error($XML)) {
return ERROR | @Trigger_Error(500);
}
#-------------------------------------------------------------------------------
$Tmp = System_Element('tmp');
if (Is_Error($Tmp)) {
return ERROR | @Trigger_Error(500);
}
#-------------------------------------------------------------------------------
$IsWrite = IO_Write(SPrintF('%s/protect.xml', $Tmp), $XML, TRUE);
if (Is_Error($IsWrite)) {
return ERROR | @Trigger_Error(500);
}
#-------------------------------------------------------------------------------
$Path = Styles_Element('Images/ProtectBg.png');
if (Is_Error($Path)) {
return ERROR | @Trigger_Error(500);
}
#-------------------------------------------------------------------------------
$Im = ImageCreateFromPng($Path);
#-------------------------------------------------------------------------------
$Color = ImageColorAllocate($Im, 0, 0, 0);
#-------------------------------------------------------------------------------
$Px = (ImageSx($Im) - 8.5 * StrLen($Secret)) / 2;
#-------------------------------------------------------------------------------
ImageString($Im, 5, $Px, 9, $Secret, $Color);
#-------------------------------------------------------------------------------
Header('Content-Type: image/png');
ImagePng($Im);
#-------------------------------------------------------------------------------
示例15: ResizeImageT
/**
*生成图片缩略图(保持比例)
* @access private
* @param string $im 图片文件名,可以包括路径名
* @return string $maxwidth 新图片的宽度
* @return string $maxheight 新图片的高度
* @return string $name 新图片文件名
*/
function ResizeImageT($im, $maxwidth, $maxheight, $name = "")
{
if (!file_exists($im)) {
return false;
}
if (!$name) {
$path_parts = pathinfo($im);
if (empty($name)) {
$name = $path_parts['dirname'] . '/' . $path_parts['filename'] . "({$maxwidth}x{$maxheight})." . $path_parts['extension'];
}
}
if ($maxwidth == 0 || $maxheight == 0) {
return $name;
}
$im_type = $this->get_type($im);
$im = $this->createImage($im_type, $im);
$width = ImageSx($im);
$height = ImageSy($im);
if ($maxwidth && $width > $maxwidth || $maxheight && $height > $maxheight) {
if ($maxwidth && $width > $maxwidth) {
$widthratio = $maxwidth / $width;
$RESIZEWIDTH = true;
}
if ($maxheight && $height > $maxheight) {
$heightratio = $maxheight / $height;
$RESIZEHEIGHT = true;
}
if ($RESIZEWIDTH && $RESIZEHEIGHT) {
if ($widthratio < $heightratio) {
$ratio = $widthratio;
} else {
$ratio = $heightratio;
}
} elseif ($RESIZEWIDTH) {
$ratio = $widthratio;
} elseif ($RESIZEHEIGHT) {
$ratio = $heightratio;
}
$newwidth = $width * $ratio;
$newheight = $height * $ratio;
if (function_exists("imagecopyresampled")) {
$newim = imagecreatetruecolor($newwidth, $newheight);
imagecopyresampled($newim, $im, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
} else {
$newim = imagecreate($newwidth, $newheight);
imagecopyresized($newim, $im, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
}
ImageJpeg($newim, $name);
ImageDestroy($newim);
} else {
ImageJpeg($im, $name);
}
return $name;
}