Aspose.PSD for .NET 20.8 - 发布说明

关键 摘要 类别
PSDNET-390 支持 PlLdResource(智能对象层的放置图层资源) 功能
PSDNET-400 支持 SoLdResource(智能对象层数据资源) 功能
PSDNET-693 添加对象数组和单位数组结构支持:ObAr / UnFl 签名 功能
PSDNET-600 修复以 CMYK 色彩模式每通道 16 位保存修改后的 PSD 图像 错误
PSDNET-664 在使用 Aspose.PSD 保存的文件中聚焦文本后下划线和删除线丢失 错误
PSDNET-710 回归:Aspose.PSD 20.7.0 破坏了旧文件的字体大小 错误

公共 API 更改

新增 API:

  • M:Aspose.PSD.FileFormats.Psd.Layers.FillLayers.FillLayer.ReplaceNonTransparentColors(System.Int32)
  • M:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.ClassID.#ctor(System.Byte[],System.Boolean)
  • T:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.TypeToolInfoStructures.ObjectArrayStructure
  • M:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.TypeToolInfoStructures.ObjectArrayStructure.#ctor(System.String,System.String,Aspose.PSD.FileFormats.Psd.Layers.LayerResources.OSTypeStructure[])
  • M:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.TypeToolInfoStructures.ObjectArrayStructure.#ctor(System.Int32,Aspose.PSD.FileFormats.Psd.Layers.LayerResources.ClassID,Aspose.PSD.FileFormats.Psd.Layers.LayerResources.ClassID,System.String,Aspose.PSD.FileFormats.Psd.Layers.LayerResources.OSTypeStructure[])
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.TypeToolInfoStructures.ObjectArrayStructure.Key
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.TypeToolInfoStructures.ObjectArrayStructure.StructureCount
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.TypeToolInfoStructures.ObjectArrayStructure.ClassName
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.TypeToolInfoStructures.ObjectArrayStructure.ClassID
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.TypeToolInfoStructures.ObjectArrayStructure.Structures
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.TypeToolInfoStructures.ObjectArrayStructure.Length
  • F:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.TypeToolInfoStructures.ObjectArrayStructure.StructureKey
  • T:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.TypeToolInfoStructures.UnitArrayStructure
  • M:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.TypeToolInfoStructures.UnitArrayStructure.#ctor(Aspose.PSD.FileFormats.Psd.Layers.LayerResources.ClassID,Aspose.PSD.FileFormats.Psd.Layers.LayerResources.TypeToolInfoStructures.UnitTypes,System.Double[])
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.TypeToolInfoStructures.UnitArrayStructure.UnitType
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.TypeToolInfoStructures.UnitArrayStructure.Values
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.TypeToolInfoStructures.UnitArrayStructure.ValueCount
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.TypeToolInfoStructures.UnitArrayStructure.Key
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.TypeToolInfoStructures.UnitArrayStructure.Length
  • F:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.TypeToolInfoStructures.UnitArrayStructure.StructureKey
  • T:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlLdResource
  • M:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlLdResource.#ctor(System.Guid,System.Boolean)
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlLdResource.Version
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlLdResource.UniqueId
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlLdResource.IsCustom
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlLdResource.PageNumber
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlLdResource.TotalPages
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlLdResource.AntiAliasPolicy
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlLdResource.PlacedLayerType
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlLdResource.Left
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlLdResource.Top
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlLdResource.Right
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlLdResource.Bottom
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlLdResource.Bounds
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlLdResource.TransformMatrix
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlLdResource.HorizontalMeshPoints
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlLdResource.VerticalMeshPoints
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlLdResource.HorizontalMeshPointUnit
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlLdResource.VerticalMeshPointUnit
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlLdResource.Signature
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlLdResource.Key
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlLdResource.Length
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlLdResource.PsdVersion
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlLdResource.Value
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlLdResource.Perspective
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlLdResource.PerspectiveOther
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlLdResource.UOrder
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlLdResource.VOrder
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlLdResource.Items
  • M:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlLdResource.Save(Aspose.PSD.StreamContainer,System.Int32)
  • F:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlLdResource.TypeToolKey
  • T:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlacedLayerType
  • F:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlacedLayerType.Unknown
  • F:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlacedLayerType.Vector
  • F:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlacedLayerType.Raster
  • F:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.PlacedLayerType.ImageStack
  • T:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.IPlacedLayerResource
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.IPlacedLayerResource.Version
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.IPlacedLayerResource.UniqueId
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.IPlacedLayerResource.IsCustom
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.IPlacedLayerResource.PageNumber
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.IPlacedLayerResource.TotalPages
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.IPlacedLayerResource.AntiAliasPolicy
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.IPlacedLayerResource.PlacedLayerType
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.IPlacedLayerResource.Left
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.IPlacedLayerResource.Top
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.IPlacedLayerResource.Right
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.IPlacedLayerResource.Bottom
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.IPlacedLayerResource.Bounds
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.IPlacedLayerResource.TransformMatrix
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.IPlacedLayerResource.HorizontalMeshPoints
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.IPlacedLayerResource.VerticalMeshPoints
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.IPlacedLayerResource.HorizontalMeshPointUnit
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.IPlacedLayerResource.VerticalMeshPointUnit
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.IPlacedLayerResource.Value
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.IPlacedLayerResource.Perspective
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.IPlacedLayerResource.PerspectiveOther
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.IPlacedLayerResource.UOrder
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.IPlacedLayerResource.VOrder
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.IPlacedLayerResource.Items
  • T:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource
  • M:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.#ctor(System.Guid,System.Boolean,System.Boolean)
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.CompId
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.OriginalCompId
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.Version
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.UniqueId
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.PlacedId
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.IsCustom
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.PageNumber
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.TotalPages
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.AntiAliasPolicy
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.PlacedLayerType
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.Left
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.Top
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.Right
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.Bottom
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.Bounds
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.TransformMatrix
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.NonAffineTransformMatrix
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.HorizontalMeshPoints
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.VerticalMeshPoints
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.HorizontalMeshPointUnit
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.VerticalMeshPointUnit
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.Signature
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.Key
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.Length
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.PsdVersion
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.Value
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.Perspective
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.PerspectiveOther
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.UOrder
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.VOrder
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.Items
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.Crop
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.FrameCount
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.Resolution
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.ResolutionUnit
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.Comp
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.Width
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.Height
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.FrameStepNumerator
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.FrameStepDenominator
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.DurationNumerator
  • P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.DurationDenominator
  • M:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.Save(Aspose.PSD.StreamContainer,System.Int32)
  • F:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.SoLdResource.TypeToolKey

已移除 API:

使用示例:

PSDNET-390. 支持 PlLdResource(智能对象层的放置图层资源)

        void AssertAreEqual(object actual, object expected)
        {
            var areEqual = object.Equals(actual, expected);
            if (!areEqual && actual is Array && expected is Array)
            {
                var actualArray = (Array)actual;
                var expectedArray = (Array)actual;
                if (actualArray.Length == expectedArray.Length)
                {
                    for (int i = 0; i < actualArray.Length; i++)
                    {
                        if (!object.Equals(actualArray.GetValue(i), expectedArray.GetValue(i)))
                        {
                            break;
                        }
                    }

                    areEqual = true;
                }
            }

            if (!areEqual)
            {
                throw new FormatException(
                    string.Format("实际值 {0} 不等于预期值 {1}。", actual, expected));
            }
        }


        string dataDir = "PSDNET390_1\\";
        var sourceFilePath = dataDir + "LayeredSmartObjects8bit2.psd";
        var outputFilePath = dataDir + "LayeredSmartObjects8bit2_output.psd";
        var expectedValues = new object[]
        {
            ...
        };

        using (PsdImage image = (PsdImage)Image.Load(sourceFilePath))
        {
            ...
        }

PSDNET-400. 支持 SoLdResource(智能对象层数据资源)

        ...

PSDNET-693. 添加对象数组和单位数组结构支持: ObAr / UnFl 签名

        ...

PSDNET-600. 修复以 CMYK 色彩模式每通道 16 位保存修改后的 PSD 图像

        ...

PSDNET-664. 在使用 Aspose.PSD 保存的文件中聚焦文本后下划线和删除线丢失

        ...

PSDNET-710. 回归:Aspose.PSD 20.7.0 破坏了旧文件的字体大小

        ...
PSDNET-600. Fix saving modified PSD image with CMYK ColorMode 16 bit per channel
           ...

PSDNET-664. Underline and strikethrough lost after focusing on the text in file saved with Aspose.PSD

            ...

PSDNET-710. Regression: Aspose.PSD 20.7.0 breaks font sizes for older files

            ...