InitialObjectDescriptor { objectDescriptorID 1 audioProfileLevelIndication 1 visualProfileLevelIndication 1 sceneProfileLevelIndication 1 graphicsProfileLevelIndication 1 ODProfileLevelIndication 1 esDescr [ ES_Descriptor { ES_ID 2 decConfigDescr DecoderConfigDescriptor { streamType 3 decSpecificInfo BIFSv2Config { isCommandStream true pixelMetric true pixelWidth 480 pixelHeight 360 } } } ] } OrderedGroup { children [ Background2D { backColor 1 1 1 } WorldInfo { info ["This test shows glyphs, along with their bounding boxes, the font baseline, the word bounding box and the two-lines text bounding box" "If the Arial font is found and used, bounding-boxes should be properly positioned" "" "GPAC Regression Tests" "(C) 2002-2006 GPAC Team"] title "Text bounding boxes test" } Transform2D { translation -140 80 children [ Transform2D { scale 0.048828125 0.048828125 children [ # Em Box Y Axis Shape { appearance DEF A1 Appearance { material Material2D { filled FALSE lineProps LineProperties { width 1 lineColor 0 0 0 } } } geometry IndexedLineSet2D { coord Coordinate2D { point [ 0 -4000 0 1491 ] } } } # Baseline DEF BASELINE Shape { appearance USE A1 geometry IndexedLineSet2D { coord Coordinate2D { point [ 0 0 8000 0 ] } } } # bounding box for glyph a Transform2D { translation 0 0 children [ Shape { appearance DEF A2 Appearance { material Material2D { filled FALSE lineProps LineProperties { width 1 lineColor 1 0 0 } } } geometry IndexedFaceSet2D { coord Coordinate2D { point [ 74 -24 1052 -24 1052 1086 74 1086 ] } } } ] } # bounding box for glyph b Transform2D { translation 1139 0 children [ Shape { appearance USE A2 geometry IndexedFaceSet2D { coord Coordinate2D { point [ 134 -24 1055 -24 1055 1466 134 1466 ] } } } ] } # bounding box for glyph c Transform2D { translation 2278 0 children [ Shape { appearance USE A2 geometry IndexedFaceSet2D { coord Coordinate2D { point [ 80 -24 1005 -24 1005 1086 80 1086 ] } } } ] } # bounding box for glyph d Transform2D { translation 3302 0 children [ Shape { appearance USE A2 geometry IndexedFaceSet2D { coord Coordinate2D { point [ 70 -24 991 -24 991 1466 70 1466 ] } } } ] } # bounding box for glyph e Transform2D { translation 4441 0 children [ Shape { appearance USE A2 geometry IndexedFaceSet2D { coord Coordinate2D { point [ 75 -24 1054 -24 1054 1086 75 1086 ] } } } ] } # bounding box for glyph f Transform2D { translation 5580 0 children [ Shape { appearance USE A2 geometry IndexedFaceSet2D { coord Coordinate2D { point [ 19 0 640 0 640 1491 19 1491 ] } } } ] } # bounding box for glyph g Transform2D { translation 6149 0 children [ Shape { appearance USE A2 geometry IndexedFaceSet2D { coord Coordinate2D { point [ 66 -431 1002 -431 1002 1086 66 1086 ] } } } ] } # bounding box for the first line Transform2D { translation 0 0 children [ Shape { appearance DEF A3 Appearance { material Material2D { filled FALSE lineProps LineProperties { width 1 lineColor 0 0.5 0 } } } geometry IndexedFaceSet2D { coord Coordinate2D { point [ 74 -431 74 1491 7151 1491 7151 -431 ] } } } ] } Transform2D { translation 0 -2048 children [ USE BASELINE # bounding box for glyph h Transform2D { translation 0 0 children [ Shape { appearance USE A2 geometry IndexedFaceSet2D { coord Coordinate2D { point [ 135 0 1000 0 1000 1466 135 1466 ] } } } ] } # bounding box for glyph i Transform2D { translation 1139 0 children [ Shape { appearance USE A2 geometry IndexedFaceSet2D { coord Coordinate2D { point [ 136 0 316 0 316 1466 136 1466 ] } } } ] } # bounding box for glyph j Transform2D { translation 1594 0 children [ Shape { appearance USE A2 geometry IndexedFaceSet2D { coord Coordinate2D { point [ -94 -431 314 -431 314 1466 -94 1466 ] } } } ] } # bounding box for glyph k Transform2D { translation 2049 0 children [ Shape { appearance USE A2 geometry IndexedFaceSet2D { coord Coordinate2D { point [ 136 0 1016 0 1016 1466 136 1466 ] } } } ] } # bounding box for glyph l Transform2D { translation 3087 0 children [ Shape { appearance USE A2 geometry IndexedFaceSet2D { coord Coordinate2D { point [ 131 0 311 0 311 1466 131 1466 ] } } } ] } # bounding box for glyph m Transform2D { translation 3542 0 children [ Shape { appearance USE A2 geometry IndexedFaceSet2D { coord Coordinate2D { point [ 135 0 1574 0 1574 1086 135 1086 ] } } } ] } # bounding box for glyph n Transform2D { translation 5248 0 children [ Shape { appearance USE A2 geometry IndexedFaceSet2D { coord Coordinate2D { point [ 135 0 998 0 998 1086 135 1086 ] } } } ] } # bounding box for glyph o Transform2D { translation 6387 0 children [ Shape { appearance USE A2 geometry IndexedFaceSet2D { coord Coordinate2D { point [ 68 -24 1063 -24 1063 1086 68 1086 ] } } } ] } # bounding box for the second line Transform2D { translation 0 0 children [ Shape { appearance USE A3 geometry IndexedFaceSet2D { coord Coordinate2D { point [ 135 -431 135 1466 7436 1466 7436 -431 ] } } } ] } ] } # bounding box for the whole text Transform2D { translation 0 0 children [ Shape { appearance Appearance { material Material2D { filled FALSE lineProps LineProperties { width 1 lineColor 1 1 0 } } } geometry IndexedFaceSet2D { coord Coordinate2D { point [ 74 1491 7436 1491 7436 -2479 74 -2479 ] } } } ] } ] } Shape { appearance Appearance { material Material2D { emissiveColor 0 0 0 filled TRUE } } geometry Text { string [ "abcdefg" "hijklmno"] fontStyle FontStyle { family ["Arial"] justify ["BEGIN" "FIRST"] size 100 } } } ] } ] }