RED-9746: Document hardly editable
* fix pmd
This commit is contained in:
parent
dc970a64f3
commit
5e00420f4d
@ -40,47 +40,48 @@ public class GlyphExtractionTest {
|
||||
|
||||
List<List<TextFeatures>> textsPerPage;
|
||||
List<List<ImageFeatures>> imagesPerPage;
|
||||
try (var in = this.getClass().getClassLoader().getResourceAsStream(file)) {
|
||||
try (var in = Thread.currentThread().getContextClassLoader().getResourceAsStream(file)) {
|
||||
textsPerPage = PdfTextExtraction.extractAllGlyphsFromDocument(in, true);
|
||||
}
|
||||
try (var in = this.getClass().getClassLoader().getResourceAsStream(file)) {
|
||||
try (var in = Thread.currentThread().getContextClassLoader().getResourceAsStream(file)) {
|
||||
imagesPerPage = PdfImageExtraction.extractImages(in);
|
||||
}
|
||||
try (var in = this.getClass().getClassLoader().getResourceAsStream(file);//
|
||||
try (var in = Thread.currentThread().getContextClassLoader().getResourceAsStream(file);//
|
||||
var out = new FileOutputStream(Path.of("/tmp/").resolve(Path.of(file).getFileName() + "_GLYPHS.pdf").toFile())) {
|
||||
|
||||
PDFDoc pdfDoc = new PDFDoc(in);
|
||||
for (int i = 0; i < pdfDoc.getPageCount(); i++) {
|
||||
Page page = pdfDoc.getPage(i + 1);
|
||||
List<TextFeatures> textFeaturesOnPage = textsPerPage.get(i);
|
||||
List<ImageFeatures> imageFeaturesOnPage = imagesPerPage.get(i);
|
||||
try (ElementWriter writer = new ElementWriter(); ElementBuilder builder = new ElementBuilder()) {
|
||||
writer.begin(page, ElementWriter.e_overlay, false);
|
||||
try (PDFDoc pdfDoc = new PDFDoc(in)) {
|
||||
for (int i = 0; i < pdfDoc.getPageCount(); i++) {
|
||||
Page page = pdfDoc.getPage(i + 1);
|
||||
List<TextFeatures> textFeaturesOnPage = textsPerPage.get(i);
|
||||
List<ImageFeatures> imageFeaturesOnPage = imagesPerPage.get(i);
|
||||
try (ElementWriter writer = new ElementWriter(); ElementBuilder builder = new ElementBuilder()) {
|
||||
writer.begin(page, ElementWriter.e_overlay, false);
|
||||
|
||||
for (ImageFeatures imageFeatures : imageFeaturesOnPage) {
|
||||
if (imageFeatures.getBoundingBox().getHeight() * imageFeatures.getBoundingBox().getWidth() >= page.getPageHeight() * page.getPageWidth() * 0.8) {
|
||||
continue;
|
||||
}
|
||||
drawRect(imageFeatures.getBoundingBox(), builder, writer, Color.CYAN, true);
|
||||
}
|
||||
for (TextFeatures textFeatures : textFeaturesOnPage) {
|
||||
|
||||
drawRect(textFeatures.getBoundingBox(), builder, writer, Color.BLUE);
|
||||
|
||||
for (GlyphInfo glyph : textFeatures.getGlyphs()) {
|
||||
|
||||
if (glyph.getPathData().isPresent()) {
|
||||
drawPathData(glyph.getPathData().get(), builder, writer, Color.BLACK);
|
||||
for (ImageFeatures imageFeatures : imageFeaturesOnPage) {
|
||||
if (imageFeatures.getBoundingBox().getHeight() * imageFeatures.getBoundingBox().getWidth() >= page.getPageHeight() * page.getPageWidth() * 0.8) {
|
||||
continue;
|
||||
}
|
||||
drawRect(ComparisonUtils.shrinkRectangle(glyph.getBbox()), builder, writer, Color.RED);
|
||||
drawRect(glyph.getBbox(), builder, writer, Color.MAGENTA);
|
||||
|
||||
drawRect(imageFeatures.getBoundingBox(), builder, writer, Color.CYAN, true);
|
||||
}
|
||||
for (TextFeatures textFeatures : textFeaturesOnPage) {
|
||||
|
||||
drawRect(textFeatures.getBoundingBox(), builder, writer, Color.BLUE);
|
||||
|
||||
for (GlyphInfo glyph : textFeatures.getGlyphs()) {
|
||||
|
||||
if (glyph.getPathData().isPresent()) {
|
||||
drawPathData(glyph.getPathData().get(), builder, writer, Color.BLACK);
|
||||
}
|
||||
drawRect(ComparisonUtils.shrinkRectangle(glyph.getBbox()), builder, writer, Color.RED);
|
||||
drawRect(glyph.getBbox(), builder, writer, Color.MAGENTA);
|
||||
|
||||
}
|
||||
}
|
||||
writer.end();
|
||||
}
|
||||
writer.end();
|
||||
}
|
||||
pdfDoc.save(out, SDFDoc.SaveMode.LINEARIZED, null);
|
||||
}
|
||||
pdfDoc.save(out, SDFDoc.SaveMode.LINEARIZED, null);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -113,8 +113,8 @@ public class VisualEqualityTest {
|
||||
Path processedFile = fileFolder.resolve("processed.pdf");
|
||||
Path deltaFile = fileFolder.resolve("delta.pdf");
|
||||
Path savedOriginFile = fileFolder.resolve("origin.pdf");
|
||||
try (var in = new FileInputStream(originFile.toFile()); var out = new FileOutputStream(savedOriginFile.toFile())) {
|
||||
PDFDoc pdfDoc = new PDFDoc(in);
|
||||
|
||||
try (var in = new FileInputStream(originFile.toFile()); PDFDoc pdfDoc = new PDFDoc(in); var out = new FileOutputStream(savedOriginFile.toFile())) {
|
||||
pdfDoc.save(out, SDFDoc.SaveMode.LINEARIZED, null);
|
||||
}
|
||||
|
||||
@ -226,7 +226,7 @@ public class VisualEqualityTest {
|
||||
return boxes;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
private static Boxa pushRectsIntoBoxa(List<Rectangle2D> rects) {
|
||||
|
||||
Boxa boxa = new Boxa();
|
||||
@ -247,6 +247,7 @@ public class VisualEqualityTest {
|
||||
return boxa;
|
||||
}
|
||||
|
||||
*/
|
||||
|
||||
private record Context(Path outFolder, Map<Path, FailedFile> failedFiles) {
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user