private void drawCharacter(byte charPixels[], int x, int y, int width, int height, int color) {
		int offset = x + y * RSDrawingArea.width;
		int k1 = RSDrawingArea.width - width;
		int l1 = 0;
		int pixel = 0;
		if (y < RSDrawingArea.startY) {
			int offsetY = RSDrawingArea.startY - y;
			height -= offsetY;
			y = RSDrawingArea.startY;
			pixel += offsetY * width;
			offset += offsetY * RSDrawingArea.width;
		}
		if (y + height >= RSDrawingArea.endY) {
			height -= ((y + height) - RSDrawingArea.endY);
		}
		if (x < RSDrawingArea.startX) {
			int offsetX = RSDrawingArea.startX - x;
			width -= offsetX;
			x = RSDrawingArea.startX;
			pixel += offsetX;
			offset += offsetX;
			l1 += offsetX;
			k1 += offsetX;
		}
		if (x + width >= RSDrawingArea.endX) {
			int l2 = ((x + width) - RSDrawingArea.endX);
			width -= l2;
			l1 += l2;
			k1 += l2;
		}
		if (!(width <= 0 || height <= 0)) {
			createPixels(RSDrawingArea.pixels, charPixels, color, pixel, offset, width, height, k1, l1);
		}
	}