package com.pdfjet; class StandardFont { protected String name; protected int bBoxLLx; protected int bBoxLLy; protected int bBoxURx; protected int bBoxURy; protected int underlinePosition; protected int underlineThickness; protected int[][] metrics; protected static StandardFont getInstance(CoreFont coreFont) { StandardFont font = new StandardFont(); switch (coreFont) { case COURIER: font.name = Courier.name; font.bBoxLLx = Courier.bBoxLLx; font.bBoxLLy = Courier.bBoxLLy; font.bBoxURx = Courier.bBoxURx; font.bBoxURy = Courier.bBoxURy; font.underlinePosition = Courier.underlinePosition; font.underlineThickness = Courier.underlineThickness; font.metrics = Courier.metrics; break; case COURIER_BOLD: font.name = Courier_Bold.name; font.bBoxLLx = Courier_Bold.bBoxLLx; font.bBoxLLy = Courier_Bold.bBoxLLy; font.bBoxURx = Courier_Bold.bBoxURx; font.bBoxURy = Courier_Bold.bBoxURy; font.underlinePosition = Courier_Bold.underlinePosition; font.underlineThickness = Courier_Bold.underlineThickness; font.metrics = Courier_Bold.metrics; break; case COURIER_OBLIQUE: font.name = Courier_Oblique.name; font.bBoxLLx = Courier_Oblique.bBoxLLx; font.bBoxLLy = Courier_Oblique.bBoxLLy; font.bBoxURx = Courier_Oblique.bBoxURx; font.bBoxURy = Courier_Oblique.bBoxURy; font.underlinePosition = Courier_Oblique.underlinePosition; font.underlineThickness = Courier_Oblique.underlineThickness; font.metrics = Courier_Oblique.metrics; break; case COURIER_BOLD_OBLIQUE: font.name = Courier_BoldOblique.name; font.bBoxLLx = Courier_BoldOblique.bBoxLLx; font.bBoxLLy = Courier_BoldOblique.bBoxLLy; font.bBoxURx = Courier_BoldOblique.bBoxURx; font.bBoxURy = Courier_BoldOblique.bBoxURy; font.underlinePosition = Courier_BoldOblique.underlinePosition; font.underlineThickness = Courier_BoldOblique.underlineThickness; font.metrics = Courier_BoldOblique.metrics; break; case HELVETICA: font.name = Helvetica.name; font.bBoxLLx = Helvetica.bBoxLLx; font.bBoxLLy = Helvetica.bBoxLLy; font.bBoxURx = Helvetica.bBoxURx; font.bBoxURy = Helvetica.bBoxURy; font.underlinePosition = Helvetica.underlinePosition; font.underlineThickness = Helvetica.underlineThickness; font.metrics = Helvetica.metrics; break; case HELVETICA_BOLD: font.name = Helvetica_Bold.name; font.bBoxLLx = Helvetica_Bold.bBoxLLx; font.bBoxLLy = Helvetica_Bold.bBoxLLy; font.bBoxURx = Helvetica_Bold.bBoxURx; font.bBoxURy = Helvetica_Bold.bBoxURy; font.underlinePosition = Helvetica_Bold.underlinePosition; font.underlineThickness = Helvetica_Bold.underlineThickness; font.metrics = Helvetica_Bold.metrics; break; case HELVETICA_OBLIQUE: font.name = Helvetica_Oblique.name; font.bBoxLLx = Helvetica_Oblique.bBoxLLx; font.bBoxLLy = Helvetica_Oblique.bBoxLLy; font.bBoxURx = Helvetica_Oblique.bBoxURx; font.bBoxURy = Helvetica_Oblique.bBoxURy; font.underlinePosition = Helvetica_Oblique.underlinePosition; font.underlineThickness = Helvetica_Oblique.underlineThickness; font.metrics = Helvetica_Oblique.metrics; break; case HELVETICA_BOLD_OBLIQUE: font.name = Helvetica_BoldOblique.name; font.bBoxLLx = Helvetica_BoldOblique.bBoxLLx; font.bBoxLLy = Helvetica_BoldOblique.bBoxLLy; font.bBoxURx = Helvetica_BoldOblique.bBoxURx; font.bBoxURy = Helvetica_BoldOblique.bBoxURy; font.underlinePosition = Helvetica_BoldOblique.underlinePosition; font.underlineThickness = Helvetica_BoldOblique.underlineThickness; font.metrics = Helvetica_BoldOblique.metrics; break; case TIMES_ROMAN: font.name = Times_Roman.name; font.bBoxLLx = Times_Roman.bBoxLLx; font.bBoxLLy = Times_Roman.bBoxLLy; font.bBoxURx = Times_Roman.bBoxURx; font.bBoxURy = Times_Roman.bBoxURy; font.underlinePosition = Times_Roman.underlinePosition; font.underlineThickness = Times_Roman.underlineThickness; font.metrics = Times_Roman.metrics; break; case TIMES_BOLD: font.name = Times_Bold.name; font.bBoxLLx = Times_Bold.bBoxLLx; font.bBoxLLy = Times_Bold.bBoxLLy; font.bBoxURx = Times_Bold.bBoxURx; font.bBoxURy = Times_Bold.bBoxURy; font.underlinePosition = Times_Bold.underlinePosition; font.underlineThickness = Times_Bold.underlineThickness; font.metrics = Times_Bold.metrics; break; case TIMES_ITALIC: font.name = Times_Italic.name; font.bBoxLLx = Times_Italic.bBoxLLx; font.bBoxLLy = Times_Italic.bBoxLLy; font.bBoxURx = Times_Italic.bBoxURx; font.bBoxURy = Times_Italic.bBoxURy; font.underlinePosition = Times_Italic.underlinePosition; font.underlineThickness = Times_Italic.underlineThickness; font.metrics = Times_Italic.metrics; break; case TIMES_BOLD_ITALIC: font.name = Times_BoldItalic.name; font.bBoxLLx = Times_BoldItalic.bBoxLLx; font.bBoxLLy = Times_BoldItalic.bBoxLLy; font.bBoxURx = Times_BoldItalic.bBoxURx; font.bBoxURy = Times_BoldItalic.bBoxURy; font.underlinePosition = Times_BoldItalic.underlinePosition; font.underlineThickness = Times_BoldItalic.underlineThickness; font.metrics = Times_BoldItalic.metrics; break; case SYMBOL: font.name = Symbol.name; font.bBoxLLx = Symbol.bBoxLLx; font.bBoxLLy = Symbol.bBoxLLy; font.bBoxURx = Symbol.bBoxURx; font.bBoxURy = Symbol.bBoxURy; font.underlinePosition = Symbol.underlinePosition; font.underlineThickness = Symbol.underlineThickness; font.metrics = Symbol.metrics; break; case ZAPF_DINGBATS: font.name = ZapfDingbats.name; font.bBoxLLx = ZapfDingbats.bBoxLLx; font.bBoxLLy = ZapfDingbats.bBoxLLy; font.bBoxURx = ZapfDingbats.bBoxURx; font.bBoxURy = ZapfDingbats.bBoxURy; font.underlinePosition = ZapfDingbats.underlinePosition; font.underlineThickness = ZapfDingbats.underlineThickness; font.metrics = ZapfDingbats.metrics; break; } return font; } }