Hay organizaciones que reciben datos de lakhs o más personas, que son principalmente en forma de texto, con algunas imágenes. La mayoría de ustedes sabe que la parte del texto se almacena en bases de datos en forma de tablas, pero ¿qué pasa con las imágenes? Las imágenes son pequeñas en comparación con los datos textuales pero constituyen un espacio mucho mayor en términos de almacenamiento. Por lo tanto, para ahorrar espacio y seguir ejecutando los procesos sin problemas, solicitan a los usuarios que envíen las imágenes comprimidas. Como la mayoría de los lectores tienen un poco de experiencia en informática (ya sea en la escuela o la universidad), entienden que usar herramientas gratuitas en línea para comprimir imágenes no es una buena práctica para ellos.
Hasta Windows 7, Microsoft solía ofrecer MS Office Picture Manager, que podía usarse para comprimir imágenes hasta cierto punto, pero también tenía algunas limitaciones.
Aquellos que conocen un poco de python pueden instalar python y usar pip install pillow en el símbolo del sistema (terminal para usuarios de Linux) para instalar pillow fork .
Obtendrás una pantalla como esta
Reúna todos los archivos en una carpeta y mantenga el archivo Compress.py en la misma carpeta.
Ejecute el archivo python con python.
A continuación se muestra el código fuente del archivo:
Python3
# run this in any directory # add -v for verbose # get Pillow (fork of PIL) from # pip before running --> # pip install Pillow # import required libraries import os import sys from PIL import Image # define a function for # compressing an image def compressMe(file, verbose = False): # Get the path of the file filepath = os.path.join(os.getcwd(), file) # open the image picture = Image.open(filepath) # Save the picture with desired quality # To change the quality of image, # set the quality variable at # your desired level, The more # the value of quality variable # and lesser the compression picture.save("Compressed_"+file, "JPEG", optimize = True, quality = 10) return # Define a main function def main(): verbose = False # checks for verbose flag if (len(sys.argv)>1): if (sys.argv[1].lower()=="-v"): verbose = True # finds current working dir cwd = os.getcwd() formats = ('.jpg', '.jpeg') # looping through all the files # in a current directory for file in os.listdir(cwd): # If the file format is JPG or JPEG if os.path.splitext(file)[1].lower() in formats: print('compressing', file) compressMe(file, verbose) print("Done") # Driver code if __name__ == "__main__": main()
Carpeta antes de la compresión:
Línea de comando para ejecutar el código:
PD: ejecute el código después de ingresar al directorio.
Carpeta después de la ejecución del Código:
Puede ver claramente el archivo comprimido.
Publicación traducida automáticamente
Artículo escrito por avanishcodes y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA