如何让用户在线尝试他们想要的字体

时间:2010-08-10 07:09:46

标签: asp.net html

我正在努力完成以下工作:

我有一组字体,我希望用户能够在线尝试这些字体,但我希望结果显示在图像中,这样除非他们购买,否则没有人可以使用该字体。我找到了一个关于我确切想要here的例子。谁能告诉我怎么做?

由于

3 个答案:

答案 0 :(得分:4)

图像的src是呈现图像的服务器端页面:

所以你想要做的是将src设置为一个aspx页面,输入文本作为查询字符串。从那里你创建一个图形对象,use the font to draw the specified text onto that

摘自文章

private void button4_Click(object sender, System.EventArgs e)
{
  Graphics grf = this.CreateGraphics();
  try
  {
    grf.Clear(Color.White);
    using (Font myFont = new Font("Arial", 14))
    {
      grf.DrawString("Hello .NET Guide!", myFont, Brushes.Green, new PointF(10, 100));
    }
  }
  finally
  {
    grf.Dispose();
  }
}

之后,您需要执行Response.Clear()以便不会呈现任何其他文本内容,并设置Response.ContentType = "image/jpeg";(或您将使用的任何内容类型),然后将图像写入响应输出缓冲区。

答案 1 :(得分:0)

如果您不需要显示用户输入的文字,不会使用静态图像作为KISS解决方案吗?

答案 2 :(得分:0)

这个问题有很多解决方案:

  1. 在服务器上呈现字体 - 这可能是最好的方法,也可能是最安全的版权所有者(如果有的话)。大卫的答案概述了一种方法。

  2. 在客户端上呈现字体。对于繁忙的站点,这将减少您的服务器负载。 javascript中有很多解决方案,我最喜欢的是Cufon。浏览器下载cufon运行时以及字体文件,并由浏览器呈现。使用这种方法时需要注意字体许可,但它确实不需要在服务器上进行设置,甚至可以脱机使用。

  3. 您还可以使用Flash呈现字体,而不会出现许可问题。