Beispiel #1
0
        public AggRenderSurface()
        {
            //1. attach dst bmp before use this
            //2. you can detach this surface and attach to another bmp surface

            _pixelBlenderBGRA  = new PixelBlenderBGRA();
            _destBitmapBlender = new MyBitmapBlender();

            _bmpRasterizer = new DestBitmapRasterizer();
            _sclinePack8   = new ScanlinePacked8();
            _sclineRas     = new ScanlineRasterizer();

            _currentImgSpanGen     = _imgSpanGenBilinearClip;
            CurrentTransformMatrix = Affine.IdentityMatrix;
        }
        public AggRenderSurface(ActualBitmap destImage)
        {
            //create from actual image

            this.destActualImage = destImage;

            this.destImageReaderWriter = new MyBitmapBlender(destImage, new PixelBlenderBGRA());
            //
            this.sclineRas      = new ScanlineRasterizer(destImage.Width, destImage.Height);
            this._bmpRasterizer = new DestBitmapRasterizer();
            //
            this.destWidth  = destImage.Width;
            this.destHeight = destImage.Height;
            //
            this.clipBox = new RectInt(0, 0, destImage.Width, destImage.Height);
            this.sclineRas.SetClipBox(this.clipBox);
            this.sclinePack8 = new ScanlinePacked8();
        }
Beispiel #3
0
 public AggRenderSurface(MemBitmap dstBmp)
 {
     //create from actual image
     _destBmp           = dstBmp;
     _pixelBlenderBGRA  = new PixelBlenderBGRA();
     _destBitmapBlender = new MyBitmapBlender(dstBmp, _pixelBlenderBGRA);
     //
     _bmpRasterizer = new DestBitmapRasterizer();
     _sclinePack8   = new ScanlinePacked8();
     _sclineRas     = new ScanlineRasterizer();
     //
     _sclineRas.SetClipBox(
         new RectInt(0, 0,
                     _destWidth  = dstBmp.Width,  //**
                     _destHeight = dstBmp.Height) //**
         );
     CurrentTransformMatrix = Affine.IdentityMatrix;
 }