como converter arquivos pdf para imagem

Tenho alguns ficheiros. O seu formato é pdf Agora há um projeto, este projeto precisa converter o arquivo pdf para imagem se o pdf é Multi-página,eu só preciso de uma imagem contém todas as páginas pdf. Eu recebo alguma resposta do google, mas algumas ferramentas são carregadas

Então, como resolvê-lo com C#? Muito obrigada!

Eu sei, usa o acrobata.dll in C# can solve this problem. mas tem de instalar o adobe acrobat e não é gratuito.

Author: loveForEver, 2014-05-28

4 answers

O seguinte tópico é adequado para o seu pedido. converter ficheiro pdf para uma imagem jpeg

Uma solução é usar uma biblioteca de terceiros. ImageMagick é muito popular, disponível gratuitamente também. Você pode obter uma embalagem.NET para ele aqui. A página de download original do ImageMagick é aqui . E você também pode dar uma olhada neste tópico: como abrir uma página de um ficheiro pdf na caixa de imagens em C#

Se utilizar Este processo para converter um PDF para o tiff , poderá usar esta classe para obter o mapa de bits do tiff.

public class TiffImage
{
    private string myPath;
    private Guid myGuid;
    private FrameDimension myDimension;
    public ArrayList myImages = new ArrayList();
    private int myPageCount;
    private Bitmap myBMP;

    public TiffImage(string path)
    {
        MemoryStream ms;
        Image myImage;

        myPath = path;
        FileStream fs = new FileStream(myPath, FileMode.Open);
        myImage = Image.FromStream(fs);
        myGuid = myImage.FrameDimensionsList[0];
        myDimension = new FrameDimension(myGuid);
        myPageCount = myImage.GetFrameCount(myDimension);
        for (int i = 0; i < myPageCount; i++)
        {
            ms = new MemoryStream();
            myImage.SelectActiveFrame(myDimension, i);
            myImage.Save(ms, ImageFormat.Bmp);
            myBMP = new Bitmap(ms);
            myImages.Add(myBMP);
            ms.Close();
        }
        fs.Close();
    }
}

Usa-o assim:

private void button1_Click(object sender, EventArgs e)
{
    TiffImage myTiff = new TiffImage("D:\\Some.tif");
    //imageBox is a PictureBox control, and the [] operators pass back
    //the Bitmap stored at that position in the myImages ArrayList in the TiffImage
    this.pictureBox1.Image = (Bitmap)myTiff.myImages[0];
    this.pictureBox2.Image = (Bitmap)myTiff.myImages[1];
    this.pictureBox3.Image = (Bitmap)myTiff.myImages[2];
}
 10
Author: Gaurav Deochakke, 2017-09-26 14:13:06

Pode usar Ghostscript para converter PDF para imagens.

Para usar Ghostscript de .NET você pode dar uma olhada em Ghostscript.NET (biblioteca wrapper gerido todo o Ghostscript biblioteca).

Para produzir imagem do PDF usando Ghostscript.NET, dê uma olhada no RasterizerSample.

Para combinar várias imagens numa única imagem, veja esta amostra: http://www.niteshluharuka.com/2012/08/combine-several-images-to-form-a-single-image-using-c/#

 11
Author: HABJAN, 2018-08-02 20:33:01

Quanto a 2018 ainda não há uma resposta simples sobre a questão de como converter PDF para imagem em C#; muitos libs usam GhostScript licenciado sob AGPL e, na maioria dos casos, Licença Comercial cara é necessária para o uso da produção.

Uma boa alternativa pode ser usar o utilitário 'pdftoppm' poppler, que tem licença GPL; pode ser usado a partir de C# como ferramenta de linha de comandos executada com o sistema.Diagnostico.Processo. As ferramentas Poppler são bem conhecidas no mundo Linux, mas Windows build também é disponivel.

Se não quiser integrar o pdftoppm por si próprio, pode usar o meu 'pdfrender' poppler wrapper (suporta tanto o clássico 'Framework' como o 'Core ' do'. NET') - não é gratuito, mas os preços são muito acessíveis.

 2
Author: Vitaliy Fedorchenko, 2018-04-06 11:00:54

(Disclaimer eu trabalhei neste componente no Software Siglo XXI)

Você poderia usar o Conversor Super Pdf2Image para gerar um ficheiro de várias páginas TIFF com todas as páginas renderizadas do PDF em alta resolução. Está disponível para 32 e 64 bits e é muito barato e eficaz. Recomendo-lhe que experimente.

Só uma linha de código...
GetImage(outputFileName, firstPage, lastPage, resolution, imageFormat)

Converts specifies pages to image and save them to outputFileName (tiff allows multi-page or creates several files)
Pode dar uma vista de olhos aqui. http://softwaresigloxxi.com/SuperPdf2ImageConverter.html
 0
Author: M. Cota, 2015-02-14 01:26:11