Discuz!NT 2.5 正式版 下载
beta、RC版升级补丁
中秋模板发布
首届Discuz!NT 模板大赛圆满结束
著名音乐网站SoGua网、分贝网
采用Discuz!NT搭建社区
FIFA Online2官网论坛使用Discuz!NT
游戏城寨论坛使用Discuz!NT搭建
Discuz!NT 2.5正式开源 Discuz!NT文档中心
用户整合说明文档
Discuz!NT亮相微软Tech-Ed 2007
Discuz!NT情景搞笑短片抢先看
 
1/1页1 跳转到查看:3459
发新话题 回复该主题

我安装后,怎么显示不了验证码,提示这个字体找不到Georgia

我安装后,怎么显示不了验证码,提示这个字体找不到Georgia

我安装后,怎么显示不了验证码,提示这个字体找不到Georgia,不知道谁可以提供一下这个字体

TOP

 

回复:我安装后,怎么显示不了验证码,提示这个字体找不到Georgia

问问你的虚拟主机的空间商看是不是限制了权限不允许访问font文件夹,看看能不能要求他打开
回归平凡http://www.lufei.org ……

TOP

 

回复:我安装后,怎么显示不了验证码,提示这个字体找不到Georgia

嗯,好多问题都是权限问题。。
只有空间商能解决的。。

TOP

 

回复:我安装后,怎么显示不了验证码,提示这个字体找不到Georgia

我个人觉得应该不关FONT文件夹的事,我用的是2003系统,也出现这样的问题哦..

TOP

 

回复:我安装后,怎么显示不了验证码,提示这个字体找不到Georgia

但是我在其它机试了一下又可以哦..系统也是2003的,晕啊,有谁能解释一下

TOP

 

回复:我安装后,怎么显示不了验证码,提示这个字体找不到

我也遇到过你所的问题,是tools\verifyimagepage.aspx找不到georgia,分析DISCUZ.PlugIn.dll后发现生成随机码的函数是随机读取字体数组,它的代码如下
public VerifyImageInfo GenerateImage(string code, int width, int height, Color bgcolor, int textcolor)
{
    VerifyImageInfo info = new VerifyImageInfo();
    info.ImageFormat = ImageFormat.Jpeg;
    info.C;
    width = 120;
    height = 40;
    Bitmap image = new Bitmap(width, height, PixelFormat.Format32bppArgb);
    Graphics graphics = Graphics.FromImage(image);
    graphics.SmoothingMode = SmoothingMode.HighSpeed;
    graphics.Clear(bgcolor);
    int num = (textcolor == 2) ? 60 : 0;
    Pen pen = new Pen(Color.FromArgb(Next(50) + num, Next(50) + num, Next(50) + num), 1f);
    SolidBrush brush = new SolidBrush(Color.FromArgb(Next(100), Next(100), Next(100)));
    for (int i = 0; i < 3; i++)
    {
        graphics.DrawArc(pen, Next(20) - 10, Next(20) - 10, Next(width) + 10, Next(height) + 10, Next(-100, 100), Next(-200, 200));
    }
    Graphics graphics2 = Graphics.FromImage(charbmp);
    float x = -18f;
    for (int j = 0; j < code.Length; j++)
    {
        m.Reset();
        m.RotateAt((float) (Next(50) - 0x19), new PointF((float) (Next(3) + 7), (float) (Next(3) + 7)));
        graphics2.Clear(Color.Transparent);
        graphics2.Transform = m;
        brush.Color = Color.Black;
        x = (x + 18f) + Next(5);
        PointF point = new PointF(x, 2f);
        ///下面这句是随机读取字体数组,希望下个版本把生成随机码的字体能改进一下,不然后台都进不了。
        graphics2.DrawString(code[j].ToString(), fonts[Next(fonts.Length - 1)], brush, new PointF(0f, 0f));
        graphics2.ResetTransform();
        graphics.DrawImage(charbmp, point);
    }
    brush.Dispose();
    graphics.Dispose();
    graphics2.Dispose();
    info.Image = image;
    return info;
}

Discuz.Plugin.VerifyImage.JpegImage{
    public class VerifyImage : IVerifyImage

VerifyImage类的静态构造函数如下:

static VerifyImage()
{
    randb = new byte[4];
    rand = new RNGCryptoServiceProvider();
    m = new Matrix();
    charbmp = new Bitmap(40, 40);
    fonts = new Font[] { new Font(new FontFamily("Times New Roman"), (float) (0x10 + Next(3)), FontStyle.Regular), new Font(new FontFamily("Georgia"), (float) (0x10 + Next(3)), FontStyle.Regular), new Font(new FontFamily("Arial"), (float) (0x10 + Next(3)), FontStyle.Regular), new Font(new FontFamily("Comic Sans MS"), (float) (0x10 + Next(3)), FontStyle.Regular) };
}
最后编辑lz_net_cs 最后编辑于 2008-03-25 13:46:44

TOP

 

回复:我安装后,怎么显示不了验证码,提示这个字体找不到Georgia

我也遇到这个问题,怎么办啊~~

TOP

 

回复:我安装后,怎么显示不了验证码,提示这个字体找不到Georgia

Font 'Georgia' cannot be found.

TOP

 
1/1页1 跳转到
发表新主题 回复该主题