nombreImagenDestino = md5(uniqid(mt_rand(), true)). ".jpg"; //RECORREMOS LOS FORMATOS foreach($aDimensiones as $key => $dimension) { //comprobamos si el directorio destino tiene barra final,si no la tiene la ponemos y concatenamos el formato $dirDestino = $this->componerDirectorioDestino($directorioDestino,$dimension['ancho'],$dimension['alto']); //comprobamos si existe el directorio destino, si no lo creamos if($this->comprobarDirectorio($dirDestino,0777)) { //comenzamos el proceso de generación de la imagen $this->generarImagen($imagenOrigen,$directorioImagenRaw,$dirDestino,$dimension['ancho'],$dimension['alto'],$calidadImagenDestino,$modoRedimensionamiento); } } } //------------------------------------------------------------------------------------------ // MÉTODO QUE NOS PERMITE GENERAR UNA IMAGEN //------------------------------------------------------------------------------------------ function generarImagen($imagenRaw,$directorioImagenRaw,$directorioDestino,$dimensionAncho,$dimensionAlto,$calidadImagenDestino,$modoRedimensionamiento) { //obtenemos el path completo a la imagen raw $directorioImagenRaw = $this->andirSlash($directorioImagenRaw); $imagenRaw=$directorioImagenRaw.$imagenRaw; //------------------------------------------------------------------------------------------ // SEGÚN EL MODO DE REDIMENSIONAMIENTO PROCESAMOS DE UNA U OTRA FORMA LA IMAGEN //------------------------------------------------------------------------------------------ switch ($modoRedimensionamiento) { case "resize_then_crop": $this->resize_then_crop($imagenRaw,$directorioDestino,$this->nombreImagenDestino,$dimensionAncho,$dimensionAlto,$calidadImagenDestino,/*rgb*/"255","255","255"); break; case 'resize_centrada': $this->resize_centrada($imagenRaw,$directorioDestino,$this->nombreImagenDestino,$dimensionAncho,$dimensionAlto,$calidadImagenDestino,/*rgb*/"255","255","255"); break; } } //------------------------------------------------------------------------------------------ // // MÉTODOS DE REDIMENSIONAMIENTO DE IMAGENES // //------------------------------------------------------------------------------------------ //------------------------------------------------------------------------------------------ // MÉTODO RESIZE THEN CROP //------------------------------------------------------------------------------------------ function resize_then_crop($imagenRaw,$directorioDestino,$nombreImagenDestino,$dimensionAnchoDestino,$dimensionAltoDestino,$calidadImagenDestino,$red,$green,$blue, $crop = false) { //obtenemos la información de la imagen origen $aAtributosImagen = @getimagesize($imagenRaw); //sacamos los atributos de la imagen $this->ancho = $aAtributosImagen[0]; $this->alto = $aAtributosImagen[1]; $this->mimeType = $aAtributosImagen['mime']; $this->peso = filesize($imagenRaw); //reservamos la memoria para el proceso ini_get("memory_limit"); ini_set("memory_limit",$this->memory_limit); ini_set("max_execution_time",$this->max_execution_time); //vemos de donde redimensionamos la imagen $aDimensaionesDestinoImagen = $this->calculoProporcionalImagenDestino($this->ancho,$this->alto,$dimensionAnchoDestino,$dimensionAltoDestino); $pImage = $this->imageCreateFrom($this->mimeType,$imagenRaw); $thumb = imagecreatetruecolor($dimensionAnchoDestino , $dimensionAltoDestino); $bgcolor = imagecolorallocate($thumb, $red, $green, $blue); ImageFilledRectangle($thumb, 0, 0, $width, $height, $bgcolor); imagealphablending($thumb, true); imagecopyresampled($thumb, $pImage, 0, 0, 0, 0,$aDimensaionesDestinoImagen['ancho'], $aDimensaionesDestinoImagen['alto'], $this->ancho, $this->alto); //--------------------------------------------------------------------------- //INSERTAMOS LA MARCA DE AGUA //--------------------------------------------------------------------------- if($this->watermark!='') { $watermark = $_SERVER['DOCUMENT_ROOT'].$this->watermark; $im = imagecreatefrompng($watermark); $waterSize = @getimagesize($watermark); $factorRedimensaoinamiento = 500; // Tenemos que redimensionar la marca de agua, dependiendo de la imagen destino $ancho = ($dimensionAnchoDestino * $waterSize[0])/$factorRedimensaoinamiento; $alto = ($dimensionAltoDestino * $waterSize[1])/$factorRedimensaoinamiento; $logo = imagecreatetruecolor($ancho , $alto); $bgcolor = imagecolorallocate($logo, $red, $green, $blue); $transparent_color = imagecolorallocate($logo, 255, 0, 0); imagecolortransparent($logo, $transparent_color); ImageFilledRectangle($logo, 0, 0, $ancho, $alto, $transparent_color); imagealphablending($logo, false); imagecopyresampled($logo, $im, 0, 0, 0, 0,$ancho, $alto, $waterSize[0], $waterSize[1]); } //--------------------------------------------------------------------------- //fusionamos el logo y la imagen imagecopy($thumb, $logo, (imagesx($thumb)/2)-(imagesx($logo)/2), (imagesy($thumb)/2)-(imagesy($logo)/2), 0, 0, imagesx($logo), imagesy($logo)); if ($nombreImagenDestino !="") { $archivoDestino = $this->andirSlash($directorioDestino).$nombreImagenDestino; imagejpeg($thumb,$archivoDestino,$calidadImagenDestino); // guardamos el archivo generado } } //------------------------------------------------------------------------------------------ // MÉTODO RESIZE THEN CROP //------------------------------------------------------------------------------------------ function resize_centrada($imagenRaw,$directorioDestino,$nombreImagenDestino,$dimensionAnchoDestino,$dimensionAltoDestino,$calidadImagenDestino,$red,$green,$blue, $crop = false) { //obtenemos la información de la imagen origen $aAtributosImagen = @getimagesize($imagenRaw); //sacamos los atributos de la imagen $this->ancho = $aAtributosImagen[0]; $this->alto = $aAtributosImagen[1]; $this->mimeType = $aAtributosImagen['mime']; $this->peso = filesize($imagenRaw); //reservamos la memoria para el proceso ini_get("memory_limit"); ini_set("memory_limit",$this->memory_limit); ini_set("max_execution_time",$this->max_execution_time); //vemos de donde redimensionamos la imagen $aDimensaionesDestinoImagen = $this->calculoProporcionalImagenDestino($this->ancho,$this->alto,$dimensionAnchoDestino,$dimensionAltoDestino); $pImage = $this->imageCreateFrom($this->mimeType,$imagenRaw); $thumb = imagecreatetruecolor($dimensionAnchoDestino , $dimensionAltoDestino); $bgcolor = imagecolorallocate($thumb, $red, $green, $blue); ImageFilledRectangle($thumb, 0, 0, $width, $height, $bgcolor); imagealphablending($thumb, true); $destX = ($dimensionAnchoDestino - $aDimensaionesDestinoImagen['ancho']) / 2; $destY = ($dimensionAltoDestino - $aDimensaionesDestinoImagen['alto']) / 2; imagecopyresampled($thumb, $pImage, $destX, $destY, 0, 0,$aDimensaionesDestinoImagen['ancho'], $aDimensaionesDestinoImagen['alto'], $this->ancho, $this->alto); //--------------------------------------------------------------------------- //INSERTAMOS LA MARCA DE AGUA //--------------------------------------------------------------------------- if($this->watermark!='') { $watermark = $_SERVER['DOCUMENT_ROOT'].$this->watermark; $im = imagecreatefrompng($watermark); $waterSize = @getimagesize($watermark); $factorRedimensaoinamiento = 500; // Tenemos que redimensionar la marca de agua, dependiendo de la imagen destino $ancho = ($dimensionAnchoDestino * $waterSize[0])/$factorRedimensaoinamiento; $alto = ($dimensionAltoDestino * $waterSize[1])/$factorRedimensaoinamiento; $logo = imagecreatetruecolor($ancho , $alto); $bgcolor = imagecolorallocate($logo, $red, $green, $blue); $transparent_color = imagecolorallocate($logo, 255, 0, 0); imagecolortransparent($logo, $transparent_color); ImageFilledRectangle($logo, 0, 0, $ancho, $alto, $transparent_color); imagealphablending($logo, false); imagecopyresampled($logo, $im, 0, 0, 0, 0,$ancho, $alto, $waterSize[0], $waterSize[1]); } //--------------------------------------------------------------------------- //fusionamos el logo y la imagen imagecopy($thumb, $logo, (imagesx($thumb)/2)-(imagesx($logo)/2), (imagesy($thumb)/2)-(imagesy($logo)/2), 0, 0, imagesx($logo), imagesy($logo)); if ($nombreImagenDestino !="") { $archivoDestino = $this->andirSlash($directorioDestino).$nombreImagenDestino; imagejpeg($thumb,$archivoDestino,$calidadImagenDestino); // guardamos el archivo generado } } //------------------------------------------------------------------------------------------ // MÉTODO PARA OBTENER LA IMAGEN EN MEMORIA //------------------------------------------------------------------------------------------ function imageCreateFrom($format,$imagenRaw) { switch($format) { case 'image/jpeg': $image = imagecreatefromjpeg($imagenRaw); break; case 'image/gif'; $image = imagecreatefromgif($imagenRaw); break; case 'image/png': $image = imagecreatefrompng($imagenRaw); break; case 'image/bmp': $image = ImageCreateFromBMP($imagenRaw); break; } return $image; } //------------------------------------------------------------------------------------------ // MÉTODO PARA VER POR DONDE HEMOS DE REDIMENSIONAR LA IMAGEN //------------------------------------------------------------------------------------------ function calculoProporcionalImagenDestino($dimensionAnchoImagenOrigen,$dimensionAltoImagenOrigen,$dimensionAnchoImagenDestino,$dimensionAltoImagenDestino) { $aDimensionesDestino = array(); //para calcular que parte de la imagen origen redimensionar //restamos los anchos y altos de origen y destino y el que sea menor //es el que tenemos que adecuar al destino, el otro se hace proporcional //lo hacemos en valor absoluto, por si la imagen origen es mas pequeña que la destino $distanciaAncho = abs($dimensionAnchoImagenOrigen-$dimensionAnchoImagenDestino); $distanciaAlto = abs($dimensionAltoImagenOrigen-$dimensionAltoImagenDestino); if($distanciaAncho>$distanciaAlto) { $aDimensionesDestino['alto'] = $dimensionAltoImagenDestino; $aDimensionesDestino['ancho'] = $dimensionAnchoImagenOrigen*$dimensionAltoImagenDestino/$dimensionAltoImagenOrigen; } else { $aDimensionesDestino['alto'] = $dimensionAnchoImagenDestino*$dimensionAltoImagenOrigen/$dimensionAnchoImagenOrigen; $aDimensionesDestino['ancho'] = $dimensionAnchoImagenDestino; } return $aDimensionesDestino; } //------------------------------------------------------------------------------------------ // MÉTODO QUE NOS DEVUELVE EL DIRECTORIO DESTINO CON LAS CARPETAS DE FORMATO CREADAS //------------------------------------------------------------------------------------------ function componerDirectorioDestino($directorio,$dimensionAncho,$dimensionAlto) { //si no tiene barra final, la ponemos $directorio = $this->andirSlash($directorio); $directorio = $directorio.$dimensionAncho.'x'.$dimensionAlto; return $directorio; } //------------------------------------------------------------------------------------------ // MÉTODO PARA ANADIR UNA BARRA AL DIRECTORIO //------------------------------------------------------------------------------------------ function andirSlash($directorio) { //si no tiene barra final, la ponemos if ($directorio[strlen($directorio)-1] != "/") { $directorio .= '/'; } return $directorio; } //------------------------------------------------------------------------------------------ // MÉTODO PARA COMPROBAR SI EXISTE EL DIRECTORIO, SI NO LO CREA //------------------------------------------------------------------------------------------ function comprobarDirectorio($path,$permisos) { $procesado = false; //comprobamos que el path destino es un directorio y existe if(!is_dir($path)) { //si no existe le creamos y damos permisos if(mkdir($path,$permisos)) { //forzamos los permisos, mkdir no los ejecuta correctamente a veces if(chmod($path, $permisos)) { $procesado = true; } } } else { $procesado = true; } return $procesado; } } ?> seccion = $seccion; $this->pagina = $pagina; $this->url = $url; $this->idClase = $clase; $this->numTotalResultados = $numTotalResultados; $this->numResultadosPorPagina = $numResultadosPorPagina; //calculamos el numero total de paginas $this->totalPaginas = ceil($numTotalResultados/$numResultadosPorPagina); //echo 'total páginas '.$this->totalPaginas.'
'; //calculamos el numero de grupos de paginas $this->numGrupos = ceil($this->totalPaginas/$this->numNumerosVisibles); //echo 'total grupos '.$this->numGrupos.'
'; //pagina actual $this->paginaActual = $this->pagina/$this->numResultadosPorPagina+1; //creamos un array cuyo indice sea el grupo y los valores las paginas for($n=0;$n<$this->totalPaginas;$n++) { //dividimos la pagina entre el número de elementos visibles $grupo = floor($n/$this->numNumerosVisibles); $this->aGruposPaginas[$grupo][] = $n; } //var_dump($this->aGruposPaginas); //vamos a obtener en que grupo esta la pagina actual for($n=0;$naGruposPaginas);$n++) { if (in_array($this->paginaActual-1, $this->aGruposPaginas[$n])) $this->grupoActivo = $n; } } //------------------------------------------------------------------- // Funcion que renderiza el paginador //------------------------------------------------------------------- function render() { require $_SERVER['DOCUMENT_ROOT'].'/includes/recursos/locales/'.LOCALES.'.php'; if($this->numTotalResultados > 0 && $this->totalPaginas > 1) { echo '
'.$this->numTotalResultados.' '.$LANG['paginadorRegistros'].'. '.$LANG['paginadorPagina'].' '.$this->paginaActual.'/'.$this->totalPaginas.'
'; } } } ?> renderMetatags(); ?>

negri bossi ottimo usato,v 830 ton 1998,v 480 ton 1998,250,150,110. usato di qualità ad un prezzo unico. su richiesta foto e schede tecniche. abbiamo una vasta gamma di presse di ad iniezione dal più piccolo tonnellaggio al più grande,di varie marche per rispondere ad ogni vostra esigenza. le presse sono tutte in ottimo stato e funzionanti. per ulteriori informazioni non esitate a contattarmi, abbiamo molti altri marchi e tonnellaggi. saremo a vostra completa disposizione. export.lorman@lormansrl.it 34/66726067 spino d’adda