ClassLibraryWeiBao/QR二维码/Windows/Render/StringBuilderExtension.cs

(开头部分) 3KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Globalization;
#if NETFX_CORE
using Windows.UI;
#else
#endif

namespace Gma.QrCodeNet.Encoding.Windows.Render
{
    internal static class StringBuilderExtension
    {
        internal static StringBuilder AppendHeader(this StringBuilder sb)
        {
            return sb.Append("<?xml version=\"1.0\" standalone=\"no\"?>")
                .Append(@"<!-- Created with Qrcode.Net (http://qrcodenet.codeplex.com/) -->")
                .Append("<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\" \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">");
        }

#if NETFX_CORE
        internal static StringBuilder AppendSVGTag(this StringBuilder sb, MatrixPoint displaysize, MatrixPoint viewboxSize, Color background, Color fill)
        {
#else
        internal static StringBuilder AppendSVGTag(this StringBuilder sb, MatrixPoint displaysize, MatrixPoint viewboxSize, GColor background, GColor fill)
        {
#endif
        

            if (displaysize.X <= 0 || displaysize.Y <= 0)
                return sb.Append(string.Format(CultureInfo.InvariantCulture.NumberFormat,
                    "<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.2\" baseProfile=\"tiny\" viewBox=\"0 0 {0} {1}\" viewport-fill=\"rgb({2}, {3}, {4})\" viewport-fill-opacity=\"{5}\" fill=\"rgb({6}, {7}, {8})\" fill-opacity=\"{9}\" {10}>",
                    viewboxSize.X,
                    viewboxSize.Y,
                    background.R,
                    background.G,
                    background.B,
                    ConvertAlpha(background.A),
                    fill.R,
                    fill.G,
                    fill.B,
                    ConvertAlpha(fill.A),
                    BackgroundStyle(background)
                    ));
            else
                return sb.Append(string.Format(CultureInfo.InvariantCulture.NumberFormat,
                    "<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.2\" baseProfile=\"tiny\" viewBox=\"0 0 {0} {1}\" viewport-fill=\"rgb({2}, {3}, {4})\" viewport-fill-opacity=\"{5}\" fill=\"rgb({6}, {7}, {8})\" fill-opacity=\"{9}\" {10} width=\"{11}\" height=\"{12}\">",
                    viewboxSize.X,
                    viewboxSize.Y,
                    background.R,
                    background.G,
                    background.B,
                    ConvertAlpha(background.A),
                    fill.R,
                    fill.G,
                    fill.B,
                    ConvertAlpha(fill.A),
                    BackgroundStyle(background),
                    displaysize.X,
后面还有 42 行代码,购买后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。