Beispiel #1
0
func writeInvGr(s string, x, y int) {
	//
	z.ToHellWithUTF8(&s)
	n := len(s)
	if n == 0 {
		return
	}
	if underX {
		xker.WriteInvert(s, x, y, transparent)
		return
	}
	if !visible || x < 0 || y < 0 {
		return
	}
	for i := 0; i < n; i++ {
		write1InvGr(s[i], x+i*int(actualCharwidth), y)
	}
}
Beispiel #2
0
func write1InvGr(Z byte, x, y int) {
	//
	if underX {
		t := string(Z)
		z.ToHellWithUTF8(&t)
		xker.WriteInvert(t, x, y, transparent)
		return
	}
	if !visible || x < 0 || x >= int(nX[mode]-actualCharwidth) ||
		y < 0 || y >= int(nY[mode]-actualCharheight) {
		return
	}
	for Y := uint(0); Y < actualCharheight; Y++ {
		for X := uint(0); X < actualCharwidth; X++ {
			if pointed(actualFontsize, Z, Y, X) {
				pointInv(x+int(X), y+int(Y))
			} else if !transparent {
				pointInv(x+int(X), y+int(Y))
			}
		}
	}
}