&& isCharacterShaped(gc)
private void prepareBoldText(String textline, int logicalStart, int length) {	int byteCount = length;	int flags = 0;	String text = textline.substring(logicalStart, logicalStart + length);	// figure out what is before and after the substring	// so that the proper character shaping will occur	if (logicalStart != 0  		&& !Compatibility.isWhitespace(textline.charAt(logicalStart - 1)) 		&& isRightToLeft(logicalStart - 1)) {		// if the start of the substring is not the beginning of the 		// text line, check to see what is before the string		flags |= BidiUtil.LINKBEFORE;	}	if ((logicalStart + byteCount) != dx.length 		&& !Compatibility.isWhitespace(textline.charAt(logicalStart + byteCount)) 		&& isRightToLeft(logicalStart + byteCount)) {		// if the end of the substring is not the end of the text line,		// check to see what is after the substring		flags |= BidiUtil.LINKAFTER;	}			// set classification values for the substring	flags |= BidiUtil.CLASSIN;	byte[] classArray = new byte[byteCount];	int[] renderIndexes = getRenderIndexesFor(logicalStart, byteCount);	for (int i = 0; i < byteCount; i++) {		classArray[i] = classBuffer[renderIndexes[i]];	}	int[] dxArray = new int[byteCount];	int[] orderArray = new int[byteCount];		BidiUtil.getRenderInfo(gc, text, orderArray, classArray, dxArray, flags);	// update the existing dx array with the new dx values based on the bold font	for (int i = 0; i < dxArray.length; i++) {		int dxValue = dxArray[orderArray[i]];		int visualIndex = renderIndexes[i];		dx[visualIndex] = dxValue;	}}