Android Canvas.DrawTexonPath ne semble pas correct lorsque la peinture est réglée sur
Question
J'ai une configuration de code dans une vue étendue qui fait des dessins qui sont facilement mis à l'échelle (vectoriel). (Mon échelle est configurée comme 0-1.0)
J'ai remarqué que lorsque je fixais mon remplissage de peinture pour remplir, le texte dessiné sur un chemin a l'air correct, mais lorsque je met le remplissage pour caresser (je veux juste le contour du texte), l'image semble être sur un voyage LSD. Voici mon exemple de code:
Paint yellowPaint = Paints.getFillTextPaint(0.01f, 0xFFffea3e, 0.065f);
canvas.drawTextOnPath(mContext.getString(R.string.building_a_partnership),
Paths.getRoundedTextPath(mOuterCircleRectF, 280f, 350f),
0, -0.025f, yellowPaint);
public static Paint getFillTextPaint(float f, int color, float textSize) {
Paint textPaint = new Paint();
textPaint.setFlags(Paint.ANTI_ALIAS_FLAG);
textPaint.setStyle(Paint.Style.FILL);
textPaint.setColor(color);
textPaint.setTextSize(textSize);
textPaint.setStrokeWidth(f);
textPaint.setShadowLayer(0.002f, 0.0f, 0.0f, 0xFF000000);
textPaint.setTypeface(Typeface.SANS_SERIF);
return textPaint;
}
Si je change la peinture. Style du remplissage au trait, j'obtiens les images ci-dessous. J'ai utilisé le canevas.DrawText () et cela fonctionne bien montrant les lettres caressées. Ce n'est que lorsqu'il est appliqué sur un chemin, quand il semble devenir bizarre.
La solution
Apparemment, cela est dû au fait que mon facteur d'échelle est de 0-1 .. il semble y avoir un bogue avec comment le rendu d'un accident vasculaire cérébral avec une taille <1,0 est traité. La solution suggérée consiste à utiliser une échelle de 0-100.