Score
0
Watch 72 Star 105 Fork 60

cheng5x / Yc.QrCodeC#GPL-2.0

Join us
Explore and code with more than 2 million developers,Free private repositories !:)
Sign up
码晒客/疯狂创意二维码,底层 ,模版制作开源 spread retract

Clone or download
README.md 1.65 KB
Copy Edit Web IDE Raw Blame History
cheng5x authored 2014-06-06 19:14 . cheng5x

YcQrCode

码晒客/疯狂创意二维码,底层 ,模版制作开源

    public override Bitmap Encode(string content)
    {
        try
        {
            matrix = QrCodeEncoder.calQrcode(EnCoding.GetBytes(content));
        }
        catch { throw new Exception("内容超出范围,请选择更高版本或者降低容错率"); }

        this.SetParam();

        //SolidBrush Backbrush = new SolidBrush(QrCodeEncoder.QRCodeBackgroundColor);
        SolidBrush Backbrush = new SolidBrush(Color.Transparent);//背景透明
        SolidBrush Forebrush = new SolidBrush(QrCodeEncoder.QRCodeForegroundColor);

        Bitmap image = new Bitmap(this.QrCodeW, this.QrCodeH);
        Graphics g = Graphics.FromImage(image);

        Rectangle rect = new Rectangle();

        g.FillRectangle(Backbrush, new Rectangle(0, 0, image.Width, image.Height));

        for (int i = 0; i < matrix.Length; i++)
        {
            for (int j = 0; j < matrix.Length; j++)
            {
                rect = new Rectangle((j + this.SpacingW) * QrCodeEncoder.QRCodeScale, (i + this.SpacingH) * QrCodeEncoder.QRCodeScale, QrCodeEncoder.QRCodeScale, QrCodeEncoder.QRCodeScale);
                if (matrix[j][i])
                {
                    ChangeFillShape(g, Forebrush, rect, EN_FillShape.FillRectangle, new FillShape(), Backbrush);
                }
                else
                    ChangeFillShape(g, Backbrush, rect, EN_FillShape.FillRectangle, new FillShape(), Backbrush);
            }
        }
        return image;
    }

blog: http://www.cnblogs.com/cheng5x

码晒客讨论QQ群: 28629273

Comment ( 0 )

Sign in for post a comment

C#
1
https://gitee.com/cheng5x/Yc.QrCode.git
git@gitee.com:cheng5x/Yc.QrCode.git
cheng5x
Yc.QrCode
Yc.QrCode
master

Help Search