Skip to content

Commit 2501c0d

Browse files
committed
Make lower/upper casing locale independent
DEVSIX-9092
1 parent 78b9822 commit 2501c0d

File tree

4 files changed

+14
-12
lines changed

4 files changed

+14
-12
lines changed

pdfocr-tesseract4/src/main/java/com/itextpdf/pdfocr/tesseract4/AbstractTesseract4OcrEngine.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ This file is part of the iText (R) project.
2727
import com.itextpdf.commons.actions.contexts.IMetaInfo;
2828
import com.itextpdf.commons.actions.data.ProductData;
2929
import com.itextpdf.commons.utils.MessageFormatUtil;
30+
import com.itextpdf.commons.utils.StringNormalizer;
3031
import com.itextpdf.io.image.ImageType;
3132
import com.itextpdf.pdfocr.AbstractPdfOcrEventHelper;
3233
import com.itextpdf.pdfocr.IOcrEngine;
@@ -315,7 +316,7 @@ public final String doImageOcr(final File input,
315316
* @return boolean true is current os is windows, otherwise - false
316317
*/
317318
public boolean isWindows() {
318-
return identifyOsType().toLowerCase().contains("win");
319+
return StringNormalizer.toLowerCase(identifyOsType()).contains("win");
319320
}
320321

321322
/**
@@ -326,7 +327,7 @@ public boolean isWindows() {
326327
public String identifyOsType() {
327328
String os = System.getProperty("os.name") == null
328329
? System.getProperty("OS") : System.getProperty("os.name");
329-
return os.toLowerCase();
330+
return StringNormalizer.toLowerCase(os);
330331
}
331332

332333
/**

pdfocr-tesseract4/src/main/java/com/itextpdf/pdfocr/tesseract4/Tesseract4ExecutableOcrEngine.java

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,12 @@ This file is part of the iText (R) project.
2525
import com.itextpdf.commons.actions.confirmations.ConfirmEvent;
2626
import com.itextpdf.commons.actions.confirmations.EventConfirmationType;
2727
import com.itextpdf.commons.utils.MessageFormatUtil;
28+
import com.itextpdf.commons.utils.StringNormalizer;
29+
import com.itextpdf.pdfocr.AbstractPdfOcrEventHelper;
30+
import com.itextpdf.pdfocr.tesseract4.actions.events.PdfOcrTesseract4ProductEvent;
31+
import com.itextpdf.pdfocr.tesseract4.exceptions.PdfOcrTesseract4Exception;
32+
import com.itextpdf.pdfocr.tesseract4.exceptions.PdfOcrTesseract4ExceptionMessageConstant;
33+
import com.itextpdf.pdfocr.tesseract4.logs.Tesseract4LogMessageConstant;
2834

2935
import java.awt.image.BufferedImage;
3036
import java.io.File;
@@ -35,13 +41,6 @@ This file is part of the iText (R) project.
3541
import java.util.Collections;
3642
import java.util.List;
3743
import java.util.UUID;
38-
39-
import com.itextpdf.pdfocr.AbstractPdfOcrEventHelper;
40-
import com.itextpdf.pdfocr.tesseract4.actions.events.PdfOcrTesseract4ProductEvent;
41-
import com.itextpdf.pdfocr.tesseract4.exceptions.PdfOcrTesseract4Exception;
42-
import com.itextpdf.pdfocr.tesseract4.exceptions.PdfOcrTesseract4ExceptionMessageConstant;
43-
import com.itextpdf.pdfocr.tesseract4.logs.Tesseract4LogMessageConstant;
44-
4544
import net.sourceforge.lept4j.Pix;
4645
import org.slf4j.LoggerFactory;
4746

@@ -478,7 +477,7 @@ private String getExtension(File inputImage) {
478477
String extension = new String(
479478
inputImage.getAbsolutePath().toCharArray(), index,
480479
inputImage.getAbsolutePath().length() - index);
481-
return extension.toLowerCase();
480+
return StringNormalizer.toLowerCase(extension);
482481
}
483482
}
484483
return ".png";

pdfocr-tesseract4/src/main/java/com/itextpdf/pdfocr/tesseract4/Tesseract4OcrEngineProperties.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ This file is part of the iText (R) project.
2424

2525
import com.itextpdf.commons.utils.FileUtil;
2626
import com.itextpdf.commons.utils.MessageFormatUtil;
27+
import com.itextpdf.commons.utils.StringNormalizer;
2728
import com.itextpdf.pdfocr.IOcrEngine;
2829
import com.itextpdf.pdfocr.OcrEngineProperties;
2930
import com.itextpdf.pdfocr.tesseract4.exceptions.PdfOcrTesseract4Exception;
@@ -328,7 +329,7 @@ Tesseract4OcrEngineProperties setUserWords(final String language,
328329
final InputStream inputStream) throws PdfOcrTesseract4Exception {
329330
setPathToUserWordsFile(null);
330331
if (!getLanguages().contains(language)) {
331-
if (DEFAULT_LANGUAGE.equals(language.toLowerCase())) {
332+
if (DEFAULT_LANGUAGE.equals(StringNormalizer.toLowerCase(language))) {
332333
List<String> languagesList = getLanguages();
333334
languagesList.add(language);
334335
setLanguages(languagesList);

pdfocr-tesseract4/src/test/java/com/itextpdf/pdfocr/imageformats/ImageFormatIntegrationTest.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ This file is part of the iText (R) project.
2323
package com.itextpdf.pdfocr.imageformats;
2424

2525
import com.itextpdf.commons.utils.MessageFormatUtil;
26+
import com.itextpdf.commons.utils.StringNormalizer;
2627
import com.itextpdf.kernel.colors.DeviceCmyk;
2728
import com.itextpdf.kernel.utils.CompareTool;
2829
import com.itextpdf.pdfocr.IntegrationTestHelper;
@@ -49,7 +50,7 @@ public abstract class ImageFormatIntegrationTest extends IntegrationTestHelper {
4950

5051
public ImageFormatIntegrationTest(ReaderType type) {
5152
tesseractReader = getTesseractReader(type);
52-
this.testType = type.toString().toLowerCase();
53+
this.testType = StringNormalizer.toLowerCase(type.toString());
5354
}
5455

5556
@BeforeEach

0 commit comments

Comments
 (0)