Definition at line 202 of file SpriteFont.cs.
203 {
205 Matrix.CreateTranslation((0f - origin.X) * scale.X, (0f - origin.Y) * scale.Y, 0f,
out var result2);
207 int num = 1;
208 float x = 0f;
210 bool flag = true;
211 if ((
spriteEffects & SpriteEffects.FlipHorizontally) == SpriteEffects.FlipHorizontally)
212 {
214 num = -1;
215 }
216 if ((
spriteEffects & SpriteEffects.FlipVertically) == SpriteEffects.FlipVertically)
217 {
219 }
220 else
221 {
222 vector.Y = 0f;
223 }
224 vector.X = x;
225 for (
int i = 0;
i <
text.Length;
i++)
226 {
228 switch (c)
229 {
230 case '\n':
231 flag = true;
232 vector.X = x;
233 if ((
spriteEffects & SpriteEffects.FlipVertically) == SpriteEffects.FlipVertically)
234 {
236 }
237 else
238 {
240 }
241 continue;
242 case '\r':
243 continue;
244 }
247 if (flag)
248 {
250 }
251 else
252 {
253 vector.X +=
spacing * scale.X * (float)num;
254 }
255 vector.X += vector2.X * scale.X * (float)num;
258 if ((
spriteEffects & SpriteEffects.FlipVertically) == SpriteEffects.FlipVertically)
259 {
261 }
262 if ((
spriteEffects & SpriteEffects.FlipHorizontally) == SpriteEffects.FlipHorizontally)
263 {
265 }
267 position.X += (float)
rectangle.X * scale.X;
268 position.Y += (float)
rectangle.Y * scale.Y;
272 flag = false;
273 vector.X += (vector2.Y +
vector2.Z) * scale.X * (
float)num;
274 }
275 }
List< Rectangle > glyphData
int GetIndexForCharacter(char character)
Vector2 InternalMeasure(ref StringProxy text)
List< Rectangle > croppingData
static byte Max(byte val1, byte val2)
References Microsoft.Xna.Framework.Matrix.CreateRotationZ(), Microsoft.Xna.Framework.Matrix.CreateTranslation(), Microsoft.Xna.Framework.Graphics.SpriteFont.croppingData, Microsoft.Xna.Framework.Graphics.SpriteBatch.Draw(), Microsoft.Xna.Framework.Graphics.SpriteFont.GetIndexForCharacter(), Microsoft.Xna.Framework.Graphics.SpriteFont.glyphData, Microsoft.Xna.Framework.Graphics.SpriteFont.InternalMeasure(), Microsoft.Xna.Framework.Graphics.SpriteFont.kerning, Microsoft.Xna.Framework.Graphics.SpriteFont.lineSpacing, System.Math.Max(), Microsoft.Xna.Framework.Matrix.Multiply(), Microsoft.Xna.Framework.Graphics.SpriteFont.spacing, System.text, Microsoft.Xna.Framework.Graphics.SpriteFont.textureValue, Microsoft.Xna.Framework.Vector2.Transform(), System.value, Microsoft.Xna.Framework.Vector2.X, Microsoft.Xna.Framework.Vector2.Y, and Microsoft.Xna.Framework.Vector2.Zero.