C# 如何在SFML.NET中使用文本?
我刚刚下载了SFML.NET并添加了对附带的库DLL的引用,但似乎文本类不存在。在网站上的示例中,很明显正在使用的文本对象。。。所以这个例子不会编译。你自己看看C# 如何在SFML.NET中使用文本?,c#,sfml,sfml.net,C#,Sfml,Sfml.net,我刚刚下载了SFML.NET并添加了对附带的库DLL的引用,但似乎文本类不存在。在网站上的示例中,很明显正在使用的文本对象。。。所以这个例子不会编译。你自己看看 只有字体,没有文字!有人知道我可能做错了什么吗?您可能想使用String2D类()来实际绘制文本。中该类的变量称为Text,这可能是您混淆的地方。您可能希望使用String2D类()来实际绘制文本。中此类的变量称为Text,这可能是您混淆的地方。您可能看到的是2.x示例,其中String2D已被删除并替换为Text。 String2D
只有字体,没有文字!有人知道我可能做错了什么吗?您可能想使用String2D类()来实际绘制文本。中该类的变量称为Text,这可能是您混淆的地方。您可能希望使用String2D类()来实际绘制文本。中此类的变量称为Text,这可能是您混淆的地方。您可能看到的是2.x示例,其中String2D已被删除并替换为Text。 String2D用于1.x,您可以使用Text属性更改其显示内容 幸运的是,接口非常相似。您应该能够简单地用String2D替换任何声明为Text的内容,并将Text属性更改为DisplayedString,而无需更改任何其他代码。每个版本的示例如下: VB.Net SFML.NET 1.x
Imports SFML
Imports SFML.Window
Imports SFML.Graphics
Public Sub Main()
Dim Output As New RenderWindow(New VideoMode(640, 480), "SFML.NET Text Example")
Dim ExampleText As New String2D("", New Font("myfont.tff"))
ExampleText.Position = New Vector2(5, 5)
Do While (true)
Output.Clear(New SFML.Graphics.Color(0,128,160))
ExampleText.Text= String.Format("Hello, world! {0}", DateTime.Now.ToString("hh:MM.ss"))
Output.Draw(ExampleText)
Output.Display()
End While
End Sub
using SFML;
using SFML.Window;
using SFML.Graphics;
public void Main()
{
var output = new RenderWindow(new VideoMode(640, 480), "SFML.NET Text Example");
var exampleText = new String2D("", new Font("myfont.tff"));
exampleText.Position = new Vector2(5, 5);
while(true)
{
var timestamp = DateTime.Now.ToString("hh:MM.ss");
output.Clear(new SFML.Graphics.Color(0, 128, 160));
exampleText.Text = $"Hello, world! {timestamp}";
output.Draw(exampleText);
output.Display();
}
}
SFML.NET 2.x
Imports SFML
Imports SFML.Window
Imports SFML.Graphics
Public Sub Main()
Dim Output As New RenderWindow(New VideoMode(640, 480), "SFML.NET Text Example")
Dim ExampleText As New Text("", New Font("myfont.tff"))
ExampleText.Position = New Vector2(5, 5)
Do While (true)
Output.Clear(New SFML.Graphics.Color(0,128,160))
ExampleText.DisplayedString = String.Format("Hello, world! {0}", DateTime.Now.ToString("hh:MM.ss"))
Output.Draw(ExampleText)
Output.Display()
End While
End Sub
using SFML;
using SFML.Window;
using SFML.Graphics;
public void Main()
{
var output = new RenderWindow(new VideoMode(640, 480), "SFML.NET Text Example");
var exampleText = new Text("", new Font("myfont.tff"));
exampleText.Position = new Vector2(5, 5);
while(true)
{
var timestamp = DateTime.Now.ToString("hh:MM.ss");
output.Clear(new SFML.Graphics.Color(0, 128, 160));
exampleText.DisplayedString = $"Hello, world! {timestamp}";
output.Draw(exampleText);
output.Display();
}
}
C#
SFML.NET 1.x
Imports SFML
Imports SFML.Window
Imports SFML.Graphics
Public Sub Main()
Dim Output As New RenderWindow(New VideoMode(640, 480), "SFML.NET Text Example")
Dim ExampleText As New String2D("", New Font("myfont.tff"))
ExampleText.Position = New Vector2(5, 5)
Do While (true)
Output.Clear(New SFML.Graphics.Color(0,128,160))
ExampleText.Text= String.Format("Hello, world! {0}", DateTime.Now.ToString("hh:MM.ss"))
Output.Draw(ExampleText)
Output.Display()
End While
End Sub
using SFML;
using SFML.Window;
using SFML.Graphics;
public void Main()
{
var output = new RenderWindow(new VideoMode(640, 480), "SFML.NET Text Example");
var exampleText = new String2D("", new Font("myfont.tff"));
exampleText.Position = new Vector2(5, 5);
while(true)
{
var timestamp = DateTime.Now.ToString("hh:MM.ss");
output.Clear(new SFML.Graphics.Color(0, 128, 160));
exampleText.Text = $"Hello, world! {timestamp}";
output.Draw(exampleText);
output.Display();
}
}
SFML.NET 2.x
Imports SFML
Imports SFML.Window
Imports SFML.Graphics
Public Sub Main()
Dim Output As New RenderWindow(New VideoMode(640, 480), "SFML.NET Text Example")
Dim ExampleText As New Text("", New Font("myfont.tff"))
ExampleText.Position = New Vector2(5, 5)
Do While (true)
Output.Clear(New SFML.Graphics.Color(0,128,160))
ExampleText.DisplayedString = String.Format("Hello, world! {0}", DateTime.Now.ToString("hh:MM.ss"))
Output.Draw(ExampleText)
Output.Display()
End While
End Sub
using SFML;
using SFML.Window;
using SFML.Graphics;
public void Main()
{
var output = new RenderWindow(new VideoMode(640, 480), "SFML.NET Text Example");
var exampleText = new Text("", new Font("myfont.tff"));
exampleText.Position = new Vector2(5, 5);
while(true)
{
var timestamp = DateTime.Now.ToString("hh:MM.ss");
output.Clear(new SFML.Graphics.Color(0, 128, 160));
exampleText.DisplayedString = $"Hello, world! {timestamp}";
output.Draw(exampleText);
output.Display();
}
}
很明显,这是一个非常简单的示例,但希望能说明区别有多简单。您可能看到的是2.x示例,其中String2D已被删除并替换为文本。 String2D用于1.x,您可以使用Text属性更改其显示内容 幸运的是,接口非常相似。您应该能够简单地用String2D替换任何声明为Text的内容,并将Text属性更改为DisplayedString,而无需更改任何其他代码。每个版本的示例如下: VB.Net SFML.NET 1.x
Imports SFML
Imports SFML.Window
Imports SFML.Graphics
Public Sub Main()
Dim Output As New RenderWindow(New VideoMode(640, 480), "SFML.NET Text Example")
Dim ExampleText As New String2D("", New Font("myfont.tff"))
ExampleText.Position = New Vector2(5, 5)
Do While (true)
Output.Clear(New SFML.Graphics.Color(0,128,160))
ExampleText.Text= String.Format("Hello, world! {0}", DateTime.Now.ToString("hh:MM.ss"))
Output.Draw(ExampleText)
Output.Display()
End While
End Sub
using SFML;
using SFML.Window;
using SFML.Graphics;
public void Main()
{
var output = new RenderWindow(new VideoMode(640, 480), "SFML.NET Text Example");
var exampleText = new String2D("", new Font("myfont.tff"));
exampleText.Position = new Vector2(5, 5);
while(true)
{
var timestamp = DateTime.Now.ToString("hh:MM.ss");
output.Clear(new SFML.Graphics.Color(0, 128, 160));
exampleText.Text = $"Hello, world! {timestamp}";
output.Draw(exampleText);
output.Display();
}
}
SFML.NET 2.x
Imports SFML
Imports SFML.Window
Imports SFML.Graphics
Public Sub Main()
Dim Output As New RenderWindow(New VideoMode(640, 480), "SFML.NET Text Example")
Dim ExampleText As New Text("", New Font("myfont.tff"))
ExampleText.Position = New Vector2(5, 5)
Do While (true)
Output.Clear(New SFML.Graphics.Color(0,128,160))
ExampleText.DisplayedString = String.Format("Hello, world! {0}", DateTime.Now.ToString("hh:MM.ss"))
Output.Draw(ExampleText)
Output.Display()
End While
End Sub
using SFML;
using SFML.Window;
using SFML.Graphics;
public void Main()
{
var output = new RenderWindow(new VideoMode(640, 480), "SFML.NET Text Example");
var exampleText = new Text("", new Font("myfont.tff"));
exampleText.Position = new Vector2(5, 5);
while(true)
{
var timestamp = DateTime.Now.ToString("hh:MM.ss");
output.Clear(new SFML.Graphics.Color(0, 128, 160));
exampleText.DisplayedString = $"Hello, world! {timestamp}";
output.Draw(exampleText);
output.Display();
}
}
C#
SFML.NET 1.x
Imports SFML
Imports SFML.Window
Imports SFML.Graphics
Public Sub Main()
Dim Output As New RenderWindow(New VideoMode(640, 480), "SFML.NET Text Example")
Dim ExampleText As New String2D("", New Font("myfont.tff"))
ExampleText.Position = New Vector2(5, 5)
Do While (true)
Output.Clear(New SFML.Graphics.Color(0,128,160))
ExampleText.Text= String.Format("Hello, world! {0}", DateTime.Now.ToString("hh:MM.ss"))
Output.Draw(ExampleText)
Output.Display()
End While
End Sub
using SFML;
using SFML.Window;
using SFML.Graphics;
public void Main()
{
var output = new RenderWindow(new VideoMode(640, 480), "SFML.NET Text Example");
var exampleText = new String2D("", new Font("myfont.tff"));
exampleText.Position = new Vector2(5, 5);
while(true)
{
var timestamp = DateTime.Now.ToString("hh:MM.ss");
output.Clear(new SFML.Graphics.Color(0, 128, 160));
exampleText.Text = $"Hello, world! {timestamp}";
output.Draw(exampleText);
output.Display();
}
}
SFML.NET 2.x
Imports SFML
Imports SFML.Window
Imports SFML.Graphics
Public Sub Main()
Dim Output As New RenderWindow(New VideoMode(640, 480), "SFML.NET Text Example")
Dim ExampleText As New Text("", New Font("myfont.tff"))
ExampleText.Position = New Vector2(5, 5)
Do While (true)
Output.Clear(New SFML.Graphics.Color(0,128,160))
ExampleText.DisplayedString = String.Format("Hello, world! {0}", DateTime.Now.ToString("hh:MM.ss"))
Output.Draw(ExampleText)
Output.Display()
End While
End Sub
using SFML;
using SFML.Window;
using SFML.Graphics;
public void Main()
{
var output = new RenderWindow(new VideoMode(640, 480), "SFML.NET Text Example");
var exampleText = new Text("", new Font("myfont.tff"));
exampleText.Position = new Vector2(5, 5);
while(true)
{
var timestamp = DateTime.Now.ToString("hh:MM.ss");
output.Clear(new SFML.Graphics.Color(0, 128, 160));
exampleText.DisplayedString = $"Hello, world! {timestamp}";
output.Draw(exampleText);
output.Display();
}
}
很明显,这是一个非常简单的示例,但希望能说明区别是多么简单。在最新的SFML.net中有
Text
类。与C++中的C语言相同,除了在最新的SFML.NET中必须处理C>代码>属性< /COD> < /P> < P>,还有<代码>文本< /代码>类。使用与C++相同,除了必须处理C<代码>属性