将一张PNG透明的图片插入到原像中,本身PNG图片是透明的,插入到图片中之后应该透明的部份应该显示原图像的颜色,但现在透明的部份变成了白色,而且图片上的文件还有些被黑色的块覆盖掉了,请问这个问题怎么解决?(jpg图片不存在这个问题)
1.原图,需要插入的图片。
2.粘贴后的图片。
执行代码:
ImageViewer.Floater = viewer.Image;
ImageViewer.Floater.Transparent = true;
ImageViewer.FloaterOpacity = 1.0;
LeadMatrix MyMatrix = ImageViewer.ImageTransform;
Matrix m = new Matrix((float)MyMatrix.M11, (float)MyMatrix.M12, (float)MyMatrix.M21, (float)MyMatrix.M22, (float)MyMatrix.OffsetX, (float)MyMatrix.OffsetY);
Transformer t = new Transformer(m);
Point FloaterPosition = new Point((int)ImageViewer.FloaterTransform.OffsetX, (int)ImageViewer.FloaterTransform.OffsetY);
LeadMatrix floatertransform = ImageViewer.FloaterTransform;
floatertransform.OffsetX = Point.Round(t.PointToLogical(Point.Empty)).X;
floatertransform.OffsetY = Point.Round(t.PointToLogical(Point.Empty)).Y;
ImageViewer.FloaterTransform = floatertransform;
3.确认后的最终效果。
执行代码:
if (rivViewer.Image.HasRegion)
rivViewer.Image.MakeRegionEmpty();
else if ((rivViewer.FloaterOpacity > 0.0) && (rivViewer.Floater != null))
{
DisableAllInteractiveModes(rivViewer);
rivViewer.InteractiveModes.BeginUpdate();
RegionInteractiveMode.IsEnabled = true;
rivViewer.InteractiveModes.EndUpdate();
rivViewer.CombineFloater(false);
rivViewer.Floater = null;
rivViewer.Refresh();
} |