GetBitmap with DocScale 0.5 gives poor quality bitmap

We need to get the bitmap from GoView with half the size. The code is given below. But the bitmap is coming with poor quality. I have attached the images files saved with DocScale 1 and 0.5. One example for quality degradation is the circles in the image created with DocScale 0.5 is not symmetric

Go diagram version used is 5.0.0.3

public virtual Bitmap GetBitmap() {

this.DocScale = 0.5;
Rectangle dispRect = this.DisplayRectangle;
Bitmap buf = new Bitmap(dispRect.Width, dispRect.Height);
Graphics gbuf = Graphics.FromImage(buf);
gbuf.ScaleTransform(this.DocScale, this.DocScale);
PointF viewLoc = this.DocPosition;
gbuf.TranslateTransform(-viewLoc.X, -viewLoc.Y);
PaintView(gbuf, new RectangleF(viewLoc, ConvertViewToDoc(dispRect.Size)));
gbuf.Dispose();
return buf;
}

this was handled via email, but here was my answer:

You should have better luck if you grab the initial image in higher resolution, then downscale it with smoothing. so, try Scale = 2 or 3 or 4, then do this with the image:

        var newimg = new Bitmap(newWidth, newHeight);
        using (var g = Graphics.FromImage(newimg))
        {
          g.SmoothingMode = SmoothingMode.AntiAlias;
          g.InterpolationMode = InterpolationMode.HighQualityBicubic;
          g.CompositingQuality = CompositingQuality.HighQuality;
          g.PixelOffsetMode = PixelOffsetMode.HighQuality;
          //as high quality as we can get!
          g.DrawImage(img, new Rectangle(0, 0, newWidth, newHeight));

        }

newimg is the scaled down one…
img is the one you get from GoDiagram at scale = X