2015-02-06 5 views
0

У меня есть pdf-файл из 22 страниц. Я использую GhostScript для преобразования PDF в TIFF, который будет использоваться Tesseract. Я сделал это ...Размер указателя в формате Ghostscript PDF для TIFF C#

string filename=openFileDialog1.FileName; 

    using (GhostscriptRasterizer rasterizer = new GhostscriptRasterizer()) 
      { 
       rasterizer.Open(filename, _lastInstalledVersion, false); 
       for (int pageNumber = 1; pageNumber <= rasterizer.PageCount; pageNumber++) 
       { 
        Image img = rasterizer.GetPage(400, 400, pageNumber); 
       } 

Я хочу, чтобы установить размер IMG, прежде чем я передать его для использования Tesseract, но я не могу .. Есть ли способ?

Существует этот пример: но ИДК, если я могу передать каждое изображение из PDF для использования Tesseract

GhostscriptVersionInfo gv = GhostscriptVersionInfo.GetLastInstalledVersion(); 

     using (GhostscriptProcessor processor = new GhostscriptProcessor(gv, true)) 
     { 
      processor.Processing += new GhostscriptProcessorProcessingEventHandler(processor_Processing); 

      List<string> switches = new List<string>(); 
      switches.Add("-empty"); 
      switches.Add("-dSAFER"); 
      switches.Add("-dBATCH"); 
      switches.Add("-dNOPAUSE"); 
      switches.Add("-dNOPROMPT"); 
      switches.Add(@"-sFONTPATH=" + System.Environment.GetFolderPath(System.Environment.SpecialFolder.Fonts)); 
      switches.Add("-dFirstPage=" + pageFrom.ToString()); 
      switches.Add("-dLastPage=" + pageTo.ToString()); 
      switches.Add("-sDEVICE=png16m"); 
      switches.Add("-r96"); 
      switches.Add("-dTextAlphaBits=4"); 
      switches.Add("-dGraphicsAlphaBits=4"); 

      //switches.Add("-sDEVICE=pdfwrite"); 

      switches.Add(@"-sOutputFile=" + outputFile); 
      switches.Add(@"-f"); 
      switches.Add(inputFile); 

      processor.StartProcessing(switches.ToArray(), null); 
     } 
    } 

ответ

2

-dDEVICEWIDTHPOINTS и -dDEVICEHEIGHTPOINTS, наряду с -dFIXEDMEDIA будет установлен конкретный размер носителя. Возможно, вам захочется установить -dPDFFitPage, а также масштабировать контент на новый носитель.

Вы не можете использовать Ghostscript напрямую, используете ли вы Ghostscript.net jhabjan?

+0

Да, я .. и есть другой пример, который я только что редактировал, не так ли? –

+1

@ DerekToh, я бы предложил вам обновить свой Ghostscript.NET до v.1.2.0 (выпущен вчера), а затем вы можете использовать переключатели KenS, предложенные таким образом: http://pastebin.com/NNXEVRR4 – HABJAN

+0

Я не могу показаться найти GhostScript.NET.dll, когда я скачал новый –

Смежные вопросы