2017-12-26 11 views
-1

Ich arbeite an einem Produkt, bei dem wir Eingaben als PDF-Datei akzeptieren. Wir haben den Inhalt von pdf über eine API von Drittanbietern gelesen. Diese API schlägt fehl, wenn es sich bei pdf um eine gescannte Datei oder um eine Kopierbeschränkung handelt. API liefert diese Details nicht in der Ausgabe.Wie erkennt man, ob pdf gescannt oder durch ein Werkzeug generiert wird

Gibt es eine Möglichkeit in C# kann ich erkennen, ob die PDF-Datei auf einem normalen gescannt wird? So kann ich dem Benutzer eine entsprechende Nachricht zeigen.

Ich benutze C# und auch mit ABCPDF.

+0

Wie wäre es mit dieser API von Drittanbietern bei PDF-Upload Zeit? Wenn dies fehlschlägt, melden Sie dem Uploader, dass sein PDF für diesen Zweck nicht geeignet ist. – mkl

+1

Texhnisch gibt es * keinen Unterschied zwischen einer gescannten PDF und einer "normalen" (es gibt nichts abnormales an einer gescannten PDF). Haben Sie darüber nachgedacht, nur zu prüfen, ob Text drin ist? – usr2564301

Antwort

1

Eine Methode, die ich in der Vergangenheit verwendete, ist: Sie können einige pdf ocr api und create a searchable PDF verwenden. Vergleichen Sie dann die OCR-Ausgabe mit dem Textinhalt. Wenn die PDF-Datei textbasiert ist, sind das OCR-Ergebnis und der Originaltext fast identisch. Sonst wird es einen großen Unterschied geben.

0

Sie können den Inhalt jeder Seite des Dokuments überprüfen. Ein gescanntes Dokument enthält nur Objekte, deren Typ Bild ist, während eine "normale" PDF Textobjekte und andere Objekte enthält. Hier ist ein Beispielcode mit dem Patagames PDF SDK. Aber Ihre API hat wahrscheinlich eine analoge

 PdfCommon.Initialize(); 

     using (var doc = PdfDocument.Load(@"d:\1\Europa Service Karte.pdf")) 
     { 
      foreach(var page in doc.Pages) 
      { 
       foreach(var obj in page.PageObjects) 
       { 
        if(!(obj is PdfImageObject)) 
        { 
         return; //this is a "normal" pdf; 
        } 
       } 
      } 
      //there is no any page with non image objects 
      //so it is a scanned PDF 
     } 
Verwandte Themen