Example #1
0
        /// <summary>
        /// Convert the image into an array of strings using the passed settings
        /// </summary>
        /// <param name="image">image to convert</param>
        /// <param name="settings">the text settings to use for the output image</param>
        /// <returns>the converted text image</returns>
        public static string[] Convert(Image image, TextProcessingSettings settings)
        {
            if (image == null || settings == null || settings.Width < 1 || settings.Height < 1)
            {
                return(null);
            }

            return(Convert(ImageToValues.Convert(image, settings.Size), settings));
        }
Example #2
0
        /// <summary>
        /// Initializes a new instance of the <see cref="OutputCreator"/> class.
        /// </summary>
        /// <param name="imageArray">The strings containing the ASCII image.</param>
        /// <param name="textProcessingSettings">The text processing settings.</param>
        /// <param name="colors">The 2d array of colors.</param>
        public OutputCreator(string[] imageArray, TextProcessingSettings textProcessingSettings, Color[][] colors = null)
        {
            this.strings = imageArray;

            this.textProcessingSettings = textProcessingSettings;

            this.useColor = colors != null;

            if (this.useColor && textProcessingSettings.IsFixedWidth)
            {
                this.colors = colors;

                this.SetupColorArrays();
            }
        }
Example #3
0
        /// <summary>
        /// Convert the the passed values into an array of strings using the passed settings
        /// </summary>
        /// <param name="values">array of values to use</param>
        /// <param name="settings">the text settings to use for the output image</param>
        /// <returns>the converted text image</returns>
        public static string[] Convert(byte[][] values, TextProcessingSettings settings)
        {
            if (settings == null)
            {
                return(null);
            }

            ArrayList filters = settings.FilterList;

            foreach (IAscgenFilter filter in filters)
            {
                values = filter.Apply(values);
            }

            return(settings.ValuesToText.Apply(values));
        }