/
Main.java
57 lines (47 loc) · 1.72 KB
/
Main.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
package ZUV;
import org.verapdf.pdfa.VeraGreenfieldFoundryProvider;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.PrintWriter;
import org.verapdf.core.EncryptedPdfException;
import org.verapdf.core.ModelParsingException;
import org.verapdf.core.ValidationException;
import org.verapdf.pdfa.Foundries;
import org.verapdf.pdfa.PDFAParser;
import org.verapdf.pdfa.results.ValidationResult;
import org.verapdf.pdfa.PDFAValidator;
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
VeraGreenfieldFoundryProvider.initialise();
String filename="veraPDF test suite 6-8-t02-pass-g.pdf";
System.out.println("Testing validity of "+filename);
try (PDFAParser parser = Foundries.defaultInstance().createParser(new FileInputStream(filename))) {
PDFAValidator validator = Foundries.defaultInstance().createValidator(parser.getFlavour(), false);
ValidationResult result = validator.validate(parser);
if (result.isCompliant()) {
// File is a valid PDF/A 1b
System.out.println("Complies");
} else {
// it isn't
System.out.println("Fails "+result.toString());
}
} catch (ModelParsingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (EncryptedPdfException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ValidationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}