package harfbuzz

// https://developer.apple.com/documentation/coretext/1508745-ctfontcreatewithgraphicsfont
const coretextDefaultFontSize = 12.

func ( *Font) ( float32) Position {
	 := .Ptem
	if  <= 0. {
		 = coretextDefaultFontSize
	}
	 := .face.Trak.Horiz.GetTracking(, )
	return .emScalefX()
}

func ( *Font) ( float32) Position {
	 := .Ptem
	if  <= 0. {
		 = coretextDefaultFontSize
	}
	 := .face.Trak.Vert.GetTracking(, )
	return .emScalefY()
}

// track default to 0
func ( *aatApplyContext) (   float32) {
	 := .font.Ptem
	if  <= 0. {
		// https://developer.apple.com/documentation/coretext/1508745-ctfontcreatewithgraphicsfont
		 = coretextDefaultFontSize
	}

	 := .buffer
	if .Props.Direction.isHorizontal() {
		 := .font.getHTracking()
		,  := .graphemesIterator()
		for ,  := .next();  < ; , _ = .next() {
			.Pos[].XAdvance += 
		}

	} else {
		 := .font.getVTracking()
		,  := .graphemesIterator()
		for ,  := .next();  < ; , _ = .next() {
			.Pos[].YAdvance += 
		}
	}
}