Мне нужно проверить файлы PDF для моего теста. Для этого мне нужно GetText, Image из PDF-файла и сравнить с ожидаемым файлом. Но при получении текста я получаю исключение java.lang.NoSuchMethodError. Здесь я использую пакет PDFUtil, ниже приведен фрагмент кода и сведения об исключении.
Я уже добавил файл jar pdfbox-2.0.14 и fontbox-2.0.14 в мой путь сборки. Но все же я получаю исключение.
Пожалуйста, покажите мне, где я делаю неправильно.
открытый класс PDFUtilTest1 {
public static void main(String[] args) throws IOException {
PDFUtil pdfutil = new PDFUtil();
int actual = pdfutil.getPageCount("C:/DBS Auto/Finacle_Regression_Auto/Quadient_POC/src/resources/sample1.pdf");
int expected = pdfutil.getPageCount("C:/DBS Auto/Finacle_Regression_Auto/Quadient_POC/src/resources/sample2.pdf");
String file1 = "C:/DBS Auto/Finacle_Regression_Auto/Quadient_POC/src/resources/sample1.pdf";
String file2 = "C:/DBS Auto/Finacle_Regression_Auto/Quadient_POC/src/resources/sample2.pdf";
pdfutil.getText(file1);
pdfutil.getText(file2);
String file11 = "C:/DBS Auto/Finacle_Regression_Auto/Quadient_POC/src/resources/sample1.pdf";
String file21 = "C:/DBS Auto/Finacle_Regression_Auto/Quadient_POC/src/resources/sample2.pdf";
pdfutil.setCompareMode(CompareMode.TEXT_MODE);
boolean result = pdfutil.compare(file11, file21);
String file12 = "C:/DBS Auto/Finacle_Regression_Auto/Quadient_POC/src/resources/sample2.pdf";
String file22 = "C:/DBS Auto/Finacle_Regression_Auto/Quadient_POC/src/resources/sample2.pdf";
pdfutil.setCompareMode(CompareMode.VISUAL_MODE);
pdfutil.setCompareMode(CompareMode.VISUAL_MODE);
boolean result1 = pdfutil.compare(file12, file22);
}
}
Исключение:
Исключение в потоке "main" java.lang.NoSuchMethodError: org.apache.fontbox.ttf.TrueTypeFont.getUnicodeCmapLookup (Z) Lorg / apache / fontbox / ttf / CmapLookup;
в org.apache.pdfbox.pdmodel.font.PDCIDFontType2. (PDCIDFontType2.java:145)
в org.apache.pdfbox.pdmodel.font.PDCIDFontType2. (PDCIDFontType2.java:62)
в org.apache.pdfbox.pdmodel.font.PDFontFactory.createDescendantFont (PDFontFactory.java:125)
в org.apache.pdfbox.pdmodel.font.PDType0Font. (PDType0Font.java:192)
в org.apache.pdfbox.pdmodel.font.PDFontFactory.createFont (PDFontFactory.java:83)
в org.apache.pdfbox.pdmodel.PDResources.getFont (PDResources.java:146)
в org.apache.pdfbox.contentstream.operator.text.SetFontAndSize.process (SetFontAndSize.java:60)
в org.apache.pdfbox.contentstream.PDFStreamEngine.processOperator (PDFStreamEngine.java:869)
в org.apache.pdfbox.contentstream.PDFStreamEngine.processStreamOperators (PDFStreamEngine.java:505)
в org.apache.pdfbox.contentstream.PDFStreamEngine.processStream (PDFStreamEngine.java:479)
в org.apache.pdfbox.contentstream.PDFStreamEngine.processPage (PDFStreamEngine.java:152)
в org.apache.pdfbox.text.LegacyPDFStreamEngine.processPage (LegacyPDFStreamEngine.java:139)
в org.apache.pdfbox.text.PDFTextStripper.processPage (PDFTextStripper.java:391)
в org.apache.pdfbox.text.PDFTextStripper.processPages (PDFTextStripper.java:319)
в org.apache.pdfbox.text.PDFTextStripper.writeText (PDFTextStripper.java:266)
в org.apache.pdfbox.text.PDFTextStripper.getText (PDFTextStripper.java:227)
в com.testautomationguru.utility.PDFUtil.getPDFText (PDFUtil.java:236)
в com.testautomationguru.utility.PDFUtil.getText (PDFUtil.java:192)
at test.pdfFile.PDFUtilTest1.main (PDFUtilTest1.java:21)