Foros del Web » Programando para Internet » PHP »

Centrar imagen php

Estas en el tema de Centrar imagen php en el foro de PHP en Foros del Web. Buenas! Verán. quiero lograr centrar una imagen repetitiva con PHP tal como se logra con CSS Es decir... que sin importar el ancho / alto ...
  #1 (permalink)  
Antiguo 06/06/2017, 14:43
 
Fecha de Ingreso: agosto-2015
Ubicación: Rosario - Argentina
Mensajes: 424
Antigüedad: 8 años, 8 meses
Puntos: 12
Centrar imagen php

Buenas!

Verán. quiero lograr centrar una imagen repetitiva con PHP tal como se logra con CSS

Es decir... que sin importar el ancho / alto del contenedor, la imagen queda perfectamente centrada.
Quisiera saber cual es el calculo que se usa para sacar dichas medidas en php.

Aquí tengo dos imágenes de ejemplo, 1 que es de 100x100 y que la caja que esta dentro es de 50x50, luego otra de 130x130 y la misma caja de 50x50.

Y vemos como sin importar el tamaño con CSS se logra centrar siempre, pero con php no lo he logrado, solo he conseguido centrarlo siempre y cuando la dimensión del contenedor sea la mitad de la dimensión del objeto de adentro que tiene en este caso 50x50. Es decir que si el contenedor tiene 100x100, 150x150, 200x200 Largo etc... la imagen se centra perfecto como con CSS, pero no con por ej: 110x110, 130x130 Largo etc...

Aqui dejare las imagenes para que vean lo que quiero conseguir y el code que uso para copiar las imagenes dentro del contenedor.

IMG 100x100:
http://trinitygames.esy.es/100x100.png
IMG 130x130:
http://trinitygames.esy.es/130x130.png

CODE:
Código PHP:
if(self::$ImagenPositionV == "center"){ // En caso de que quiera centrarse en vertical
                
self::$ImagenPositionY self::$ImagenNuevoAlto/self::$ImagenAlto;
                
self::$ImagenPositionY = -self::$ImagenAlto/self::$ImagenPositionY;
            }else{
                
self::$ImagenPositionY 0;
            }
            if(
self::$ImagenPositionH == "center"){ // En caso de que quiera centrarse en horizontal
                
self::$ImagenPositionX self::$ImagenNuevoAncho/self::$ImagenAncho;
                
self::$ImagenPositionX = -self::$ImagenAncho/self::$ImagenPositionX;
            }else{
                
self::$ImagenPositionX 0;
            }

            for(
$i self::$ImagenPositionX$i self::$ImagenNuevoAncho$i+=self::$ImagenAncho){

                
self::$ImagenFinal imagecopy(self::$ImagenNuevaself::$Imagen$i000self::$ImagenAnchoself::$ImagenAlto);

                for(
$y self::$ImagenPositionY$y self::$ImagenNuevoAlto$y+=self::$ImagenAlto){

                    
self::$ImagenFinal imagecopy(self::$ImagenNuevaself::$Imagen$i$y00self::$ImagenAnchoself::$ImagenAlto);

                }

            } 
Con ese code solo consigo centrarla cuando la division de contenedor y caja da un valor entero y no decimal, tal como 100/50, 150/50, etc..

Espero me ayuden, gracias!
  #2 (permalink)  
Antiguo 10/06/2017, 01:41
 
Fecha de Ingreso: febrero-2004
Mensajes: 1.987
Antigüedad: 20 años, 2 meses
Puntos: 22
Respuesta: Centrar imagen php

revisa con ceil() y floor()
  #3 (permalink)  
Antiguo 10/06/2017, 02:37
Avatar de manuparquegiralda  
Fecha de Ingreso: junio-2012
Ubicación: Barcelona
Mensajes: 241
Antigüedad: 11 años, 9 meses
Puntos: 39
Respuesta: Centrar imagen php

No sé si es lo que buscas y tampoco sé porque haces dos bucles con tantos imagecopy para obtener el final. Si te he entendido bien lo que quieres es que en un contenedor más pequeño que la imagen quede centrada pero ¿sin estar redimensionada?

Si es eso ¿por qué no lo haces directamente con CSS? ¿O lo que buscas es hacer una especie de thumbnail con la imagen?

Si me lo explicas un poco mejor seguro que puedo echarte una mano.
__________________
Diseño Web - Arisman Web

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:34.