Alinhar texto ao redor do centro vertical do ImageSpan

eu tenho umImageSpan dentro de um pedaço de texto. O que notei é que o texto ao redor é sempre desenhado na parte inferior da linha de texto - para ser mais preciso, o tamanho da linha de texto aumenta com a imagem, mas a linha de base do texto não muda para cima. Quando a imagem é visivelmente maior que o tamanho do texto, o efeito é bastante desagradável.

Aqui está uma amostra, o esboço mostra os limites doTextView:

Estou tentando fazer com que o texto ao redor seja centralizado verticalmente em relação à imagem que está sendo exibida. Aqui está o mesmo exemplo com texto azul mostrando o local desejado:

Aqui estão as restrições pelas quais estou vinculado:

Não posso usar drawables compostos. As imagens devem poder ser mostradas entre as palavras.O texto pode ter várias linhas, dependendo do conteúdo. Eu não tenho controle sobre isso.Minhas imagens são maiores que o texto ao redor e não posso reduzir o tamanho delas. Embora a imagem de amostra acima seja maior que as imagens reais (para demonstrar o comportamento atual), as imagens reais ainda são grandes o suficiente para que esse problema seja perceptível.

Eu tentei usar oandroid:gravity="center_vertical" atributo no TextView, mas isso não tem nenhum efeito. Eu acredito que isso apenas centraliza verticalmente o textolinhas, mas dentro da linha de texto o texto ainda é desenhado na parte inferior.

Minha linha de pensamento atual é criar uma extensão personalizada que mude a linha de base do texto com base na altura da linha e no tamanho atual do texto. Esse período abrangeria o texto inteiro e eu precisaria calcular a interseção com oImageSpans para que eu também evite mudar as imagens. Isso parece assustador e espero que alguém possa sugerir outra abordagem.

Toda e qualquer ajuda é apreciada!

questionAnswers(7)

yourAnswerToTheQuestion