Exemple #1
0
        static void Main(string[] args)
        {
            string url        = args[0];
            string reportType = args[1];

            HtmlWeb web     = new HtmlWeb();
            var     htmlDoc = web.Load(url);

            // parsers
            ImgParser imgp = new ImgParser();

            imgp.parseContent("img", htmlDoc);

            H1Parser h1p = new H1Parser();

            h1p.parseContent("h1", htmlDoc);

            // reporter
            Reporter jrep = ReporterFactory.GetImpl(reportType);
            var      ret  = jrep.CreateReport(imgp, h1p);

            Console.Write(Encoding.Unicode.GetString(ret));
        }
        /// <summary>
        /// Special Parser for LUTs, we're only grabbing the headerless PNG file (for now)
        /// </summary>
        /// <param name="header"></param>
        /// <param name="saveFiles"></param>
        /// <param name="isVerbose"></param>
        private void parseLut(CrpHeader header, bool saveFiles, bool isVerbose)
        {
            //Find the first instance of data(PNG file)
            CrpAssetInfoHeader info = header.assets.Find(asset => asset.assetName.Contains(Consts.DATA_EXTENSION));

            //Generate a name for the file
            string fileName = string.Format("{0}.png", StrUtils.limitStr(info.assetName), info.assetType.ToString());

            //Should be unnessecary in current version(stream pointer should already be at start of file),
            //but advance stream pointer to file position
            reader.BaseStream.Seek(info.assetOffsetBegin, SeekOrigin.Current);

            //Read file and deal with it as apporiate.
            MagickImage retVal = ImgParser.parseImgFile(reader, (uint)info.assetSize);

            if (isVerbose)
            {
                Console.WriteLine("Read image file {0}", fileName);
            }
            if (saveFiles)
            {
                retVal.Write(fileName);
            }
        }