public override int Page(IntPtr handle, IntPtr device, int copies, int flush)
{
_viewer.FormatHandler.ShowPagePostScriptCommandInvoked = true;
if (!_viewer.ProgressiveUpdate)
{
int bytesPerPixel = 3;
_destImage.Lock();
IntPtr tempTile = Marshal.AllocHGlobal(_destImage.Stride * _destImage.Height);
ImageMemoryHelper.CopyImagePartFrom(_srcImage, tempTile, 0, 0, _destImage.Width, _destImage.Height, _srcStride, bytesPerPixel);
ImageMemoryHelper.FlipImageVertically(tempTile, _destImage.Scan0, _destImage.Height, _destImage.Stride);
Marshal.FreeHGlobal(tempTile);
_destImage.Unlock();
}
_viewer.RaiseDisplayPage(new GhostscriptViewerViewEventArgs(_destImage, new Rectangle(0, 0, _destImage.Width, _destImage.Height)));
return(0);
}