if (mOutputType == POSTSCRIPT_GEOMETRY)
if (mOutputType == POSTSCRIPT_GEOMETRY || mOutputType == PDF)
	public StringDimension getStringDimension(String s, String fontName, double fontSize)		throws IOException, MapyrusException	{		StringDimension retval = new StringDimension();		BufferedReader stringReader = new BufferedReader(new StringReader(s));		double width = 0, height = 0;		String token;		double tokenWidth;		/*		 * Break multi-line strings into separate lines so we		 * can find the width of the longest line.		 */		while ((token = stringReader.readLine()) != null)		{			if (mOutputType == POSTSCRIPT_GEOMETRY)			{				/*				 * Load Font Metrics information only when it is needed.				 */				if (mAdobeFontMetrics == null)					mAdobeFontMetrics = new AdobeFontMetricsManager(mAfmFiles, mEncodeAsISOLatin1);					double pointSize = fontSize / Constants.MM_PER_INCH * Constants.POINTS_PER_INCH;				tokenWidth = mAdobeFontMetrics.getStringWidth(fontName, pointSize, token);				tokenWidth = tokenWidth / Constants.POINTS_PER_INCH * Constants.MM_PER_INCH;				if (tokenWidth > width)					width = tokenWidth;				height += fontSize;			}			else			{				/*				 * Use Java2D calculation for bounding box of string displayed with				 * horizontal font.				 */				FontRenderContext frc = mGraphics2D.getFontRenderContext();				Rectangle2D bounds = mBaseFont.getStringBounds(token, frc);				tokenWidth = bounds.getWidth();				if (tokenWidth > width)					width = tokenWidth;				height += bounds.getHeight();			}		}		retval.setSize(width, height);		return(retval);	}