我正在使用一个位图对象,我向图像添加注释或版权材料,然后返回修改后的位图。我的问题是位图在沿链移动时不会保存对其所做的更改。我将它视为引用类型,并假设当它传递给每个类时,它会携带对它所做的更改。我已经验证 MarkImage() 类中的代码确实起作用,但是最后调用的代码是有变化的代码。
Public Shared Function GetImage(ByVal imageDef As IImageDefinition) As Bitmap
Dim image As Bitmap = Drawing.Image.FromFile(imageDef.Path)
If Not imageDef.Authorization.IsAllowed(AuthKeys.CanViewWithoutCopyright) Then
image = New MarkCopyrightImage(image).MarkImage()
End If
If Not imageDef.Authorization.IsAllowed(AuthKeys.CanViewWithoutAnnotations) Then
image = New MarkAnnotateImage(image).MarkImage()
End If
Return image
End Function
如何将更改写入位图对象,然后将该对象传递给另一个类,同时保持更改?
C# 或 VB 中的答案很好。