diff --git a/cosasCLI.md b/cosasCLI.md
index 0ff241e..b33ef5e 100644
--- a/cosasCLI.md
+++ b/cosasCLI.md
@@ -23,6 +23,12 @@ En esta hoja se van a ir incluyendo comandos útiles de terminal de Linux y Mac.
* [Archivo de configuración de `tmux`](#ArchivoConfigTmuxTag)
4. [Image Magick](#ImageMagickTag)
+ * [Comandos sueltos de ImageMagick](#ComandosImageMagickTag)
+ * [Optimización de archivos PDF](#OptimizacionPdfTag)
+ 1. [Mediante la aplicación `ps2pdf` de Ghostscript](#OptimizarPdfGSATag)
+ 2. [Mediante script explícito de Ghostscript](#OptimizarPdfGSATag)
+ * [Cambiar un PDF de RGB a CMYK](#CambiarRgbCmykTag)
+ * [Convertir a curvas los textos contenidos en un archivo SVG](#ConvertirACurvasTag)
5. [Audio](#audioTag)
* [Modificación de etiquetas y metadatos de MP3](#ModificacionMP3Tag)
@@ -661,12 +667,9 @@ Agregar lo siguiente para que las nuevas ventanas creadas dentro de una sesión
-
-
-
-
# Image Magick
+## Comandos sueltos de ImageMagick
Recortar una imagen en PNG con fondo transparente de manera que sólo deje el contenido.
@@ -759,6 +762,183 @@ Extraer imágenes de un pdf en su formato original:
+
+## Optimización de archivos PDF
+
+
+### Mediante la aplicación `ps2pdf` de Ghostscript
+
+```
+ $ ps2pdf entrada.pdf salida.pdf
+```
+
+
+### Mediante script explícito de Ghostscript
+
+1. Se crea un script de bash con un nombre apropiado como `optimizarPdf.sh` que tenga el siguiente contenido:
+
+```
+ #!/usr/bin/bash
+
+ # Para optimizar el pdf de nombre "archivo.pdf" se corre como:
+ #
+ # ./optimizarPdf.sh archivo 300
+ #
+ # en donde 300 es la resolución que también puede ser de 150 y 72
+
+ archivo=$1
+ res=$2
+ echo "Se seleccionó $res dpi"
+ archIn=$archivo.pdf
+ archOut=$archivo-${res}dpi.pdf
+
+ case $res in
+ 300)
+ resTipo='/printer' # o usar /prepress
+ ;;
+ 150)
+ resTipo='/ebook'
+ ;;
+ 72)
+ resTipo='/screen'
+ ;;
+ *)
+ echo "Resolucion no valida. Puede ser 300, 150 o 72"
+ exit 0
+ ;;
+ esac
+
+ gs \
+ -sDEVICE=pdfwrite \
+ -dMaxSubsetPct=100 \
+ -dPDFSETTINGS=$resTipo \
+ -sOutputFile="$archOut" \
+ -dNOPAUSE \
+ -dBATCH \
+ -dAutoFilterColorImages=false \
+ -dColorImageFilter=/FlateEncode \
+ -dAutoFilterGrayImages=false \
+ -dGrayImageFilter=/FlateEncode \
+ -dMonoImageFilter=/FlateEncode \
+ "$archIn"
+
+ exit 0
+```
+
+2. Se le cambian los permisos para que pueda ser ejecutable y se mueve a un directorio que sea reconocido por el `$PATH`, por ejemplo, `/home/$USER/bin`.
+
+```
+ $ chmod +x optimizarPdf.sh
+ $ mv optimizarPdf.sh /home/$USER/bin
+```
+
+3. El script optimiza las imágenes dentro del PDF para que queden a 72 dpi, 150 dpi o 300 dpi. Entonces, para optimizar un archivo PDF de nombre `archivo.pdf` a 300 dpi el script se ejecuta como:
+
+```
+ $ optimizarPdf.sh archivo 300
+```
+
+en donde el nombre del archivo se indica sin la extensión. Los posibles valores de resolución en dpi son los indicados.
+
+
+
+
+## Cambiar un PDF de RGB a CMYK
+
+
+1. Se crea un script de bash con un nombre apropiado como `pdfRgb2Cmyk.sh` que tenga el siguiente contenido:
+
+```
+ #!/usr/bin/bash
+
+ # Para cambiar el pdf de nombre "archivo.pdf" de RGB a CMYK se corre como:
+ #
+ # ./pdfRgb2Cmyk.sh archivo
+
+ archivo=$1
+ archIn=$archivo.pdf
+ archOut=$archivo-cmyk.pdf
+
+ gs \
+ -sDEVICE=pdfwrite \
+ -dNOPAUSE \
+ -dNOCACHE \
+ -dBATCH \
+ -dSAFER \
+ -dAutoRotatePages=/None \
+ -sColorConversionStrategy=CMYK \
+ -dProcessColorModel=/DeviceCMYK \
+ -sOutputFile="$archOut" \
+ "$archIn"
+
+ exit 0
+```
+
+2. Se le cambian los permisos para que pueda ser ejecutable y se mueve a un directorio que sea reconocido por el `$PATH`, por ejemplo, `/home/$USER/bin`.
+
+```
+ $ chmod +x pdfRgb2Cmyk.sh
+ $ mv pdfRgb2Cmyk.sh /home/$USER/bin
+```
+
+3. El script cambia a CMYK las imágenes de un archivo PDF que estén en RGB y se ejecuta como:
+
+```
+ $ pdfRgb2Cmyk.sh archivo
+```
+
+en donde el nombre del archivo se indica sin la extensión.
+
+
+
+
+
+## Convertir a curvas los textos contenidos en un archivo SVG
+
+
+1. Se crea un script de bash con un nombre apropiado como `inkCurva.sh` que tenga el siguiente contenido:
+
+```
+ #!/usr/bin/bash
+
+ # Para ejecutar
+ #
+ # $ inkCurva.sh archivo
+ #
+ # en donde 'archivo' es el archivo.svg. El resultado tiene por nombre archivocurvas.svg
+
+ ruta=`pwd`
+
+ # Descomentar si se usa en MacOS
+ # correInks=/Applications/Inkscape.app/Contents/Resources/bin/inkscape
+ # En este caso cambiar el hashbang de la primera línea a #!/bin/bash
+
+ # Descomentar si se usa un Inkscape instalado mediante gestor de paquetes
+ # correInks=/usr/bin/inkscape
+
+ # Descomentar si se ejecuta Inkscape desde un binario tipo AppImage, ajustar la ruta y el nombre
+ correInks=/home/$USER/local/inkscape122/Inkscape-b0a8486-x86_64.AppImage
+
+ $correInks $ruta/$1.svg --export-text-to-path --export-plain-svg=$ruta/$1curvas.svg
+```
+
+2. Se le cambian los permisos para que pueda ser ejecutable y se mueve a un directorio que sea reconocido por el `$PATH`, por ejemplo, `/home/$USER/bin`.
+
+```
+ $ chmod +x inkCurva.sh
+ $ mv inkCurva.sh /home/$USER/bin
+```
+
+3. El script convierte a curvas todos los textos contenidos en `archivo.svg` de Inkscape y se ejecuta como:
+
+```
+ $ inkCurva.sh archivo
+```
+
+en donde el nombre del archivo se indica sin la extensión.
+
+
+
# Audio