2012-02-20 20 views
10

Per l'attuazione di un'applicazione page-flip basato su Windows ho bisogno di essere in grado di convertire un gran numero di pagine PDF in buona JPG qualità, non solo le miniature.Conversione PDF to JPG come Photoshop qualità - Commerciale C++/Delphi biblioteca

L'obiettivo è quello di raggiungere la dimensione migliore qualità/del file per questo, simile a Photoshops Salva per Web fa.

Attualmente Im usando Datalogics Adobe PDF Library SDK, che non sembra essere in grado di adempiere a questo compito. Sono quindi alla ricerca di una libreria C++ o Delphi alternativa che fornisce una buona qualità/dimensione/velocità.

Dopo aver fatto qualche ricerca qui, ho notato che la maggior parte dei post riguardano GS & Imagekick, che ho anche testato, ma non sono soddisfatto dell'output e della velocità.

L'obiettivo è quello di importare i file PDF con 300dpi e li converte con JPG qualità 50, 1500px altezza e una dimensione di ouput 300-500kb.

Se qualcuno potesse indicare una buona libreria per quel compito, sarei molto grato.

+0

Perché si desidera importare il file PDF a 300dpi quando le stampe sono solo 136dpi? L'importazione delle stesse dimensioni dell'output accelera un po 'le cose. –

+0

Grazie per il suggerimento! Questo deve essere rimasto come un processo nella mia mente, poiché in genere ho importato tutti i PDF a 300 dpi in PS, riconoscendo il fatto che lo ridimensiono di nuovo in un secondo momento ..! – idplanter

risposta

1

mi raccomando sempre Graphics32 per tutte le esigenze di manipolazione delle immagini; avete diversi resamplers da scegliere. Tuttavia, non penso che possa leggere i file PDF come immagini. Ma se puoi generare la grande immagine da sola, potrebbe essere una buona scelta.

+0

Grazie, ma poiché l'obiettivo è gestire una conversione di oltre 100 pagine in 2-3 minuti, vorrei mantenere le operazioni di elaborazione al minimo. – idplanter

+0

Capisco. Il ricampionamento di un'immagine dovrebbe essere un processo abbastanza leggero rispetto alla generazione attuale delle immagini di origine, il pensiero. –

0

Dai un'occhiata alla DynaPDF. So che è piuttosto costoso, ma puoi provare il pacchetto iniziale.

P.S.:prima di acquistare un prodotto, assicurarsi che soddisfi le proprie esigenze.

1

Atalasoft DotImage (con il componente aggiuntivo rasterizzatore PDF) lo farò (lavoro su tecnologie PDF lì). Sareste lavora in C# (o un altro NET) la lingua:

ConvertToJpegs(string outfileStem, Stream pdf) 
{ 
    JpegEncoder encoder = new JpegEncoder(); 
    encoder.Quality = 50; 

    int page = 1; 
    PdfImageSource source = new PdfImageSource(pdf); 
    source.Resolution = 300; // sets the rendering resolution to 200 dpi 
    // larger numbers means better resolution in the image, but will cost in 
    // terms of output file size - as resolution increases, memory used increases 
    // as a function of the square of the resolution, whereas compression only 
    // saves maybe a flat 30% of the total image size, depending on the Quality 
    // setting on the encoder. 

    while (source.HasMoreImages()) { 
     AtalaImage image = source.AcquireNext(); 
     // this image will be in either 8 bit gray or 24 bit rgb depending 
     // on the page contents. 

     try { 
      string path = String.Format("{0}{1}.jpg", outFileStem, page++); 
      // if you need to resample the image, this is the place to do it 
      image.Save(path, encoder, null); 
     } 
     finally { 
      source.Release(image); 
     } 
    } 
} 
+0

Grazie, ma .net è fuori questione in quanto l'app in cui deve essere inclusa non è scritta in .net. – idplanter

Problemi correlati