예제 #1
0
파일: PageInfo.cs 프로젝트: westfax/SDK-Fax
        internal PageInfo(Image img)
        {
            this.HorizontalResolution = img.HorizontalResolution;
            this.WidthPixels          = (int)img.PhysicalDimension.Width;
            this.WidthInches          = img.PhysicalDimension.Width / this.HorizontalResolution;

            this.VerticalResolution = img.VerticalResolution;
            this.HeightPixels       = (int)img.PhysicalDimension.Height;
            this.HeightInches       = img.PhysicalDimension.Height / this.VerticalResolution;

            this.AspectRatio = this.WidthInches / this.HeightInches;

            this.ImageFlags = (ImageFlags)img.Flags;

            this.PixelFormat = img.PixelFormat;

            this.ImageFormat     = ImageHelper.GetImageFormat_Instance(img.RawFormat.Guid);
            this.ImageFormatName = ImageHelper.GetImageFormat_Name(img);

            this.PaletteFlags   = (PaletteFlags)img.Palette.Flags;
            this.PaletteEntries = img.Palette.Entries;

            this.ImageProperties = new ImageProperty[img.PropertyIdList.Length];

            for (int i = 0; i < img.PropertyIdList.Length; i++)
            {
                int          propid = img.PropertyIdList[i];
                PropertyItem prop   = img.GetPropertyItem(propid);
                this.ImageProperties[i] = new ImageProperty(prop);
            }
        }
예제 #2
0
 public static ImageFormat GetImageFormat_Instance(ImageFormatNames formatName)
 {
     foreach (Guid key in ImageHelper.ImageFormats.Keys)
     {
         if ((ImageFormatNames)ImageHelper.ImageFormats[key] == formatName)
         {
             return(new ImageFormat(key));
         }
     }
     return(new ImageFormat(ImageHelper.ImageFormatUndefined));
 }
예제 #3
0
 public static Guid GetImageFormat_Guid(ImageFormatNames formatName)
 {
     foreach (Guid key in ImageHelper.ImageFormats.Keys)
     {
         if ((ImageFormatNames)ImageHelper.ImageFormats[key] == formatName)
         {
             return(key);
         }
     }
     return(ImageHelper.ImageFormatUndefined);
 }
예제 #4
0
 public static ImageCodecInfo GetEncoder(ImageFormatNames formatName)
 {
     ImageCodecInfo[] inflist = ImageCodecInfo.GetImageEncoders();
     foreach (ImageCodecInfo inf in inflist)
     {
         if (inf.FormatID == ImageHelper.GetImageFormat_Guid(formatName))
         {
             return(inf);
         }
     }
     return(null);
 }
예제 #5
0
        private static Guid GetImageEncoderID(ImageFormatNames formatName)
        {
            Guid FormatId = ImageHelper.GetImageFormat_Guid(formatName);

            ImageCodecInfo[] inflist = ImageCodecInfo.GetImageEncoders();

            foreach (ImageCodecInfo inf in inflist)
            {
                if (inf.FormatID == FormatId)
                {
                    return(inf.Clsid);
                }
            }
            return(Guid.Empty);
        }