예제 #1
0
        protected override void Draw()
        {
            base.Draw();

            m_SBatch.Begin(SpriteSortMode.BackToFront);
            GraphicsDevice.Clear(Color.White);

            if (m_Sprite != null)
            {
                int X = (GraphicsDevice.Viewport.Width - m_Frame.Width) / 2;
                int Y = (GraphicsDevice.Viewport.Height - m_Frame.Height) / 2;
                m_SBatch.Draw(m_Frame.GetTexture(), new Rectangle(X, Y, m_Frame.Width, m_Frame.Height), Color.White);
            }

            m_SBatch.End();
        }
예제 #2
0
        private string ExportSpriteFrame(SPRFrame frame)
        {
            var texture = frame.GetTexture(this.Gd);

            var temp = Path.GetTempFileName();

            texture.Save(temp, ImageFileFormat.Png);

            var hash     = FileUtils.ComputeMD5(temp);
            var filename = id + "_files/" + hash + ".png";
            var newDest  = Path.Combine(dir, filename);

            if (File.Exists(newDest))
            {
                File.Delete(temp);
            }
            else
            {
                File.Move(temp, newDest);
            }

            return(filename);
        }
예제 #3
0
        private string ExportSpriteFrame(SPRFrame frame)
        {
            var texture = frame.GetTexture(this.Gd);

            var temp = Path.GetTempFileName();

            texture.SaveAsPng(new FileStream(temp, FileMode.OpenOrCreate), texture.Width, texture.Height);

            var hash     = FileUtils.ComputeMD5(temp);
            var filename = id + "_files/" + hash + ".png";
            var newDest  = Path.Combine(dir, filename);

            if (File.Exists(newDest))
            {
                File.Delete(temp);
            }
            else
            {
                File.Move(temp, newDest);
            }

            return(filename);
        }