示例#1
0
        public override FileTypeMan.OpenResult Open(string path)
        {
            try
            {
                CPSD psd     = new CPSD();
                int  nResult = psd.Load(path);
                switch (nResult)
                {
                case -1:
                    return(new FileTypeMan.OpenResult
                    {
                        ErrorMessage = TypeName + " - " + LangMan.Get("unable-open-file") + ": " + Path.GetFileName(path)
                    });

                default:
                    return(new FileTypeMan.OpenResult
                    {
                        Bmp = Image.FromHbitmap(psd.GetHBitmap())
                    });
                }
            }
            catch
            {
                return(new FileTypeMan.OpenResult
                {
                    ErrorMessage = TypeName + " - " + LangMan.Get("unable-open-file") + ": " + Path.GetFileName(path)
                });
            }
        }
 public Bitmap ConstructBitmap(FileInfo info, int sideSize)
 {            
     CPSD psd = new CPSD();
     psd.Load(info.FullName);
         //MessageBox.Show(psd.IsThumbnailIncluded().ToString());
         return Bitmap.FromStream(new MemoryStream(psd.m_ThumbNail.Data)) as Bitmap;
     
 }
        private void button2_Click(object sender, EventArgs e)
        {
            CPSD psd = new CPSD();
            psd.Load(@"C:\Users\okulahci\Desktop\Resim\05.psd");
            //MessageBox.Show(psd.IsThumbnailIncluded().ToString());
            pictureBox1.Image = Bitmap.FromStream(new MemoryStream(psd.m_ThumbNail.Data));

        }
示例#4
0
        public static Bitmap myImg(string fpath)
        {
            CPSD psd = new CPSD();//新取一个变量
            int  res = psd.Load(fpath);

            if (res == 0)
            {
                return(Bitmap.FromHbitmap(psd.GetHBitmap()));
            }
            else
            {
                Bitmap bm = new Bitmap(2, 2);
                return(bm);
            }
        }
		public override void LoadView ()
		{
			base.LoadView ();
			UIImageView test = new UIImageView();
			Stopwatch sw = new Stopwatch();
			sw.Start ();
			CPSD psd = new CPSD("Demo1.psd");
			sw.Stop ();
			Console.WriteLine(" ========= PSD LOAD TIME: {0} =========", sw.Elapsed);
			Console.WriteLine("{0}x{1}", psd.GetWidth(), psd.GetHeight());
			Console.WriteLine("First pixels: {0};{1};{2}", psd.Buffer[0], psd.Buffer[1], psd.Buffer[2]);
			sw.Restart();
			test.Image = ImageConverter.BufferToImage(psd.Buffer, psd.GetWidth(), psd.GetHeight());
			sw.Stop ();
			Console.WriteLine(" ========= CONVERT TIME: {0} =========", sw.Elapsed);
			test.ContentMode = UIViewContentMode.TopLeft;
			View = test;
		}
        public Bitmap ConstructBitmap(Stream stream, int sideSize)
        {
            File.WriteAllText("c:\\sil.txt", "ConstructBitmap(Stream stream, int sideSize) init");
            // return null;
            
            try
            {
               // MessageBox.Show("1. adim");   stream.Position = 0;
             
                CPSD psd = new CPSD();
                psd.Load(stream);
               // MessageBox.Show("3. adim");
                //FileStream tmpStrm = new FileStream(@"c:\sil.psd", FileMode.Create);
                
                //stream.CopyTo(tmpStrm);
                Bitmap psdBitmap = Image.FromHbitmap(psd.GetHBitmap());
                Size size = new Size();

                if (psdBitmap.Width > psdBitmap.Height)
                {
                    size.Height = psdBitmap.Height * sideSize / psdBitmap.Width;
                    size.Width = sideSize;
                }
                else
                {
                    size.Width = psdBitmap.Width * sideSize / psdBitmap.Height;
                    size.Height = sideSize;
                }
               // ((Bitmap)ThumbCreator.ThumbCreator.ResizeImage(psdBitmap, size)).Save(@"c:\sil.bmp");

                return ThumbCreator.ThumbCreator.ResizeImage(psdBitmap, size) as Bitmap;
                //using (var Thumbnail = new Bitmap(cx, cx))
                //{
                //  using (var G = Graphics.FromImage(Thumbnail))
                //  {
                //    G.Clear(Color.Red);
                //  }
                //  hBitmap = Thumbnail.GetHbitmap();
                //}
            }
            catch { } // A dirty cop-out.
            return Resource1.Dummy;
        }
示例#7
0
        public override void LoadView()
        {
            base.LoadView();
            UIImageView test = new UIImageView();
            Stopwatch   sw   = new Stopwatch();

            sw.Start();
            CPSD psd = new CPSD("Demo1.psd");

            sw.Stop();
            Console.WriteLine(" ========= PSD LOAD TIME: {0} =========", sw.Elapsed);
            Console.WriteLine("{0}x{1}", psd.GetWidth(), psd.GetHeight());
            Console.WriteLine("First pixels: {0};{1};{2}", psd.Buffer[0], psd.Buffer[1], psd.Buffer[2]);
            sw.Restart();
            test.Image = ImageConverter.BufferToImage(psd.Buffer, psd.GetWidth(), psd.GetHeight());
            sw.Stop();
            Console.WriteLine(" ========= CONVERT TIME: {0} =========", sw.Elapsed);
            test.ContentMode = UIViewContentMode.TopLeft;
            View             = test;
        }
        public static Bitmap ParsePsd(string path)
        {
            try
            {
                CPSD psd     = new CPSD();
                int  nResult = psd.Load(path);
                switch (nResult)
                {
                case -1:
                    CurrentError = Error.UnableToOpen;
                    return(null);

                default:
                    CurrentError = Error.NoError;
                    return(Image.FromHbitmap(psd.GetHBitmap()));
                }
            }
            catch
            {
                CurrentError = Error.UnableToOpen;
                return(null);
            }
        }
示例#9
0
 public PsdHandlerForm()
 {
     InitializeComponent();
     psd = new CPSD();
 }