You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by ti...@apache.org on 2023/12/11 08:51:06 UTC
svn commit: r1914530 - /pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdmodel/font/TestFontEmbedding.java
Author: tilman
Date: Mon Dec 11 08:51:06 2023
New Revision: 1914530
URL: http://svn.apache.org/viewvc?rev=1914530&view=rev
Log:
PDFBOX-5729: add for Gujarati
Modified:
pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdmodel/font/TestFontEmbedding.java
Modified: pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdmodel/font/TestFontEmbedding.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdmodel/font/TestFontEmbedding.java?rev=1914530&r1=1914529&r2=1914530&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdmodel/font/TestFontEmbedding.java (original)
+++ pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdmodel/font/TestFontEmbedding.java Mon Dec 11 08:51:06 2023
@@ -299,6 +299,52 @@ class TestFontEmbedding
//assertEquals(expectedExtractedtext, extracted.replaceAll("\r", "").trim());
}
+ @Test
+ void testGujarati() throws IOException
+ {
+ String GUJARATI_TEXT = "દરà«àª વà«àª¯àªà«àª¤àª¿àª¨à« શિàªà«àª·àª£àª¨à« àª
ધિàªàª¾àª° àªà«";
+
+ String expectedExtractedtext = GUJARATI_TEXT;
+ File pdf = new File(OUT_DIR, "Gujarati.pdf");
+
+ try (PDDocument document = new PDDocument())
+ {
+ PDPage page = new PDPage(PDRectangle.A4);
+ document.addPage(page);
+ PDFont font = PDType0Font.load(document,
+ this.getClass().getResourceAsStream("/org/apache/pdfbox/ttf/Lohit-Gujarati.ttf"));
+
+ try (PDPageContentStream contentStream = new PDPageContentStream(document, page))
+ {
+ contentStream.beginText();
+ contentStream.setFont(font, 35);
+ contentStream.newLineAtOffset(50, 700);
+ contentStream.showText(GUJARATI_TEXT);
+ contentStream.endText();
+ }
+
+ document.save(pdf);
+ }
+
+ File IN_DIR = new File("src/test/resources/org/apache/pdfbox/ttf");
+
+ // compare rendering
+ if (!TestPDFToImage.doTestFile(pdf, IN_DIR.getAbsolutePath(), OUT_DIR.getAbsolutePath()))
+ {
+ // don't fail, rendering is different on different systems, result must be viewed manually
+ System.err.println("Rendering of " + pdf + " failed or is not identical to expected rendering in " + IN_DIR + " directory");
+ }
+
+ // Check text extraction
+ String extracted = getUnicodeText(pdf);
+
+ try (OutputStream os = new FileOutputStream(new File(OUT_DIR, "Gujarati.txt")))
+ {
+ os.write(extracted.getBytes(StandardCharsets.UTF_8));
+ //assertEquals(expectedExtractedtext, extracted.replaceAll("\r", "").trim());
+ }
+ }
+
/**
* Test corner case of PDFBOX-4302.
*