Contamos con tu ayuda para extender nuestros tutoriales referente a las ciencias informáticas.
Solución:
Él convert
herramienta (o magick
desde la versión 7) del paquete ImageMagick puede hacer esto (y mucho más).
En su forma más simple, es simplemente
convert myfile.pdf myfile.png
o
magick myfile.pdf myfile.png
Esta es una pregunta antigua, pero como falta una respuesta de GhostScript y no hay ninguna pista para multi página Exportación de PDF pero creo que agregar otra variante está bien.
gs -dBATCH -dNOPAUSE -sDEVICE=pnggray -r300 -dUseCropBox -sOutputFile=item-%03d.png examples.pdf
Descripción de las opciones:
dBatch
ydNOPAUSE
simplemente dígale a gs que se ejecute en modo por lotes, lo que significa que más o menos no hará ninguna pregunta. Esos parámetros también son importantes si desea ejecutar el comando en un script bash.sDEVICE
le dice a gs qué formato de salida producir.pnggray
es para escala de grises,png16m
para color RGB de 24 bits. Si insiste en crear Jpegs, use-sDEVICE=jpeg
para producir archivos JPEG en color. Utilizar el-dJPEGQ=N
(N es un número entero de 0 a 100, predeterminado 75) parámetro para controlar la calidad de Jpgeg.-r300
establece la resolución de escaneado en 300 ppp. Si prefiere tamaños de salida más pequeños, use-r70
o si ingresa pdf tiene un uso de alta resolución
-r600
. Si tiene un PDF con 300 ppp y especifica -r600, sus imágenes se ampliarán.-dUseCropBox
dígale a gs que use un CropBox si está definido. Un CropBox especifica un área de interés en una página. Si tiene un pdf con un gran margen blanco y no desea este margen en su salida, esta opción podría ayudar.-sOutputFile
define los nombres del archivo de salida. La parte %03d.png le dice a gs que incluya un contador para varios archivos. Un pdf de dos páginas daría como resultado dos archivos llamados item-001.png y item-002.png.- El último (parámetro sin nombre es el archivo de entrada).
Disponibilidad:
El comando convert de imagemagick usa el comando gs internamente. Si puede convertir un pdf con imagemagick, ya tiene gs instalado.
Instalar script fantasma:
RHEL:
yum install ghostscript
LES:
zypper install ghostscript
Debian/Ubuntu:
sudo apt-get install ghostscript
Ventanas:
Puede encontrar archivos binarios de Windows en http://www.ghostscript.com/download/gsdnld.html
La pregunta es bastante antigua, pero recientemente encontré esta solución que funcionó para mí: https://github.com/jhabjan/Ghostscript.NET. También está disponible como descarga nuget.
Aquí está el código de muestra para convertir todas las páginas pdf en imágenes png:
private static void Test()
var localGhostscriptDll = Path.Combine(Environment.CurrentDirectory, "gsdll64.dll");
var localDllInfo = new GhostscriptVersionInfo(localGhostscriptDll);
int desired_x_dpi = 96;
int desired_y_dpi = 96;
string inputPdfPath = "test.pdf";
string outputPath = Environment.CurrentDirectory;
GhostscriptRasterizer _rasterizer = new GhostscriptRasterizer();
_rasterizer.Open(inputPdfPath, localDllInfo, false);
for (int pageNumber = 1; pageNumber <= _rasterizer.PageCount; pageNumber++)
string pageFilePath = Path.Combine(outputPath, "Page-" + pageNumber.ToString() + ".png");
Image img = _rasterizer.GetPage(desired_x_dpi, desired_y_dpi, pageNumber);
img.Save(pageFilePath, ImageFormat.Png);
_rasterizer.Close();
Aquí tienes las comentarios y valoraciones
Si te gusta la informática, tienes el poder dejar un post acerca de qué le añadirías a esta noticia.