11package com .itextpdf .kernel .pdf .canvas ;
22
33import com .itextpdf .io .LogMessageConstant ;
4- import com .itextpdf .io .font .otf .Glyph ;
5- import com .itextpdf .io .util .Utilities ;
64import com .itextpdf .io .font .CidFont ;
75import com .itextpdf .io .font .FontConstants ;
86import com .itextpdf .io .font .FontFactory ;
97import com .itextpdf .io .font .TrueTypeCollection ;
108import com .itextpdf .io .font .TrueTypeFont ;
119import com .itextpdf .io .font .Type1Font ;
1210import com .itextpdf .io .source .ByteArrayOutputStream ;
11+ import com .itextpdf .io .util .Utilities ;
1312import com .itextpdf .kernel .color .DeviceRgb ;
1413import com .itextpdf .kernel .font .PdfFont ;
1514import com .itextpdf .kernel .font .PdfFontFactory ;
2524import com .itextpdf .kernel .pdf .PdfReader ;
2625import com .itextpdf .kernel .pdf .PdfWriter ;
2726import com .itextpdf .kernel .utils .CompareTool ;
28- import com .itextpdf .test .annotations .type .IntegrationTest ;
2927import com .itextpdf .test .ExtendedITextTest ;
3028import com .itextpdf .test .annotations .LogMessage ;
3129import com .itextpdf .test .annotations .LogMessages ;
30+ import com .itextpdf .test .annotations .type .IntegrationTest ;
3231
3332import java .io .FileInputStream ;
3433import java .io .FileOutputStream ;
@@ -1232,6 +1231,32 @@ public void testWriteTTC() throws IOException, InterruptedException {
12321231
12331232 }
12341233
1234+ @ Test
1235+ public void testNotoFont () throws IOException , InterruptedException {
1236+ String filename = destinationFolder + "testNotoFont.pdf" ;
1237+ String cmpFilename = sourceFolder + "cmp_testNotoFont.pdf" ;
1238+
1239+ String japanese = "\u713C " ;
1240+
1241+ PdfDocument doc = new PdfDocument (new PdfWriter (filename ));
1242+ PdfPage page = doc .addNewPage ();
1243+
1244+ PdfFont font = PdfFontFactory .createFont (fontsFolder + "NotoSansCJKjp-Bold.otf" , "Identity-H" , true );
1245+
1246+ PdfCanvas canvas = new PdfCanvas (page );
1247+ canvas .saveState ()
1248+ .beginText ()
1249+ .moveText (36 , 680 )
1250+ .setFontAndSize (font , 12 )
1251+ .showText (japanese )
1252+ .endText ()
1253+ .restoreState ();
1254+
1255+ doc .close ();
1256+ Assert .assertNull (new CompareTool ().compareByContent (filename , cmpFilename , destinationFolder , "diff_" ));
1257+ }
1258+
1259+
12351260 @ Test
12361261 @ Ignore ("Invalid subset" )
12371262 public void NotoSansCJKjpTest () throws IOException , InterruptedException {
@@ -1242,8 +1267,8 @@ public void NotoSansCJKjpTest() throws IOException, InterruptedException {
12421267 PdfDocument doc = new PdfDocument (writer );
12431268 PdfPage page = doc .addNewPage ();
12441269 // Identity-H must be embedded
1245- PdfFont font = PdfFontFactory .createFont (sourceFolder + "NotoSansCJKjp-Bold.otf" , "Identity-H" );
1246- //font.setSubset(false);
1270+ PdfFont font = PdfFontFactory .createFont (fontsFolder + "NotoSansCJKjp-Bold.otf" /*"san.otf"*/ , "Identity-H" );
1271+ // font.setSubset(false);
12471272 PdfCanvas canvas = new PdfCanvas (page );
12481273 canvas .saveState ()
12491274 .setFillColor (DeviceRgb .GREEN )
0 commit comments