ClassLibraryWeiBao/QR二维码/DataEncodation/EncoderBase.cs

(开头部分) 2KB

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

using System.Collections;

namespace Gma.QrCodeNet.Encoding.DataEncodation
{
    public abstract class EncoderBase
    {
        internal EncoderBase()
        {
        }

        internal abstract Mode Mode { get; }

        protected virtual int GetDataLength(string content)
        {
            return content.Length;
        }

        /// <summary>
        /// Returns the bit representation of input data.
        /// </summary>
        /// <param name="content"></param>
        /// <returns></returns>
        internal abstract BitList GetDataBits(string content);


        /// <summary>
        /// Returns bit representation of <see cref="Mode"/> value.
        /// </summary>
        /// <returns></returns>
        /// <remarks>See Chapter 8.4 Data encodation, Table 2 — Mode indicators</remarks>
        internal BitList GetModeIndicator()
        {
            BitList modeIndicatorBits = new BitList();
            modeIndicatorBits.Add((int)this.Mode, 4);
            return modeIndicatorBits;
        }

        /// <summary>
        /// 
        /// </summary>
        /// <param name="characterCount"></param>
        /// <returns></returns>
        internal BitList GetCharCountIndicator(int characterCount, int version)
        {
            BitList characterCountBits = new BitList();
            int bitCount = GetBitCountInCharCountIndicator(version);
            characterCountBits.Add(characterCount, bitCount);
            return characterCountBits;
        }

        /// <summary>
        /// Defines the length of the Character Count Indicator, 
        /// which varies according to themode and the symbol version in use
        /// </summary>
        /// <returns>Number of bits in Character Count Indicator.</returns>
        /// <remarks>
        /// See Chapter 8.4 Data encodation, Table 3 — Number of bits in Character Count Indicator.
        /// </remarks>
        protected abstract int GetBitCountInCharCountIndicator(int version);

后面还有 3 行代码,购买后查看完整代码

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

AI 解读 AI

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

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