diff --git a/samples/NetVips.Samples/Samples/GenerateEnums.cs b/samples/NetVips.Samples/Samples/GenerateEnums.cs index d6d154ff..1fc52192 100644 --- a/samples/NetVips.Samples/Samples/GenerateEnums.cs +++ b/samples/NetVips.Samples/Samples/GenerateEnums.cs @@ -54,11 +54,6 @@ private string Generate() foreach (var name in allEnums) { - if (name.StartsWith("Gsf")) - { - continue; - } - var gtype = NetVips.TypeFromName(name); var csharpName = RemovePrefix(name); diff --git a/samples/NetVips.Samples/Samples/GenerateImageClass.cs b/samples/NetVips.Samples/Samples/GenerateImageClass.cs index 2a66f8fb..847963ba 100644 --- a/samples/NetVips.Samples/Samples/GenerateImageClass.cs +++ b/samples/NetVips.Samples/Samples/GenerateImageClass.cs @@ -37,6 +37,11 @@ public class GenerateImageClass : ISample /// public static readonly IntPtr FailOnType = NetVips.TypeFromName("VipsFailOn"); + /// + /// The fundamental type for VipsForeignKeep. See . + /// + public static readonly IntPtr ForeignKeepType = NetVips.TypeFromName("VipsForeignKeep"); + public GenerateImageClass() { // Classes @@ -57,12 +62,17 @@ public GenerateImageClass() _gTypeToCSharpDict.Add(NetVips.TypeFromName("VipsDemandStyle"), "Enums.DemandStyle"); _gTypeToCSharpDict.Add(NetVips.TypeFromName("VipsDirection"), "Enums.Direction"); _gTypeToCSharpDict.Add(NetVips.TypeFromName("VipsExtend"), "Enums.Extend"); - _gTypeToCSharpDict.Add(FailOnType, "Enums.FailOn"); + if (FailOnType != IntPtr.Zero) + { + _gTypeToCSharpDict.Add(FailOnType, "Enums.FailOn"); + } + if (NetVips.TypeFind("VipsOperation", "dzsave") != IntPtr.Zero) { _gTypeToCSharpDict.Add(NetVips.TypeFromName("VipsForeignDzContainer"), "Enums.ForeignDzContainer"); _gTypeToCSharpDict.Add(NetVips.TypeFromName("VipsForeignDzLayout"), "Enums.ForeignDzLayout"); } + _gTypeToCSharpDict.Add(NetVips.TypeFromName("VipsForeignDzDepth"), "Enums.ForeignDzDepth"); _gTypeToCSharpDict.Add(NetVips.TypeFromName("VipsForeignHeifCompression"), "Enums.ForeignHeifCompression"); _gTypeToCSharpDict.Add(NetVips.TypeFromName("VipsForeignPpmFormat"), "Enums.ForeignPpmFormat"); @@ -97,6 +107,10 @@ public GenerateImageClass() // Flags _gTypeToCSharpDict.Add(NetVips.TypeFromName("VipsForeignFlags"), "Enums.ForeignFlags"); _gTypeToCSharpDict.Add(NetVips.TypeFromName("VipsForeignPngFilter"), "Enums.ForeignPngFilter"); + if (ForeignKeepType != IntPtr.Zero) + { + _gTypeToCSharpDict.Add(ForeignKeepType, "Enums.ForeignKeep"); + } } /// @@ -410,9 +424,24 @@ string ToCref(string name) => ? $"nameof({arg.Name})" : $"\"{arg.Name}\""; - result.AppendLine(arg.Type == FailOnType - ? $"{indent} options.AddFailOn({safeIdentifier});" - : $"{indent} options.AddIfPresent({optionsName}, {safeIdentifier});"); + if (operationName.StartsWith("dzsave") && arg.Name == "imagename") + { + result.AppendLine( + $"{indent} options.AddIfPresent(NetVips.AtLeastLibvips(8, 15) ? {optionsName} : \"basename\", {safeIdentifier});"); + } + else if (arg.Type == FailOnType) + { + result.AppendLine($"{indent} options.AddFailOn({safeIdentifier});"); + } + else if (arg.Type == ForeignKeepType) + { + result.Append($"{indent} options.AddForeignKeep({safeIdentifier}"); + result.AppendLine(operationName.StartsWith("dzsave") ? ", true);" : ");"); + } + else + { + result.AppendLine($"{indent} options.AddIfPresent({optionsName}, {safeIdentifier});"); + } } result.AppendLine(); diff --git a/samples/NetVips.Samples/Samples/ThumbnailPipeline.cs b/samples/NetVips.Samples/Samples/ThumbnailPipeline.cs index 4c8057ac..20548824 100644 --- a/samples/NetVips.Samples/Samples/ThumbnailPipeline.cs +++ b/samples/NetVips.Samples/Samples/ThumbnailPipeline.cs @@ -209,13 +209,13 @@ public void Execute(string[] args) thumb.WriteToFile("thumbnail.webp", new VOption { - {"strip", true} + {"keep", Enums.ForeignKeep.None} }); // Or: /*buffer = thumb.WriteToBuffer(".webp", new VOption { - {"strip", true} + {"keep", Enums.ForeignKeep.None} });*/ Console.WriteLine("See thumbnail.webp"); diff --git a/src/NetVips/Enums.cs b/src/NetVips/Enums.cs index cf9fb38e..04d0a4ad 100644 --- a/src/NetVips/Enums.cs +++ b/src/NetVips/Enums.cs @@ -508,6 +508,34 @@ public enum ForeignPngFilter All = None | Sub | Up | Avg | Paeth // "all" } + /// + /// Which metadata to retain. + /// + [Flags] + public enum ForeignKeep + { + /// Don't attach metadata. + None = 0, // "none" + + /// Keep Exif metadata. + Exif = 1 << 0, // "exif" + + /// Keep XMP metadata. + Xmp = 1 << 1, // "xmp" + + /// Keep IPTC metadata. + Iptc = 1 << 2, // "iptc" + + /// Keep ICC metadata. + Icc = 1 << 3, // "icc" + + /// Keep other metadata (e.g. PNG comments and some TIFF tags) + Other = 1 << 4, // "other" + + /// Keep all metadata. + All = Exif | Xmp | Iptc | Icc | Other // "all" + } + /// /// The selected encoder to use. /// diff --git a/src/NetVips/ExtensionMethods.cs b/src/NetVips/ExtensionMethods.cs index b61126bb..b340e092 100644 --- a/src/NetVips/ExtensionMethods.cs +++ b/src/NetVips/ExtensionMethods.cs @@ -272,5 +272,32 @@ internal static void AddFailOn(this VOption options, Enums.FailOn? failOn = null options.Add("fail", failOn > Enums.FailOn.None); } } + + /// + /// Compatibility method to call savers with the enum. + /// + /// The optional arguments for the saver. + /// The optional parameter. + /// Whether this operation is -like. + internal static void AddForeignKeep(this VOption options, Enums.ForeignKeep? keep = null, bool isDzsave = false) + { + if (!keep.HasValue) + { + return; + } + + if (NetVips.AtLeastLibvips(8, 15)) + { + options.Add(nameof(keep), keep); + } + else if (isDzsave) + { + options.Add("no_strip", keep != Enums.ForeignKeep.None); + } + else + { + options.Add("strip", keep == Enums.ForeignKeep.None); + } + } } } \ No newline at end of file diff --git a/src/NetVips/Image.Generated.cs b/src/NetVips/Image.Generated.cs index b9b86e8f..34374e86 100644 --- a/src/NetVips/Image.Generated.cs +++ b/src/NetVips/Image.Generated.cs @@ -1,7 +1,7 @@ //------------------------------------------------------------------------------ // // This code was generated by a tool. -// libvips version: 8.14.2 +// libvips version: 8.15.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -86,21 +86,23 @@ public Image Affine(double[] matrix, GObject interpolate = null, int[] oarea = n /// /// /// - /// using Image @out = NetVips.Image.Analyzeload(filename, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Analyzeload(filename, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Analyzeload(string filename, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Analyzeload(string filename, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("analyzeload", options, filename) as Image; } @@ -110,7 +112,7 @@ public static Image Analyzeload(string filename, bool? memory = null, Enums.Acce /// /// /// - /// using Image @out = NetVips.Image.Analyzeload(filename, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Analyzeload(filename, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -118,14 +120,16 @@ public static Image Analyzeload(string filename, bool? memory = null, Enums.Acce /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Analyzeload(string filename, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Analyzeload(string filename, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -740,7 +744,7 @@ public Image Convi(Image mask) } /// - /// Seperable convolution operation. + /// Separable convolution operation. /// /// /// @@ -820,7 +824,7 @@ public double Countlines(Enums.Direction direction) /// /// /// - /// using Image @out = NetVips.Image.Csvload(filename, skip: int, lines: int, whitespace: string, separator: string, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Csvload(filename, skip: int, lines: int, whitespace: string, separator: string, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -831,8 +835,9 @@ public double Countlines(Enums.Direction direction) /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Csvload(string filename, int? skip = null, int? lines = null, string whitespace = null, string separator = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Csvload(string filename, int? skip = null, int? lines = null, string whitespace = null, string separator = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -843,6 +848,7 @@ public static Image Csvload(string filename, int? skip = null, int? lines = null options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("csvload", options, filename) as Image; } @@ -852,7 +858,7 @@ public static Image Csvload(string filename, int? skip = null, int? lines = null /// /// /// - /// using Image @out = NetVips.Image.Csvload(filename, out var flags, skip: int, lines: int, whitespace: string, separator: string, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Csvload(filename, out var flags, skip: int, lines: int, whitespace: string, separator: string, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -864,8 +870,9 @@ public static Image Csvload(string filename, int? skip = null, int? lines = null /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Csvload(string filename, out Enums.ForeignFlags flags, int? skip = null, int? lines = null, string whitespace = null, string separator = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Csvload(string filename, out Enums.ForeignFlags flags, int? skip = null, int? lines = null, string whitespace = null, string separator = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -876,6 +883,7 @@ public static Image Csvload(string filename, out Enums.ForeignFlags flags, int? options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -892,7 +900,7 @@ public static Image Csvload(string filename, out Enums.ForeignFlags flags, int? /// /// /// - /// using Image @out = NetVips.Image.CsvloadSource(source, skip: int, lines: int, whitespace: string, separator: string, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.CsvloadSource(source, skip: int, lines: int, whitespace: string, separator: string, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. @@ -903,8 +911,9 @@ public static Image Csvload(string filename, out Enums.ForeignFlags flags, int? /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image CsvloadSource(Source source, int? skip = null, int? lines = null, string whitespace = null, string separator = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image CsvloadSource(Source source, int? skip = null, int? lines = null, string whitespace = null, string separator = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -915,6 +924,7 @@ public static Image CsvloadSource(Source source, int? skip = null, int? lines = options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("csvload_source", options, source) as Image; } @@ -924,7 +934,7 @@ public static Image CsvloadSource(Source source, int? skip = null, int? lines = /// /// /// - /// using Image @out = NetVips.Image.CsvloadStream(stream, skip: int, lines: int, whitespace: string, separator: string, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.CsvloadStream(stream, skip: int, lines: int, whitespace: string, separator: string, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. @@ -935,11 +945,12 @@ public static Image CsvloadSource(Source source, int? skip = null, int? lines = /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image CsvloadStream(Stream stream, int? skip = null, int? lines = null, string whitespace = null, string separator = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image CsvloadStream(Stream stream, int? skip = null, int? lines = null, string whitespace = null, string separator = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = CsvloadSource(source, skip, lines, whitespace, separator, memory, access, failOn); + var image = CsvloadSource(source, skip, lines, whitespace, separator, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -951,7 +962,7 @@ public static Image CsvloadStream(Stream stream, int? skip = null, int? lines = /// /// /// - /// using Image @out = NetVips.Image.CsvloadSource(source, out var flags, skip: int, lines: int, whitespace: string, separator: string, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.CsvloadSource(source, out var flags, skip: int, lines: int, whitespace: string, separator: string, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. @@ -963,8 +974,9 @@ public static Image CsvloadStream(Stream stream, int? skip = null, int? lines = /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image CsvloadSource(Source source, out Enums.ForeignFlags flags, int? skip = null, int? lines = null, string whitespace = null, string separator = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image CsvloadSource(Source source, out Enums.ForeignFlags flags, int? skip = null, int? lines = null, string whitespace = null, string separator = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -975,6 +987,7 @@ public static Image CsvloadSource(Source source, out Enums.ForeignFlags flags, i options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -991,7 +1004,7 @@ public static Image CsvloadSource(Source source, out Enums.ForeignFlags flags, i /// /// /// - /// using Image @out = NetVips.Image.CsvloadStream(stream, out var flags, skip: int, lines: int, whitespace: string, separator: string, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.CsvloadStream(stream, out var flags, skip: int, lines: int, whitespace: string, separator: string, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. @@ -1003,11 +1016,12 @@ public static Image CsvloadSource(Source source, out Enums.ForeignFlags flags, i /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image CsvloadStream(Stream stream, out Enums.ForeignFlags flags, int? skip = null, int? lines = null, string whitespace = null, string separator = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image CsvloadStream(Stream stream, out Enums.ForeignFlags flags, int? skip = null, int? lines = null, string whitespace = null, string separator = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = CsvloadSource(source, out flags, skip, lines, whitespace, separator, memory, access, failOn); + var image = CsvloadSource(source, out flags, skip, lines, whitespace, separator, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -1019,20 +1033,22 @@ public static Image CsvloadStream(Stream stream, out Enums.ForeignFlags flags, i /// /// /// - /// in.Csvsave(filename, separator: string, strip: bool, background: double[], pageHeight: int); + /// in.Csvsave(filename, profile: string, separator: string, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Filename to save to. + /// Filename of ICC profile to embed. /// Separator characters. - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void Csvsave(string filename, string separator = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void Csvsave(string filename, string profile = null, string separator = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); + options.AddIfPresent(nameof(profile), profile); options.AddIfPresent(nameof(separator), separator); - options.AddIfPresent(nameof(strip), strip); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -1044,20 +1060,22 @@ public void Csvsave(string filename, string separator = null, bool? strip = null /// /// /// - /// in.CsvsaveTarget(target, separator: string, strip: bool, background: double[], pageHeight: int); + /// in.CsvsaveTarget(target, profile: string, separator: string, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Target to save to. + /// Filename of ICC profile to embed. /// Separator characters. - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void CsvsaveTarget(Target target, string separator = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void CsvsaveTarget(Target target, string profile = null, string separator = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); + options.AddIfPresent(nameof(profile), profile); options.AddIfPresent(nameof(separator), separator); - options.AddIfPresent(nameof(strip), strip); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -1069,18 +1087,19 @@ public void CsvsaveTarget(Target target, string separator = null, bool? strip = /// /// /// - /// in.CsvsaveStream(stream, separator: string, strip: bool, background: double[], pageHeight: int); + /// in.CsvsaveStream(stream, profile: string, separator: string, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Stream to save to. + /// Filename of ICC profile to embed. /// Separator characters. - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void CsvsaveStream(Stream stream, string separator = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void CsvsaveStream(Stream stream, string profile = null, string separator = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { using var target = TargetStream.NewFromStream(stream); - CsvsaveTarget(target, separator, strip, background, pageHeight); + CsvsaveTarget(target, profile, separator, keep, background, pageHeight); } /// @@ -1162,15 +1181,16 @@ public Image Divide(Image right) /// /// /// - /// in.Dzsave(filename, basename: string, layout: Enums.ForeignDzLayout, suffix: string, overlap: int, tileSize: int, centre: bool, depth: Enums.ForeignDzDepth, angle: Enums.Angle, container: Enums.ForeignDzContainer, compression: int, regionShrink: Enums.RegionShrink, skipBlanks: int, noStrip: bool, id: string, strip: bool, background: double[], pageHeight: int); + /// in.Dzsave(filename, imagename: string, layout: Enums.ForeignDzLayout, suffix: string, overlap: int, tileSize: int, profile: string, centre: bool, depth: Enums.ForeignDzDepth, angle: Enums.Angle, container: Enums.ForeignDzContainer, compression: int, regionShrink: Enums.RegionShrink, skipBlanks: int, id: string, q: int, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Filename to save to. - /// Base name to save to. + /// Image name. /// Directory layout. /// Filename suffix for tiles. /// Tile overlap in pixels. /// Tile size in pixels. + /// Filename of ICC profile to embed. /// Center image in tile. /// Pyramid depth. /// Rotate image during save. @@ -1178,20 +1198,21 @@ public Image Divide(Image right) /// ZIP deflate compression level. /// Method to shrink regions. /// Skip tiles which are nearly equal to the background. - /// Don't strip tile metadata. /// Resource ID. - /// Strip all metadata from image. + /// Q factor. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void Dzsave(string filename, string basename = null, Enums.ForeignDzLayout? layout = null, string suffix = null, int? overlap = null, int? tileSize = null, bool? centre = null, Enums.ForeignDzDepth? depth = null, Enums.Angle? angle = null, Enums.ForeignDzContainer? container = null, int? compression = null, Enums.RegionShrink? regionShrink = null, int? skipBlanks = null, bool? noStrip = null, string id = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void Dzsave(string filename, string imagename = null, Enums.ForeignDzLayout? layout = null, string suffix = null, int? overlap = null, int? tileSize = null, string profile = null, bool? centre = null, Enums.ForeignDzDepth? depth = null, Enums.Angle? angle = null, Enums.ForeignDzContainer? container = null, int? compression = null, Enums.RegionShrink? regionShrink = null, int? skipBlanks = null, string id = null, int? q = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); - options.AddIfPresent(nameof(basename), basename); + options.AddIfPresent(NetVips.AtLeastLibvips(8, 15) ? nameof(imagename) : "basename", imagename); options.AddIfPresent(nameof(layout), layout); options.AddIfPresent(nameof(suffix), suffix); options.AddIfPresent(nameof(overlap), overlap); options.AddIfPresent("tile_size", tileSize); + options.AddIfPresent(nameof(profile), profile); options.AddIfPresent(nameof(centre), centre); options.AddIfPresent(nameof(depth), depth); options.AddIfPresent(nameof(angle), angle); @@ -1199,9 +1220,9 @@ public void Dzsave(string filename, string basename = null, Enums.ForeignDzLayou options.AddIfPresent(nameof(compression), compression); options.AddIfPresent("region_shrink", regionShrink); options.AddIfPresent("skip_blanks", skipBlanks); - options.AddIfPresent("no_strip", noStrip); options.AddIfPresent(nameof(id), id); - options.AddIfPresent(nameof(strip), strip); + options.AddIfPresent("Q", q); + options.AddForeignKeep(keep, true); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -1213,14 +1234,15 @@ public void Dzsave(string filename, string basename = null, Enums.ForeignDzLayou /// /// /// - /// byte[] buffer = in.DzsaveBuffer(basename: string, layout: Enums.ForeignDzLayout, suffix: string, overlap: int, tileSize: int, centre: bool, depth: Enums.ForeignDzDepth, angle: Enums.Angle, container: Enums.ForeignDzContainer, compression: int, regionShrink: Enums.RegionShrink, skipBlanks: int, noStrip: bool, id: string, strip: bool, background: double[], pageHeight: int); + /// byte[] buffer = in.DzsaveBuffer(imagename: string, layout: Enums.ForeignDzLayout, suffix: string, overlap: int, tileSize: int, profile: string, centre: bool, depth: Enums.ForeignDzDepth, angle: Enums.Angle, container: Enums.ForeignDzContainer, compression: int, regionShrink: Enums.RegionShrink, skipBlanks: int, id: string, q: int, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// - /// Base name to save to. + /// Image name. /// Directory layout. /// Filename suffix for tiles. /// Tile overlap in pixels. /// Tile size in pixels. + /// Filename of ICC profile to embed. /// Center image in tile. /// Pyramid depth. /// Rotate image during save. @@ -1228,21 +1250,22 @@ public void Dzsave(string filename, string basename = null, Enums.ForeignDzLayou /// ZIP deflate compression level. /// Method to shrink regions. /// Skip tiles which are nearly equal to the background. - /// Don't strip tile metadata. /// Resource ID. - /// Strip all metadata from image. + /// Q factor. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. /// An array of bytes. - public byte[] DzsaveBuffer(string basename = null, Enums.ForeignDzLayout? layout = null, string suffix = null, int? overlap = null, int? tileSize = null, bool? centre = null, Enums.ForeignDzDepth? depth = null, Enums.Angle? angle = null, Enums.ForeignDzContainer? container = null, int? compression = null, Enums.RegionShrink? regionShrink = null, int? skipBlanks = null, bool? noStrip = null, string id = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public byte[] DzsaveBuffer(string imagename = null, Enums.ForeignDzLayout? layout = null, string suffix = null, int? overlap = null, int? tileSize = null, string profile = null, bool? centre = null, Enums.ForeignDzDepth? depth = null, Enums.Angle? angle = null, Enums.ForeignDzContainer? container = null, int? compression = null, Enums.RegionShrink? regionShrink = null, int? skipBlanks = null, string id = null, int? q = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); - options.AddIfPresent(nameof(basename), basename); + options.AddIfPresent(NetVips.AtLeastLibvips(8, 15) ? nameof(imagename) : "basename", imagename); options.AddIfPresent(nameof(layout), layout); options.AddIfPresent(nameof(suffix), suffix); options.AddIfPresent(nameof(overlap), overlap); options.AddIfPresent("tile_size", tileSize); + options.AddIfPresent(nameof(profile), profile); options.AddIfPresent(nameof(centre), centre); options.AddIfPresent(nameof(depth), depth); options.AddIfPresent(nameof(angle), angle); @@ -1250,9 +1273,9 @@ public byte[] DzsaveBuffer(string basename = null, Enums.ForeignDzLayout? layout options.AddIfPresent(nameof(compression), compression); options.AddIfPresent("region_shrink", regionShrink); options.AddIfPresent("skip_blanks", skipBlanks); - options.AddIfPresent("no_strip", noStrip); options.AddIfPresent(nameof(id), id); - options.AddIfPresent(nameof(strip), strip); + options.AddIfPresent("Q", q); + options.AddForeignKeep(keep, true); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -1264,15 +1287,16 @@ public byte[] DzsaveBuffer(string basename = null, Enums.ForeignDzLayout? layout /// /// /// - /// in.DzsaveTarget(target, basename: string, layout: Enums.ForeignDzLayout, suffix: string, overlap: int, tileSize: int, centre: bool, depth: Enums.ForeignDzDepth, angle: Enums.Angle, container: Enums.ForeignDzContainer, compression: int, regionShrink: Enums.RegionShrink, skipBlanks: int, noStrip: bool, id: string, strip: bool, background: double[], pageHeight: int); + /// in.DzsaveTarget(target, imagename: string, layout: Enums.ForeignDzLayout, suffix: string, overlap: int, tileSize: int, profile: string, centre: bool, depth: Enums.ForeignDzDepth, angle: Enums.Angle, container: Enums.ForeignDzContainer, compression: int, regionShrink: Enums.RegionShrink, skipBlanks: int, id: string, q: int, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Target to save to. - /// Base name to save to. + /// Image name. /// Directory layout. /// Filename suffix for tiles. /// Tile overlap in pixels. /// Tile size in pixels. + /// Filename of ICC profile to embed. /// Center image in tile. /// Pyramid depth. /// Rotate image during save. @@ -1280,20 +1304,21 @@ public byte[] DzsaveBuffer(string basename = null, Enums.ForeignDzLayout? layout /// ZIP deflate compression level. /// Method to shrink regions. /// Skip tiles which are nearly equal to the background. - /// Don't strip tile metadata. /// Resource ID. - /// Strip all metadata from image. + /// Q factor. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void DzsaveTarget(Target target, string basename = null, Enums.ForeignDzLayout? layout = null, string suffix = null, int? overlap = null, int? tileSize = null, bool? centre = null, Enums.ForeignDzDepth? depth = null, Enums.Angle? angle = null, Enums.ForeignDzContainer? container = null, int? compression = null, Enums.RegionShrink? regionShrink = null, int? skipBlanks = null, bool? noStrip = null, string id = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void DzsaveTarget(Target target, string imagename = null, Enums.ForeignDzLayout? layout = null, string suffix = null, int? overlap = null, int? tileSize = null, string profile = null, bool? centre = null, Enums.ForeignDzDepth? depth = null, Enums.Angle? angle = null, Enums.ForeignDzContainer? container = null, int? compression = null, Enums.RegionShrink? regionShrink = null, int? skipBlanks = null, string id = null, int? q = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); - options.AddIfPresent(nameof(basename), basename); + options.AddIfPresent(NetVips.AtLeastLibvips(8, 15) ? nameof(imagename) : "basename", imagename); options.AddIfPresent(nameof(layout), layout); options.AddIfPresent(nameof(suffix), suffix); options.AddIfPresent(nameof(overlap), overlap); options.AddIfPresent("tile_size", tileSize); + options.AddIfPresent(nameof(profile), profile); options.AddIfPresent(nameof(centre), centre); options.AddIfPresent(nameof(depth), depth); options.AddIfPresent(nameof(angle), angle); @@ -1301,9 +1326,9 @@ public void DzsaveTarget(Target target, string basename = null, Enums.ForeignDzL options.AddIfPresent(nameof(compression), compression); options.AddIfPresent("region_shrink", regionShrink); options.AddIfPresent("skip_blanks", skipBlanks); - options.AddIfPresent("no_strip", noStrip); options.AddIfPresent(nameof(id), id); - options.AddIfPresent(nameof(strip), strip); + options.AddIfPresent("Q", q); + options.AddForeignKeep(keep, true); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -1315,15 +1340,16 @@ public void DzsaveTarget(Target target, string basename = null, Enums.ForeignDzL /// /// /// - /// in.DzsaveStream(stream, basename: string, layout: Enums.ForeignDzLayout, suffix: string, overlap: int, tileSize: int, centre: bool, depth: Enums.ForeignDzDepth, angle: Enums.Angle, container: Enums.ForeignDzContainer, compression: int, regionShrink: Enums.RegionShrink, skipBlanks: int, noStrip: bool, id: string, strip: bool, background: double[], pageHeight: int); + /// in.DzsaveStream(stream, imagename: string, layout: Enums.ForeignDzLayout, suffix: string, overlap: int, tileSize: int, profile: string, centre: bool, depth: Enums.ForeignDzDepth, angle: Enums.Angle, container: Enums.ForeignDzContainer, compression: int, regionShrink: Enums.RegionShrink, skipBlanks: int, id: string, q: int, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Stream to save to. - /// Base name to save to. + /// Image name. /// Directory layout. /// Filename suffix for tiles. /// Tile overlap in pixels. /// Tile size in pixels. + /// Filename of ICC profile to embed. /// Center image in tile. /// Pyramid depth. /// Rotate image during save. @@ -1331,15 +1357,15 @@ public void DzsaveTarget(Target target, string basename = null, Enums.ForeignDzL /// ZIP deflate compression level. /// Method to shrink regions. /// Skip tiles which are nearly equal to the background. - /// Don't strip tile metadata. /// Resource ID. - /// Strip all metadata from image. + /// Q factor. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void DzsaveStream(Stream stream, string basename = null, Enums.ForeignDzLayout? layout = null, string suffix = null, int? overlap = null, int? tileSize = null, bool? centre = null, Enums.ForeignDzDepth? depth = null, Enums.Angle? angle = null, Enums.ForeignDzContainer? container = null, int? compression = null, Enums.RegionShrink? regionShrink = null, int? skipBlanks = null, bool? noStrip = null, string id = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void DzsaveStream(Stream stream, string imagename = null, Enums.ForeignDzLayout? layout = null, string suffix = null, int? overlap = null, int? tileSize = null, string profile = null, bool? centre = null, Enums.ForeignDzDepth? depth = null, Enums.Angle? angle = null, Enums.ForeignDzContainer? container = null, int? compression = null, Enums.RegionShrink? regionShrink = null, int? skipBlanks = null, string id = null, int? q = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { using var target = TargetStream.NewFromStream(stream); - DzsaveTarget(target, basename, layout, suffix, overlap, tileSize, centre, depth, angle, container, compression, regionShrink, skipBlanks, noStrip, id, strip, background, pageHeight); + DzsaveTarget(target, imagename, layout, suffix, overlap, tileSize, profile, centre, depth, angle, container, compression, regionShrink, skipBlanks, id, q, keep, background, pageHeight); } /// @@ -1501,18 +1527,20 @@ public Image FillNearest(out Image distance) /// /// /// - /// var output = in.FindTrim(threshold: double, background: double[]); + /// var output = in.FindTrim(threshold: double, background: double[], lineArt: bool); /// /// /// Object threshold. /// Color for background pixels. + /// Enable line art mode. /// An array of objects. - public object[] FindTrim(double? threshold = null, double[] background = null) + public object[] FindTrim(double? threshold = null, double[] background = null, bool? lineArt = null) { var options = new VOption(); options.AddIfPresent(nameof(threshold), threshold); options.AddIfPresent(nameof(background), background); + options.AddIfPresent("line_art", lineArt); return this.Call("find_trim", options) as object[]; } @@ -1522,21 +1550,23 @@ public object[] FindTrim(double? threshold = null, double[] background = null) /// /// /// - /// using Image @out = NetVips.Image.Fitsload(filename, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Fitsload(filename, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Fitsload(string filename, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Fitsload(string filename, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("fitsload", options, filename) as Image; } @@ -1546,7 +1576,7 @@ public static Image Fitsload(string filename, bool? memory = null, Enums.Access? /// /// /// - /// using Image @out = NetVips.Image.Fitsload(filename, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Fitsload(filename, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -1554,14 +1584,16 @@ public static Image Fitsload(string filename, bool? memory = null, Enums.Access? /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Fitsload(string filename, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Fitsload(string filename, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -1578,21 +1610,23 @@ public static Image Fitsload(string filename, out Enums.ForeignFlags flags, bool /// /// /// - /// using Image @out = NetVips.Image.FitsloadSource(source, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.FitsloadSource(source, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image FitsloadSource(Source source, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image FitsloadSource(Source source, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("fitsload_source", options, source) as Image; } @@ -1602,18 +1636,19 @@ public static Image FitsloadSource(Source source, bool? memory = null, Enums.Acc /// /// /// - /// using Image @out = NetVips.Image.FitsloadStream(stream, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.FitsloadStream(stream, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image FitsloadStream(Stream stream, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image FitsloadStream(Stream stream, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = FitsloadSource(source, memory, access, failOn); + var image = FitsloadSource(source, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -1625,7 +1660,7 @@ public static Image FitsloadStream(Stream stream, bool? memory = null, Enums.Acc /// /// /// - /// using Image @out = NetVips.Image.FitsloadSource(source, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.FitsloadSource(source, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. @@ -1633,14 +1668,16 @@ public static Image FitsloadStream(Stream stream, bool? memory = null, Enums.Acc /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image FitsloadSource(Source source, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image FitsloadSource(Source source, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -1657,7 +1694,7 @@ public static Image FitsloadSource(Source source, out Enums.ForeignFlags flags, /// /// /// - /// using Image @out = NetVips.Image.FitsloadStream(stream, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.FitsloadStream(stream, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. @@ -1665,11 +1702,12 @@ public static Image FitsloadSource(Source source, out Enums.ForeignFlags flags, /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image FitsloadStream(Stream stream, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image FitsloadStream(Stream stream, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = FitsloadSource(source, out flags, memory, access, failOn); + var image = FitsloadSource(source, out flags, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -1681,18 +1719,20 @@ public static Image FitsloadStream(Stream stream, out Enums.ForeignFlags flags, /// /// /// - /// in.Fitssave(filename, strip: bool, background: double[], pageHeight: int); + /// in.Fitssave(filename, profile: string, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Filename to save to. - /// Strip all metadata from image. + /// Filename of ICC profile to embed. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void Fitssave(string filename, bool? strip = null, double[] background = null, int? pageHeight = null) + public void Fitssave(string filename, string profile = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); - options.AddIfPresent(nameof(strip), strip); + options.AddIfPresent(nameof(profile), profile); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -1905,7 +1945,7 @@ public double[] Getpoint(int x, int y) /// /// /// - /// using Image @out = NetVips.Image.Gifload(filename, n: int, page: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Gifload(filename, n: int, page: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -1914,8 +1954,9 @@ public double[] Getpoint(int x, int y) /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Gifload(string filename, int? n = null, int? page = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Gifload(string filename, int? n = null, int? page = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -1924,6 +1965,7 @@ public static Image Gifload(string filename, int? n = null, int? page = null, bo options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("gifload", options, filename) as Image; } @@ -1933,7 +1975,7 @@ public static Image Gifload(string filename, int? n = null, int? page = null, bo /// /// /// - /// using Image @out = NetVips.Image.Gifload(filename, out var flags, n: int, page: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Gifload(filename, out var flags, n: int, page: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -1943,8 +1985,9 @@ public static Image Gifload(string filename, int? n = null, int? page = null, bo /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Gifload(string filename, out Enums.ForeignFlags flags, int? n = null, int? page = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Gifload(string filename, out Enums.ForeignFlags flags, int? n = null, int? page = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -1953,6 +1996,7 @@ public static Image Gifload(string filename, out Enums.ForeignFlags flags, int? options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -1969,7 +2013,7 @@ public static Image Gifload(string filename, out Enums.ForeignFlags flags, int? /// /// /// - /// using Image @out = NetVips.Image.GifloadBuffer(buffer, n: int, page: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.GifloadBuffer(buffer, n: int, page: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Buffer to load from. @@ -1978,8 +2022,9 @@ public static Image Gifload(string filename, out Enums.ForeignFlags flags, int? /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image GifloadBuffer(byte[] buffer, int? n = null, int? page = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image GifloadBuffer(byte[] buffer, int? n = null, int? page = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -1988,6 +2033,7 @@ public static Image GifloadBuffer(byte[] buffer, int? n = null, int? page = null options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("gifload_buffer", options, buffer) as Image; } @@ -1997,7 +2043,7 @@ public static Image GifloadBuffer(byte[] buffer, int? n = null, int? page = null /// /// /// - /// using Image @out = NetVips.Image.GifloadBuffer(buffer, out var flags, n: int, page: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.GifloadBuffer(buffer, out var flags, n: int, page: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Buffer to load from. @@ -2007,8 +2053,9 @@ public static Image GifloadBuffer(byte[] buffer, int? n = null, int? page = null /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image GifloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, int? n = null, int? page = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image GifloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, int? n = null, int? page = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -2017,6 +2064,7 @@ public static Image GifloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, i options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -2033,7 +2081,7 @@ public static Image GifloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, i /// /// /// - /// using Image @out = NetVips.Image.GifloadSource(source, n: int, page: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.GifloadSource(source, n: int, page: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. @@ -2042,8 +2090,9 @@ public static Image GifloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, i /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image GifloadSource(Source source, int? n = null, int? page = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image GifloadSource(Source source, int? n = null, int? page = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -2052,6 +2101,7 @@ public static Image GifloadSource(Source source, int? n = null, int? page = null options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("gifload_source", options, source) as Image; } @@ -2061,7 +2111,7 @@ public static Image GifloadSource(Source source, int? n = null, int? page = null /// /// /// - /// using Image @out = NetVips.Image.GifloadStream(stream, n: int, page: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.GifloadStream(stream, n: int, page: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. @@ -2070,11 +2120,12 @@ public static Image GifloadSource(Source source, int? n = null, int? page = null /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image GifloadStream(Stream stream, int? n = null, int? page = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image GifloadStream(Stream stream, int? n = null, int? page = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = GifloadSource(source, n, page, memory, access, failOn); + var image = GifloadSource(source, n, page, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -2086,7 +2137,7 @@ public static Image GifloadStream(Stream stream, int? n = null, int? page = null /// /// /// - /// using Image @out = NetVips.Image.GifloadSource(source, out var flags, n: int, page: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.GifloadSource(source, out var flags, n: int, page: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. @@ -2096,8 +2147,9 @@ public static Image GifloadStream(Stream stream, int? n = null, int? page = null /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image GifloadSource(Source source, out Enums.ForeignFlags flags, int? n = null, int? page = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image GifloadSource(Source source, out Enums.ForeignFlags flags, int? n = null, int? page = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -2106,6 +2158,7 @@ public static Image GifloadSource(Source source, out Enums.ForeignFlags flags, i options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -2122,7 +2175,7 @@ public static Image GifloadSource(Source source, out Enums.ForeignFlags flags, i /// /// /// - /// using Image @out = NetVips.Image.GifloadStream(stream, out var flags, n: int, page: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.GifloadStream(stream, out var flags, n: int, page: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. @@ -2132,11 +2185,12 @@ public static Image GifloadSource(Source source, out Enums.ForeignFlags flags, i /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image GifloadStream(Stream stream, out Enums.ForeignFlags flags, int? n = null, int? page = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image GifloadStream(Stream stream, out Enums.ForeignFlags flags, int? n = null, int? page = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = GifloadSource(source, out flags, n, page, memory, access, failOn); + var image = GifloadSource(source, out flags, n, page, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -2148,32 +2202,34 @@ public static Image GifloadStream(Stream stream, out Enums.ForeignFlags flags, i /// /// /// - /// in.Gifsave(filename, dither: double, effort: int, bitdepth: int, interframeMaxerror: double, reuse: bool, interpaletteMaxerror: double, interlace: bool, strip: bool, background: double[], pageHeight: int); + /// in.Gifsave(filename, dither: double, effort: int, profile: string, bitdepth: int, interframeMaxerror: double, reuse: bool, interpaletteMaxerror: double, interlace: bool, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Filename to save to. /// Amount of dithering. /// Quantisation effort. + /// Filename of ICC profile to embed. /// Number of bits per pixel. /// Maximum inter-frame error for transparency. /// Reuse palette from input. /// Maximum inter-palette error for palette reusage. /// Generate an interlaced (progressive) GIF. - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void Gifsave(string filename, double? dither = null, int? effort = null, int? bitdepth = null, double? interframeMaxerror = null, bool? reuse = null, double? interpaletteMaxerror = null, bool? interlace = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void Gifsave(string filename, double? dither = null, int? effort = null, string profile = null, int? bitdepth = null, double? interframeMaxerror = null, bool? reuse = null, double? interpaletteMaxerror = null, bool? interlace = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); options.AddIfPresent(nameof(dither), dither); options.AddIfPresent(nameof(effort), effort); + options.AddIfPresent(nameof(profile), profile); options.AddIfPresent(nameof(bitdepth), bitdepth); options.AddIfPresent("interframe_maxerror", interframeMaxerror); options.AddIfPresent(nameof(reuse), reuse); options.AddIfPresent("interpalette_maxerror", interpaletteMaxerror); options.AddIfPresent(nameof(interlace), interlace); - options.AddIfPresent(nameof(strip), strip); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -2185,32 +2241,34 @@ public void Gifsave(string filename, double? dither = null, int? effort = null, /// /// /// - /// byte[] buffer = in.GifsaveBuffer(dither: double, effort: int, bitdepth: int, interframeMaxerror: double, reuse: bool, interpaletteMaxerror: double, interlace: bool, strip: bool, background: double[], pageHeight: int); + /// byte[] buffer = in.GifsaveBuffer(dither: double, effort: int, profile: string, bitdepth: int, interframeMaxerror: double, reuse: bool, interpaletteMaxerror: double, interlace: bool, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Amount of dithering. /// Quantisation effort. + /// Filename of ICC profile to embed. /// Number of bits per pixel. /// Maximum inter-frame error for transparency. /// Reuse palette from input. /// Maximum inter-palette error for palette reusage. /// Generate an interlaced (progressive) GIF. - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. /// An array of bytes. - public byte[] GifsaveBuffer(double? dither = null, int? effort = null, int? bitdepth = null, double? interframeMaxerror = null, bool? reuse = null, double? interpaletteMaxerror = null, bool? interlace = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public byte[] GifsaveBuffer(double? dither = null, int? effort = null, string profile = null, int? bitdepth = null, double? interframeMaxerror = null, bool? reuse = null, double? interpaletteMaxerror = null, bool? interlace = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); options.AddIfPresent(nameof(dither), dither); options.AddIfPresent(nameof(effort), effort); + options.AddIfPresent(nameof(profile), profile); options.AddIfPresent(nameof(bitdepth), bitdepth); options.AddIfPresent("interframe_maxerror", interframeMaxerror); options.AddIfPresent(nameof(reuse), reuse); options.AddIfPresent("interpalette_maxerror", interpaletteMaxerror); options.AddIfPresent(nameof(interlace), interlace); - options.AddIfPresent(nameof(strip), strip); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -2222,32 +2280,34 @@ public byte[] GifsaveBuffer(double? dither = null, int? effort = null, int? bitd /// /// /// - /// in.GifsaveTarget(target, dither: double, effort: int, bitdepth: int, interframeMaxerror: double, reuse: bool, interpaletteMaxerror: double, interlace: bool, strip: bool, background: double[], pageHeight: int); + /// in.GifsaveTarget(target, dither: double, effort: int, profile: string, bitdepth: int, interframeMaxerror: double, reuse: bool, interpaletteMaxerror: double, interlace: bool, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Target to save to. /// Amount of dithering. /// Quantisation effort. + /// Filename of ICC profile to embed. /// Number of bits per pixel. /// Maximum inter-frame error for transparency. /// Reuse palette from input. /// Maximum inter-palette error for palette reusage. /// Generate an interlaced (progressive) GIF. - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void GifsaveTarget(Target target, double? dither = null, int? effort = null, int? bitdepth = null, double? interframeMaxerror = null, bool? reuse = null, double? interpaletteMaxerror = null, bool? interlace = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void GifsaveTarget(Target target, double? dither = null, int? effort = null, string profile = null, int? bitdepth = null, double? interframeMaxerror = null, bool? reuse = null, double? interpaletteMaxerror = null, bool? interlace = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); options.AddIfPresent(nameof(dither), dither); options.AddIfPresent(nameof(effort), effort); + options.AddIfPresent(nameof(profile), profile); options.AddIfPresent(nameof(bitdepth), bitdepth); options.AddIfPresent("interframe_maxerror", interframeMaxerror); options.AddIfPresent(nameof(reuse), reuse); options.AddIfPresent("interpalette_maxerror", interpaletteMaxerror); options.AddIfPresent(nameof(interlace), interlace); - options.AddIfPresent(nameof(strip), strip); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -2259,24 +2319,25 @@ public void GifsaveTarget(Target target, double? dither = null, int? effort = nu /// /// /// - /// in.GifsaveStream(stream, dither: double, effort: int, bitdepth: int, interframeMaxerror: double, reuse: bool, interpaletteMaxerror: double, interlace: bool, strip: bool, background: double[], pageHeight: int); + /// in.GifsaveStream(stream, dither: double, effort: int, profile: string, bitdepth: int, interframeMaxerror: double, reuse: bool, interpaletteMaxerror: double, interlace: bool, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Stream to save to. /// Amount of dithering. /// Quantisation effort. + /// Filename of ICC profile to embed. /// Number of bits per pixel. /// Maximum inter-frame error for transparency. /// Reuse palette from input. /// Maximum inter-palette error for palette reusage. /// Generate an interlaced (progressive) GIF. - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void GifsaveStream(Stream stream, double? dither = null, int? effort = null, int? bitdepth = null, double? interframeMaxerror = null, bool? reuse = null, double? interpaletteMaxerror = null, bool? interlace = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void GifsaveStream(Stream stream, double? dither = null, int? effort = null, string profile = null, int? bitdepth = null, double? interframeMaxerror = null, bool? reuse = null, double? interpaletteMaxerror = null, bool? interlace = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { using var target = TargetStream.NewFromStream(stream); - GifsaveTarget(target, dither, effort, bitdepth, interframeMaxerror, reuse, interpaletteMaxerror, interlace, strip, background, pageHeight); + GifsaveTarget(target, dither, effort, profile, bitdepth, interframeMaxerror, reuse, interpaletteMaxerror, interlace, keep, background, pageHeight); } /// @@ -2367,7 +2428,7 @@ public Image Grid(int tileHeight, int across, int down) /// /// /// - /// using Image @out = NetVips.Image.Heifload(filename, page: int, n: int, thumbnail: bool, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Heifload(filename, page: int, n: int, thumbnail: bool, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -2378,8 +2439,9 @@ public Image Grid(int tileHeight, int across, int down) /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Heifload(string filename, int? page = null, int? n = null, bool? thumbnail = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Heifload(string filename, int? page = null, int? n = null, bool? thumbnail = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -2390,6 +2452,7 @@ public static Image Heifload(string filename, int? page = null, int? n = null, b options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("heifload", options, filename) as Image; } @@ -2399,7 +2462,7 @@ public static Image Heifload(string filename, int? page = null, int? n = null, b /// /// /// - /// using Image @out = NetVips.Image.Heifload(filename, out var flags, page: int, n: int, thumbnail: bool, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Heifload(filename, out var flags, page: int, n: int, thumbnail: bool, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -2411,8 +2474,9 @@ public static Image Heifload(string filename, int? page = null, int? n = null, b /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Heifload(string filename, out Enums.ForeignFlags flags, int? page = null, int? n = null, bool? thumbnail = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Heifload(string filename, out Enums.ForeignFlags flags, int? page = null, int? n = null, bool? thumbnail = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -2423,6 +2487,7 @@ public static Image Heifload(string filename, out Enums.ForeignFlags flags, int? options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -2439,7 +2504,7 @@ public static Image Heifload(string filename, out Enums.ForeignFlags flags, int? /// /// /// - /// using Image @out = NetVips.Image.HeifloadBuffer(buffer, page: int, n: int, thumbnail: bool, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.HeifloadBuffer(buffer, page: int, n: int, thumbnail: bool, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Buffer to load from. @@ -2450,8 +2515,9 @@ public static Image Heifload(string filename, out Enums.ForeignFlags flags, int? /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image HeifloadBuffer(byte[] buffer, int? page = null, int? n = null, bool? thumbnail = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image HeifloadBuffer(byte[] buffer, int? page = null, int? n = null, bool? thumbnail = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -2462,6 +2528,7 @@ public static Image HeifloadBuffer(byte[] buffer, int? page = null, int? n = nul options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("heifload_buffer", options, buffer) as Image; } @@ -2471,7 +2538,7 @@ public static Image HeifloadBuffer(byte[] buffer, int? page = null, int? n = nul /// /// /// - /// using Image @out = NetVips.Image.HeifloadBuffer(buffer, out var flags, page: int, n: int, thumbnail: bool, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.HeifloadBuffer(buffer, out var flags, page: int, n: int, thumbnail: bool, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Buffer to load from. @@ -2483,8 +2550,9 @@ public static Image HeifloadBuffer(byte[] buffer, int? page = null, int? n = nul /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image HeifloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, int? page = null, int? n = null, bool? thumbnail = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image HeifloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, int? page = null, int? n = null, bool? thumbnail = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -2495,6 +2563,7 @@ public static Image HeifloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -2511,7 +2580,7 @@ public static Image HeifloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, /// /// /// - /// using Image @out = NetVips.Image.HeifloadSource(source, page: int, n: int, thumbnail: bool, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.HeifloadSource(source, page: int, n: int, thumbnail: bool, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. @@ -2522,8 +2591,9 @@ public static Image HeifloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image HeifloadSource(Source source, int? page = null, int? n = null, bool? thumbnail = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image HeifloadSource(Source source, int? page = null, int? n = null, bool? thumbnail = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -2534,6 +2604,7 @@ public static Image HeifloadSource(Source source, int? page = null, int? n = nul options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("heifload_source", options, source) as Image; } @@ -2543,7 +2614,7 @@ public static Image HeifloadSource(Source source, int? page = null, int? n = nul /// /// /// - /// using Image @out = NetVips.Image.HeifloadStream(stream, page: int, n: int, thumbnail: bool, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.HeifloadStream(stream, page: int, n: int, thumbnail: bool, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. @@ -2554,11 +2625,12 @@ public static Image HeifloadSource(Source source, int? page = null, int? n = nul /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image HeifloadStream(Stream stream, int? page = null, int? n = null, bool? thumbnail = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image HeifloadStream(Stream stream, int? page = null, int? n = null, bool? thumbnail = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = HeifloadSource(source, page, n, thumbnail, unlimited, memory, access, failOn); + var image = HeifloadSource(source, page, n, thumbnail, unlimited, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -2570,7 +2642,7 @@ public static Image HeifloadStream(Stream stream, int? page = null, int? n = nul /// /// /// - /// using Image @out = NetVips.Image.HeifloadSource(source, out var flags, page: int, n: int, thumbnail: bool, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.HeifloadSource(source, out var flags, page: int, n: int, thumbnail: bool, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. @@ -2582,8 +2654,9 @@ public static Image HeifloadStream(Stream stream, int? page = null, int? n = nul /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image HeifloadSource(Source source, out Enums.ForeignFlags flags, int? page = null, int? n = null, bool? thumbnail = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image HeifloadSource(Source source, out Enums.ForeignFlags flags, int? page = null, int? n = null, bool? thumbnail = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -2594,6 +2667,7 @@ public static Image HeifloadSource(Source source, out Enums.ForeignFlags flags, options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -2610,7 +2684,7 @@ public static Image HeifloadSource(Source source, out Enums.ForeignFlags flags, /// /// /// - /// using Image @out = NetVips.Image.HeifloadStream(stream, out var flags, page: int, n: int, thumbnail: bool, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.HeifloadStream(stream, out var flags, page: int, n: int, thumbnail: bool, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. @@ -2622,11 +2696,12 @@ public static Image HeifloadSource(Source source, out Enums.ForeignFlags flags, /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image HeifloadStream(Stream stream, out Enums.ForeignFlags flags, int? page = null, int? n = null, bool? thumbnail = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image HeifloadStream(Stream stream, out Enums.ForeignFlags flags, int? page = null, int? n = null, bool? thumbnail = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = HeifloadSource(source, out flags, page, n, thumbnail, unlimited, memory, access, failOn); + var image = HeifloadSource(source, out flags, page, n, thumbnail, unlimited, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -2638,32 +2713,34 @@ public static Image HeifloadStream(Stream stream, out Enums.ForeignFlags flags, /// /// /// - /// in.Heifsave(filename, q: int, bitdepth: int, lossless: bool, compression: Enums.ForeignHeifCompression, effort: int, subsampleMode: Enums.ForeignSubsample, encoder: Enums.ForeignHeifEncoder, strip: bool, background: double[], pageHeight: int); + /// in.Heifsave(filename, q: int, bitdepth: int, profile: string, lossless: bool, compression: Enums.ForeignHeifCompression, effort: int, subsampleMode: Enums.ForeignSubsample, encoder: Enums.ForeignHeifEncoder, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Filename to save to. /// Q factor. /// Number of bits per pixel. + /// Filename of ICC profile to embed. /// Enable lossless compression. /// Compression format. /// CPU effort. /// Select chroma subsample operation mode. /// Select encoder to use. - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void Heifsave(string filename, int? q = null, int? bitdepth = null, bool? lossless = null, Enums.ForeignHeifCompression? compression = null, int? effort = null, Enums.ForeignSubsample? subsampleMode = null, Enums.ForeignHeifEncoder? encoder = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void Heifsave(string filename, int? q = null, int? bitdepth = null, string profile = null, bool? lossless = null, Enums.ForeignHeifCompression? compression = null, int? effort = null, Enums.ForeignSubsample? subsampleMode = null, Enums.ForeignHeifEncoder? encoder = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); options.AddIfPresent("Q", q); options.AddIfPresent(nameof(bitdepth), bitdepth); + options.AddIfPresent(nameof(profile), profile); options.AddIfPresent(nameof(lossless), lossless); options.AddIfPresent(nameof(compression), compression); options.AddIfPresent(nameof(effort), effort); options.AddIfPresent("subsample_mode", subsampleMode); options.AddIfPresent(nameof(encoder), encoder); - options.AddIfPresent(nameof(strip), strip); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -2675,32 +2752,34 @@ public void Heifsave(string filename, int? q = null, int? bitdepth = null, bool? /// /// /// - /// byte[] buffer = in.HeifsaveBuffer(q: int, bitdepth: int, lossless: bool, compression: Enums.ForeignHeifCompression, effort: int, subsampleMode: Enums.ForeignSubsample, encoder: Enums.ForeignHeifEncoder, strip: bool, background: double[], pageHeight: int); + /// byte[] buffer = in.HeifsaveBuffer(q: int, bitdepth: int, profile: string, lossless: bool, compression: Enums.ForeignHeifCompression, effort: int, subsampleMode: Enums.ForeignSubsample, encoder: Enums.ForeignHeifEncoder, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Q factor. /// Number of bits per pixel. + /// Filename of ICC profile to embed. /// Enable lossless compression. /// Compression format. /// CPU effort. /// Select chroma subsample operation mode. /// Select encoder to use. - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. /// An array of bytes. - public byte[] HeifsaveBuffer(int? q = null, int? bitdepth = null, bool? lossless = null, Enums.ForeignHeifCompression? compression = null, int? effort = null, Enums.ForeignSubsample? subsampleMode = null, Enums.ForeignHeifEncoder? encoder = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public byte[] HeifsaveBuffer(int? q = null, int? bitdepth = null, string profile = null, bool? lossless = null, Enums.ForeignHeifCompression? compression = null, int? effort = null, Enums.ForeignSubsample? subsampleMode = null, Enums.ForeignHeifEncoder? encoder = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); options.AddIfPresent("Q", q); options.AddIfPresent(nameof(bitdepth), bitdepth); + options.AddIfPresent(nameof(profile), profile); options.AddIfPresent(nameof(lossless), lossless); options.AddIfPresent(nameof(compression), compression); options.AddIfPresent(nameof(effort), effort); options.AddIfPresent("subsample_mode", subsampleMode); options.AddIfPresent(nameof(encoder), encoder); - options.AddIfPresent(nameof(strip), strip); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -2712,32 +2791,34 @@ public byte[] HeifsaveBuffer(int? q = null, int? bitdepth = null, bool? lossless /// /// /// - /// in.HeifsaveTarget(target, q: int, bitdepth: int, lossless: bool, compression: Enums.ForeignHeifCompression, effort: int, subsampleMode: Enums.ForeignSubsample, encoder: Enums.ForeignHeifEncoder, strip: bool, background: double[], pageHeight: int); + /// in.HeifsaveTarget(target, q: int, bitdepth: int, profile: string, lossless: bool, compression: Enums.ForeignHeifCompression, effort: int, subsampleMode: Enums.ForeignSubsample, encoder: Enums.ForeignHeifEncoder, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Target to save to. /// Q factor. /// Number of bits per pixel. + /// Filename of ICC profile to embed. /// Enable lossless compression. /// Compression format. /// CPU effort. /// Select chroma subsample operation mode. /// Select encoder to use. - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void HeifsaveTarget(Target target, int? q = null, int? bitdepth = null, bool? lossless = null, Enums.ForeignHeifCompression? compression = null, int? effort = null, Enums.ForeignSubsample? subsampleMode = null, Enums.ForeignHeifEncoder? encoder = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void HeifsaveTarget(Target target, int? q = null, int? bitdepth = null, string profile = null, bool? lossless = null, Enums.ForeignHeifCompression? compression = null, int? effort = null, Enums.ForeignSubsample? subsampleMode = null, Enums.ForeignHeifEncoder? encoder = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); options.AddIfPresent("Q", q); options.AddIfPresent(nameof(bitdepth), bitdepth); + options.AddIfPresent(nameof(profile), profile); options.AddIfPresent(nameof(lossless), lossless); options.AddIfPresent(nameof(compression), compression); options.AddIfPresent(nameof(effort), effort); options.AddIfPresent("subsample_mode", subsampleMode); options.AddIfPresent(nameof(encoder), encoder); - options.AddIfPresent(nameof(strip), strip); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -2749,24 +2830,25 @@ public void HeifsaveTarget(Target target, int? q = null, int? bitdepth = null, b /// /// /// - /// in.HeifsaveStream(stream, q: int, bitdepth: int, lossless: bool, compression: Enums.ForeignHeifCompression, effort: int, subsampleMode: Enums.ForeignSubsample, encoder: Enums.ForeignHeifEncoder, strip: bool, background: double[], pageHeight: int); + /// in.HeifsaveStream(stream, q: int, bitdepth: int, profile: string, lossless: bool, compression: Enums.ForeignHeifCompression, effort: int, subsampleMode: Enums.ForeignSubsample, encoder: Enums.ForeignHeifEncoder, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Stream to save to. /// Q factor. /// Number of bits per pixel. + /// Filename of ICC profile to embed. /// Enable lossless compression. /// Compression format. /// CPU effort. /// Select chroma subsample operation mode. /// Select encoder to use. - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void HeifsaveStream(Stream stream, int? q = null, int? bitdepth = null, bool? lossless = null, Enums.ForeignHeifCompression? compression = null, int? effort = null, Enums.ForeignSubsample? subsampleMode = null, Enums.ForeignHeifEncoder? encoder = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void HeifsaveStream(Stream stream, int? q = null, int? bitdepth = null, string profile = null, bool? lossless = null, Enums.ForeignHeifCompression? compression = null, int? effort = null, Enums.ForeignSubsample? subsampleMode = null, Enums.ForeignHeifEncoder? encoder = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { using var target = TargetStream.NewFromStream(stream); - HeifsaveTarget(target, q, bitdepth, lossless, compression, effort, subsampleMode, encoder, strip, background, pageHeight); + HeifsaveTarget(target, q, bitdepth, profile, lossless, compression, effort, subsampleMode, encoder, keep, background, pageHeight); } /// @@ -3225,7 +3307,7 @@ public Image Join(Image in2, Enums.Direction direction, bool? expand = null, int /// /// /// - /// using Image @out = NetVips.Image.Jp2kload(filename, page: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Jp2kload(filename, page: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -3233,8 +3315,9 @@ public Image Join(Image in2, Enums.Direction direction, bool? expand = null, int /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Jp2kload(string filename, int? page = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Jp2kload(string filename, int? page = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -3242,6 +3325,7 @@ public static Image Jp2kload(string filename, int? page = null, bool? memory = n options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("jp2kload", options, filename) as Image; } @@ -3251,7 +3335,7 @@ public static Image Jp2kload(string filename, int? page = null, bool? memory = n /// /// /// - /// using Image @out = NetVips.Image.Jp2kload(filename, out var flags, page: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Jp2kload(filename, out var flags, page: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -3260,8 +3344,9 @@ public static Image Jp2kload(string filename, int? page = null, bool? memory = n /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Jp2kload(string filename, out Enums.ForeignFlags flags, int? page = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Jp2kload(string filename, out Enums.ForeignFlags flags, int? page = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -3269,6 +3354,7 @@ public static Image Jp2kload(string filename, out Enums.ForeignFlags flags, int? options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -3285,7 +3371,7 @@ public static Image Jp2kload(string filename, out Enums.ForeignFlags flags, int? /// /// /// - /// using Image @out = NetVips.Image.Jp2kloadBuffer(buffer, page: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Jp2kloadBuffer(buffer, page: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Buffer to load from. @@ -3293,8 +3379,9 @@ public static Image Jp2kload(string filename, out Enums.ForeignFlags flags, int? /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Jp2kloadBuffer(byte[] buffer, int? page = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Jp2kloadBuffer(byte[] buffer, int? page = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -3302,6 +3389,7 @@ public static Image Jp2kloadBuffer(byte[] buffer, int? page = null, bool? memory options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("jp2kload_buffer", options, buffer) as Image; } @@ -3311,7 +3399,7 @@ public static Image Jp2kloadBuffer(byte[] buffer, int? page = null, bool? memory /// /// /// - /// using Image @out = NetVips.Image.Jp2kloadBuffer(buffer, out var flags, page: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Jp2kloadBuffer(buffer, out var flags, page: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Buffer to load from. @@ -3320,8 +3408,9 @@ public static Image Jp2kloadBuffer(byte[] buffer, int? page = null, bool? memory /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Jp2kloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, int? page = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Jp2kloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, int? page = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -3329,6 +3418,7 @@ public static Image Jp2kloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -3345,7 +3435,7 @@ public static Image Jp2kloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, /// /// /// - /// using Image @out = NetVips.Image.Jp2kloadSource(source, page: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Jp2kloadSource(source, page: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. @@ -3353,8 +3443,9 @@ public static Image Jp2kloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Jp2kloadSource(Source source, int? page = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Jp2kloadSource(Source source, int? page = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -3362,6 +3453,7 @@ public static Image Jp2kloadSource(Source source, int? page = null, bool? memory options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("jp2kload_source", options, source) as Image; } @@ -3371,7 +3463,7 @@ public static Image Jp2kloadSource(Source source, int? page = null, bool? memory /// /// /// - /// using Image @out = NetVips.Image.Jp2kloadStream(stream, page: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Jp2kloadStream(stream, page: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. @@ -3379,11 +3471,12 @@ public static Image Jp2kloadSource(Source source, int? page = null, bool? memory /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Jp2kloadStream(Stream stream, int? page = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Jp2kloadStream(Stream stream, int? page = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = Jp2kloadSource(source, page, memory, access, failOn); + var image = Jp2kloadSource(source, page, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -3395,7 +3488,7 @@ public static Image Jp2kloadStream(Stream stream, int? page = null, bool? memory /// /// /// - /// using Image @out = NetVips.Image.Jp2kloadSource(source, out var flags, page: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Jp2kloadSource(source, out var flags, page: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. @@ -3404,8 +3497,9 @@ public static Image Jp2kloadStream(Stream stream, int? page = null, bool? memory /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Jp2kloadSource(Source source, out Enums.ForeignFlags flags, int? page = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Jp2kloadSource(Source source, out Enums.ForeignFlags flags, int? page = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -3413,6 +3507,7 @@ public static Image Jp2kloadSource(Source source, out Enums.ForeignFlags flags, options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -3429,7 +3524,7 @@ public static Image Jp2kloadSource(Source source, out Enums.ForeignFlags flags, /// /// /// - /// using Image @out = NetVips.Image.Jp2kloadStream(stream, out var flags, page: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Jp2kloadStream(stream, out var flags, page: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. @@ -3438,11 +3533,12 @@ public static Image Jp2kloadSource(Source source, out Enums.ForeignFlags flags, /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Jp2kloadStream(Stream stream, out Enums.ForeignFlags flags, int? page = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Jp2kloadStream(Stream stream, out Enums.ForeignFlags flags, int? page = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = Jp2kloadSource(source, out flags, page, memory, access, failOn); + var image = Jp2kloadSource(source, out flags, page, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -3454,28 +3550,30 @@ public static Image Jp2kloadStream(Stream stream, out Enums.ForeignFlags flags, /// /// /// - /// in.Jp2ksave(filename, tileWidth: int, tileHeight: int, lossless: bool, q: int, subsampleMode: Enums.ForeignSubsample, strip: bool, background: double[], pageHeight: int); + /// in.Jp2ksave(filename, tileWidth: int, profile: string, tileHeight: int, lossless: bool, q: int, subsampleMode: Enums.ForeignSubsample, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Filename to load from. /// Tile width in pixels. + /// Filename of ICC profile to embed. /// Tile height in pixels. /// Enable lossless compression. /// Q factor. /// Select chroma subsample operation mode. - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void Jp2ksave(string filename, int? tileWidth = null, int? tileHeight = null, bool? lossless = null, int? q = null, Enums.ForeignSubsample? subsampleMode = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void Jp2ksave(string filename, int? tileWidth = null, string profile = null, int? tileHeight = null, bool? lossless = null, int? q = null, Enums.ForeignSubsample? subsampleMode = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); options.AddIfPresent("tile_width", tileWidth); + options.AddIfPresent(nameof(profile), profile); options.AddIfPresent("tile_height", tileHeight); options.AddIfPresent(nameof(lossless), lossless); options.AddIfPresent("Q", q); options.AddIfPresent("subsample_mode", subsampleMode); - options.AddIfPresent(nameof(strip), strip); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -3487,28 +3585,30 @@ public void Jp2ksave(string filename, int? tileWidth = null, int? tileHeight = n /// /// /// - /// byte[] buffer = in.Jp2ksaveBuffer(tileWidth: int, tileHeight: int, lossless: bool, q: int, subsampleMode: Enums.ForeignSubsample, strip: bool, background: double[], pageHeight: int); + /// byte[] buffer = in.Jp2ksaveBuffer(tileWidth: int, profile: string, tileHeight: int, lossless: bool, q: int, subsampleMode: Enums.ForeignSubsample, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Tile width in pixels. + /// Filename of ICC profile to embed. /// Tile height in pixels. /// Enable lossless compression. /// Q factor. /// Select chroma subsample operation mode. - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. /// An array of bytes. - public byte[] Jp2ksaveBuffer(int? tileWidth = null, int? tileHeight = null, bool? lossless = null, int? q = null, Enums.ForeignSubsample? subsampleMode = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public byte[] Jp2ksaveBuffer(int? tileWidth = null, string profile = null, int? tileHeight = null, bool? lossless = null, int? q = null, Enums.ForeignSubsample? subsampleMode = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); options.AddIfPresent("tile_width", tileWidth); + options.AddIfPresent(nameof(profile), profile); options.AddIfPresent("tile_height", tileHeight); options.AddIfPresent(nameof(lossless), lossless); options.AddIfPresent("Q", q); options.AddIfPresent("subsample_mode", subsampleMode); - options.AddIfPresent(nameof(strip), strip); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -3520,28 +3620,30 @@ public byte[] Jp2ksaveBuffer(int? tileWidth = null, int? tileHeight = null, bool /// /// /// - /// in.Jp2ksaveTarget(target, tileWidth: int, tileHeight: int, lossless: bool, q: int, subsampleMode: Enums.ForeignSubsample, strip: bool, background: double[], pageHeight: int); + /// in.Jp2ksaveTarget(target, tileWidth: int, profile: string, tileHeight: int, lossless: bool, q: int, subsampleMode: Enums.ForeignSubsample, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Target to save to. /// Tile width in pixels. + /// Filename of ICC profile to embed. /// Tile height in pixels. /// Enable lossless compression. /// Q factor. /// Select chroma subsample operation mode. - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void Jp2ksaveTarget(Target target, int? tileWidth = null, int? tileHeight = null, bool? lossless = null, int? q = null, Enums.ForeignSubsample? subsampleMode = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void Jp2ksaveTarget(Target target, int? tileWidth = null, string profile = null, int? tileHeight = null, bool? lossless = null, int? q = null, Enums.ForeignSubsample? subsampleMode = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); options.AddIfPresent("tile_width", tileWidth); + options.AddIfPresent(nameof(profile), profile); options.AddIfPresent("tile_height", tileHeight); options.AddIfPresent(nameof(lossless), lossless); options.AddIfPresent("Q", q); options.AddIfPresent("subsample_mode", subsampleMode); - options.AddIfPresent(nameof(strip), strip); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -3553,22 +3655,23 @@ public void Jp2ksaveTarget(Target target, int? tileWidth = null, int? tileHeight /// /// /// - /// in.Jp2ksaveStream(stream, tileWidth: int, tileHeight: int, lossless: bool, q: int, subsampleMode: Enums.ForeignSubsample, strip: bool, background: double[], pageHeight: int); + /// in.Jp2ksaveStream(stream, tileWidth: int, profile: string, tileHeight: int, lossless: bool, q: int, subsampleMode: Enums.ForeignSubsample, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Stream to save to. /// Tile width in pixels. + /// Filename of ICC profile to embed. /// Tile height in pixels. /// Enable lossless compression. /// Q factor. /// Select chroma subsample operation mode. - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void Jp2ksaveStream(Stream stream, int? tileWidth = null, int? tileHeight = null, bool? lossless = null, int? q = null, Enums.ForeignSubsample? subsampleMode = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void Jp2ksaveStream(Stream stream, int? tileWidth = null, string profile = null, int? tileHeight = null, bool? lossless = null, int? q = null, Enums.ForeignSubsample? subsampleMode = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { using var target = TargetStream.NewFromStream(stream); - Jp2ksaveTarget(target, tileWidth, tileHeight, lossless, q, subsampleMode, strip, background, pageHeight); + Jp2ksaveTarget(target, tileWidth, profile, tileHeight, lossless, q, subsampleMode, keep, background, pageHeight); } /// @@ -3576,7 +3679,7 @@ public void Jp2ksaveStream(Stream stream, int? tileWidth = null, int? tileHeight /// /// /// - /// using Image @out = NetVips.Image.Jpegload(filename, shrink: int, autorotate: bool, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Jpegload(filename, shrink: int, autorotate: bool, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -3586,8 +3689,9 @@ public void Jp2ksaveStream(Stream stream, int? tileWidth = null, int? tileHeight /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Jpegload(string filename, int? shrink = null, bool? autorotate = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Jpegload(string filename, int? shrink = null, bool? autorotate = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -3597,6 +3701,7 @@ public static Image Jpegload(string filename, int? shrink = null, bool? autorota options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("jpegload", options, filename) as Image; } @@ -3606,7 +3711,7 @@ public static Image Jpegload(string filename, int? shrink = null, bool? autorota /// /// /// - /// using Image @out = NetVips.Image.Jpegload(filename, out var flags, shrink: int, autorotate: bool, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Jpegload(filename, out var flags, shrink: int, autorotate: bool, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -3617,8 +3722,9 @@ public static Image Jpegload(string filename, int? shrink = null, bool? autorota /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Jpegload(string filename, out Enums.ForeignFlags flags, int? shrink = null, bool? autorotate = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Jpegload(string filename, out Enums.ForeignFlags flags, int? shrink = null, bool? autorotate = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -3628,6 +3734,7 @@ public static Image Jpegload(string filename, out Enums.ForeignFlags flags, int? options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -3644,7 +3751,7 @@ public static Image Jpegload(string filename, out Enums.ForeignFlags flags, int? /// /// /// - /// using Image @out = NetVips.Image.JpegloadBuffer(buffer, shrink: int, autorotate: bool, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.JpegloadBuffer(buffer, shrink: int, autorotate: bool, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Buffer to load from. @@ -3654,8 +3761,9 @@ public static Image Jpegload(string filename, out Enums.ForeignFlags flags, int? /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image JpegloadBuffer(byte[] buffer, int? shrink = null, bool? autorotate = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image JpegloadBuffer(byte[] buffer, int? shrink = null, bool? autorotate = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -3665,6 +3773,7 @@ public static Image JpegloadBuffer(byte[] buffer, int? shrink = null, bool? auto options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("jpegload_buffer", options, buffer) as Image; } @@ -3674,7 +3783,7 @@ public static Image JpegloadBuffer(byte[] buffer, int? shrink = null, bool? auto /// /// /// - /// using Image @out = NetVips.Image.JpegloadBuffer(buffer, out var flags, shrink: int, autorotate: bool, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.JpegloadBuffer(buffer, out var flags, shrink: int, autorotate: bool, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Buffer to load from. @@ -3685,8 +3794,9 @@ public static Image JpegloadBuffer(byte[] buffer, int? shrink = null, bool? auto /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image JpegloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, int? shrink = null, bool? autorotate = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image JpegloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, int? shrink = null, bool? autorotate = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -3696,6 +3806,7 @@ public static Image JpegloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -3712,7 +3823,7 @@ public static Image JpegloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, /// /// /// - /// using Image @out = NetVips.Image.JpegloadSource(source, shrink: int, autorotate: bool, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.JpegloadSource(source, shrink: int, autorotate: bool, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. @@ -3722,8 +3833,9 @@ public static Image JpegloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image JpegloadSource(Source source, int? shrink = null, bool? autorotate = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image JpegloadSource(Source source, int? shrink = null, bool? autorotate = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -3733,6 +3845,7 @@ public static Image JpegloadSource(Source source, int? shrink = null, bool? auto options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("jpegload_source", options, source) as Image; } @@ -3742,7 +3855,7 @@ public static Image JpegloadSource(Source source, int? shrink = null, bool? auto /// /// /// - /// using Image @out = NetVips.Image.JpegloadStream(stream, shrink: int, autorotate: bool, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.JpegloadStream(stream, shrink: int, autorotate: bool, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. @@ -3752,11 +3865,12 @@ public static Image JpegloadSource(Source source, int? shrink = null, bool? auto /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image JpegloadStream(Stream stream, int? shrink = null, bool? autorotate = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image JpegloadStream(Stream stream, int? shrink = null, bool? autorotate = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = JpegloadSource(source, shrink, autorotate, unlimited, memory, access, failOn); + var image = JpegloadSource(source, shrink, autorotate, unlimited, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -3768,7 +3882,7 @@ public static Image JpegloadStream(Stream stream, int? shrink = null, bool? auto /// /// /// - /// using Image @out = NetVips.Image.JpegloadSource(source, out var flags, shrink: int, autorotate: bool, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.JpegloadSource(source, out var flags, shrink: int, autorotate: bool, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. @@ -3779,8 +3893,9 @@ public static Image JpegloadStream(Stream stream, int? shrink = null, bool? auto /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image JpegloadSource(Source source, out Enums.ForeignFlags flags, int? shrink = null, bool? autorotate = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image JpegloadSource(Source source, out Enums.ForeignFlags flags, int? shrink = null, bool? autorotate = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -3790,6 +3905,7 @@ public static Image JpegloadSource(Source source, out Enums.ForeignFlags flags, options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -3806,7 +3922,7 @@ public static Image JpegloadSource(Source source, out Enums.ForeignFlags flags, /// /// /// - /// using Image @out = NetVips.Image.JpegloadStream(stream, out var flags, shrink: int, autorotate: bool, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.JpegloadStream(stream, out var flags, shrink: int, autorotate: bool, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. @@ -3817,11 +3933,12 @@ public static Image JpegloadSource(Source source, out Enums.ForeignFlags flags, /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image JpegloadStream(Stream stream, out Enums.ForeignFlags flags, int? shrink = null, bool? autorotate = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image JpegloadStream(Stream stream, out Enums.ForeignFlags flags, int? shrink = null, bool? autorotate = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = JpegloadSource(source, out flags, shrink, autorotate, unlimited, memory, access, failOn); + var image = JpegloadSource(source, out flags, shrink, autorotate, unlimited, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -3833,12 +3950,12 @@ public static Image JpegloadStream(Stream stream, out Enums.ForeignFlags flags, /// /// /// - /// in.Jpegsave(filename, q: int, profile: string, optimizeCoding: bool, interlace: bool, trellisQuant: bool, overshootDeringing: bool, optimizeScans: bool, quantTable: int, subsampleMode: Enums.ForeignSubsample, restartInterval: int, strip: bool, background: double[], pageHeight: int); + /// in.Jpegsave(filename, q: int, profile: string, optimizeCoding: bool, interlace: bool, trellisQuant: bool, overshootDeringing: bool, optimizeScans: bool, quantTable: int, subsampleMode: Enums.ForeignSubsample, restartInterval: int, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Filename to save to. /// Q factor. - /// ICC profile to embed. + /// Filename of ICC profile to embed. /// Compute optimal Huffman coding tables. /// Generate an interlaced (progressive) jpeg. /// Apply trellis quantisation to each 8x8 block. @@ -3847,10 +3964,10 @@ public static Image JpegloadStream(Stream stream, out Enums.ForeignFlags flags, /// Use predefined quantization table with given index. /// Select chroma subsample operation mode. /// Add restart markers every specified number of mcu. - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void Jpegsave(string filename, int? q = null, string profile = null, bool? optimizeCoding = null, bool? interlace = null, bool? trellisQuant = null, bool? overshootDeringing = null, bool? optimizeScans = null, int? quantTable = null, Enums.ForeignSubsample? subsampleMode = null, int? restartInterval = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void Jpegsave(string filename, int? q = null, string profile = null, bool? optimizeCoding = null, bool? interlace = null, bool? trellisQuant = null, bool? overshootDeringing = null, bool? optimizeScans = null, int? quantTable = null, Enums.ForeignSubsample? subsampleMode = null, int? restartInterval = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); @@ -3864,7 +3981,7 @@ public void Jpegsave(string filename, int? q = null, string profile = null, bool options.AddIfPresent("quant_table", quantTable); options.AddIfPresent("subsample_mode", subsampleMode); options.AddIfPresent("restart_interval", restartInterval); - options.AddIfPresent(nameof(strip), strip); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -3876,11 +3993,11 @@ public void Jpegsave(string filename, int? q = null, string profile = null, bool /// /// /// - /// byte[] buffer = in.JpegsaveBuffer(q: int, profile: string, optimizeCoding: bool, interlace: bool, trellisQuant: bool, overshootDeringing: bool, optimizeScans: bool, quantTable: int, subsampleMode: Enums.ForeignSubsample, restartInterval: int, strip: bool, background: double[], pageHeight: int); + /// byte[] buffer = in.JpegsaveBuffer(q: int, profile: string, optimizeCoding: bool, interlace: bool, trellisQuant: bool, overshootDeringing: bool, optimizeScans: bool, quantTable: int, subsampleMode: Enums.ForeignSubsample, restartInterval: int, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Q factor. - /// ICC profile to embed. + /// Filename of ICC profile to embed. /// Compute optimal Huffman coding tables. /// Generate an interlaced (progressive) jpeg. /// Apply trellis quantisation to each 8x8 block. @@ -3889,11 +4006,11 @@ public void Jpegsave(string filename, int? q = null, string profile = null, bool /// Use predefined quantization table with given index. /// Select chroma subsample operation mode. /// Add restart markers every specified number of mcu. - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. /// An array of bytes. - public byte[] JpegsaveBuffer(int? q = null, string profile = null, bool? optimizeCoding = null, bool? interlace = null, bool? trellisQuant = null, bool? overshootDeringing = null, bool? optimizeScans = null, int? quantTable = null, Enums.ForeignSubsample? subsampleMode = null, int? restartInterval = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public byte[] JpegsaveBuffer(int? q = null, string profile = null, bool? optimizeCoding = null, bool? interlace = null, bool? trellisQuant = null, bool? overshootDeringing = null, bool? optimizeScans = null, int? quantTable = null, Enums.ForeignSubsample? subsampleMode = null, int? restartInterval = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); @@ -3907,7 +4024,7 @@ public byte[] JpegsaveBuffer(int? q = null, string profile = null, bool? optimiz options.AddIfPresent("quant_table", quantTable); options.AddIfPresent("subsample_mode", subsampleMode); options.AddIfPresent("restart_interval", restartInterval); - options.AddIfPresent(nameof(strip), strip); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -3919,11 +4036,11 @@ public byte[] JpegsaveBuffer(int? q = null, string profile = null, bool? optimiz /// /// /// - /// in.JpegsaveMime(q: int, profile: string, optimizeCoding: bool, interlace: bool, trellisQuant: bool, overshootDeringing: bool, optimizeScans: bool, quantTable: int, subsampleMode: Enums.ForeignSubsample, restartInterval: int, strip: bool, background: double[], pageHeight: int); + /// in.JpegsaveMime(q: int, profile: string, optimizeCoding: bool, interlace: bool, trellisQuant: bool, overshootDeringing: bool, optimizeScans: bool, quantTable: int, subsampleMode: Enums.ForeignSubsample, restartInterval: int, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Q factor. - /// ICC profile to embed. + /// Filename of ICC profile to embed. /// Compute optimal Huffman coding tables. /// Generate an interlaced (progressive) jpeg. /// Apply trellis quantisation to each 8x8 block. @@ -3932,10 +4049,10 @@ public byte[] JpegsaveBuffer(int? q = null, string profile = null, bool? optimiz /// Use predefined quantization table with given index. /// Select chroma subsample operation mode. /// Add restart markers every specified number of mcu. - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void JpegsaveMime(int? q = null, string profile = null, bool? optimizeCoding = null, bool? interlace = null, bool? trellisQuant = null, bool? overshootDeringing = null, bool? optimizeScans = null, int? quantTable = null, Enums.ForeignSubsample? subsampleMode = null, int? restartInterval = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void JpegsaveMime(int? q = null, string profile = null, bool? optimizeCoding = null, bool? interlace = null, bool? trellisQuant = null, bool? overshootDeringing = null, bool? optimizeScans = null, int? quantTable = null, Enums.ForeignSubsample? subsampleMode = null, int? restartInterval = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); @@ -3949,7 +4066,7 @@ public void JpegsaveMime(int? q = null, string profile = null, bool? optimizeCod options.AddIfPresent("quant_table", quantTable); options.AddIfPresent("subsample_mode", subsampleMode); options.AddIfPresent("restart_interval", restartInterval); - options.AddIfPresent(nameof(strip), strip); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -3961,12 +4078,12 @@ public void JpegsaveMime(int? q = null, string profile = null, bool? optimizeCod /// /// /// - /// in.JpegsaveTarget(target, q: int, profile: string, optimizeCoding: bool, interlace: bool, trellisQuant: bool, overshootDeringing: bool, optimizeScans: bool, quantTable: int, subsampleMode: Enums.ForeignSubsample, restartInterval: int, strip: bool, background: double[], pageHeight: int); + /// in.JpegsaveTarget(target, q: int, profile: string, optimizeCoding: bool, interlace: bool, trellisQuant: bool, overshootDeringing: bool, optimizeScans: bool, quantTable: int, subsampleMode: Enums.ForeignSubsample, restartInterval: int, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Target to save to. /// Q factor. - /// ICC profile to embed. + /// Filename of ICC profile to embed. /// Compute optimal Huffman coding tables. /// Generate an interlaced (progressive) jpeg. /// Apply trellis quantisation to each 8x8 block. @@ -3975,10 +4092,10 @@ public void JpegsaveMime(int? q = null, string profile = null, bool? optimizeCod /// Use predefined quantization table with given index. /// Select chroma subsample operation mode. /// Add restart markers every specified number of mcu. - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void JpegsaveTarget(Target target, int? q = null, string profile = null, bool? optimizeCoding = null, bool? interlace = null, bool? trellisQuant = null, bool? overshootDeringing = null, bool? optimizeScans = null, int? quantTable = null, Enums.ForeignSubsample? subsampleMode = null, int? restartInterval = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void JpegsaveTarget(Target target, int? q = null, string profile = null, bool? optimizeCoding = null, bool? interlace = null, bool? trellisQuant = null, bool? overshootDeringing = null, bool? optimizeScans = null, int? quantTable = null, Enums.ForeignSubsample? subsampleMode = null, int? restartInterval = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); @@ -3992,7 +4109,7 @@ public void JpegsaveTarget(Target target, int? q = null, string profile = null, options.AddIfPresent("quant_table", quantTable); options.AddIfPresent("subsample_mode", subsampleMode); options.AddIfPresent("restart_interval", restartInterval); - options.AddIfPresent(nameof(strip), strip); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -4004,12 +4121,12 @@ public void JpegsaveTarget(Target target, int? q = null, string profile = null, /// /// /// - /// in.JpegsaveStream(stream, q: int, profile: string, optimizeCoding: bool, interlace: bool, trellisQuant: bool, overshootDeringing: bool, optimizeScans: bool, quantTable: int, subsampleMode: Enums.ForeignSubsample, restartInterval: int, strip: bool, background: double[], pageHeight: int); + /// in.JpegsaveStream(stream, q: int, profile: string, optimizeCoding: bool, interlace: bool, trellisQuant: bool, overshootDeringing: bool, optimizeScans: bool, quantTable: int, subsampleMode: Enums.ForeignSubsample, restartInterval: int, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Stream to save to. /// Q factor. - /// ICC profile to embed. + /// Filename of ICC profile to embed. /// Compute optimal Huffman coding tables. /// Generate an interlaced (progressive) jpeg. /// Apply trellis quantisation to each 8x8 block. @@ -4018,13 +4135,13 @@ public void JpegsaveTarget(Target target, int? q = null, string profile = null, /// Use predefined quantization table with given index. /// Select chroma subsample operation mode. /// Add restart markers every specified number of mcu. - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void JpegsaveStream(Stream stream, int? q = null, string profile = null, bool? optimizeCoding = null, bool? interlace = null, bool? trellisQuant = null, bool? overshootDeringing = null, bool? optimizeScans = null, int? quantTable = null, Enums.ForeignSubsample? subsampleMode = null, int? restartInterval = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void JpegsaveStream(Stream stream, int? q = null, string profile = null, bool? optimizeCoding = null, bool? interlace = null, bool? trellisQuant = null, bool? overshootDeringing = null, bool? optimizeScans = null, int? quantTable = null, Enums.ForeignSubsample? subsampleMode = null, int? restartInterval = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { using var target = TargetStream.NewFromStream(stream); - JpegsaveTarget(target, q, profile, optimizeCoding, interlace, trellisQuant, overshootDeringing, optimizeScans, quantTable, subsampleMode, restartInterval, strip, background, pageHeight); + JpegsaveTarget(target, q, profile, optimizeCoding, interlace, trellisQuant, overshootDeringing, optimizeScans, quantTable, subsampleMode, restartInterval, keep, background, pageHeight); } /// @@ -4032,21 +4149,23 @@ public void JpegsaveStream(Stream stream, int? q = null, string profile = null, /// /// /// - /// using Image @out = NetVips.Image.Jxlload(filename, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Jxlload(filename, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Jxlload(string filename, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Jxlload(string filename, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("jxlload", options, filename) as Image; } @@ -4056,7 +4175,7 @@ public static Image Jxlload(string filename, bool? memory = null, Enums.Access? /// /// /// - /// using Image @out = NetVips.Image.Jxlload(filename, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Jxlload(filename, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -4064,14 +4183,16 @@ public static Image Jxlload(string filename, bool? memory = null, Enums.Access? /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Jxlload(string filename, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Jxlload(string filename, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -4088,21 +4209,23 @@ public static Image Jxlload(string filename, out Enums.ForeignFlags flags, bool? /// /// /// - /// using Image @out = NetVips.Image.JxlloadBuffer(buffer, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.JxlloadBuffer(buffer, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Buffer to load from. /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image JxlloadBuffer(byte[] buffer, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image JxlloadBuffer(byte[] buffer, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("jxlload_buffer", options, buffer) as Image; } @@ -4112,7 +4235,7 @@ public static Image JxlloadBuffer(byte[] buffer, bool? memory = null, Enums.Acce /// /// /// - /// using Image @out = NetVips.Image.JxlloadBuffer(buffer, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.JxlloadBuffer(buffer, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Buffer to load from. @@ -4120,14 +4243,16 @@ public static Image JxlloadBuffer(byte[] buffer, bool? memory = null, Enums.Acce /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image JxlloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image JxlloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -4144,21 +4269,23 @@ public static Image JxlloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, b /// /// /// - /// using Image @out = NetVips.Image.JxlloadSource(source, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.JxlloadSource(source, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image JxlloadSource(Source source, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image JxlloadSource(Source source, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("jxlload_source", options, source) as Image; } @@ -4168,18 +4295,19 @@ public static Image JxlloadSource(Source source, bool? memory = null, Enums.Acce /// /// /// - /// using Image @out = NetVips.Image.JxlloadStream(stream, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.JxlloadStream(stream, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image JxlloadStream(Stream stream, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image JxlloadStream(Stream stream, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = JxlloadSource(source, memory, access, failOn); + var image = JxlloadSource(source, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -4191,7 +4319,7 @@ public static Image JxlloadStream(Stream stream, bool? memory = null, Enums.Acce /// /// /// - /// using Image @out = NetVips.Image.JxlloadSource(source, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.JxlloadSource(source, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. @@ -4199,14 +4327,16 @@ public static Image JxlloadStream(Stream stream, bool? memory = null, Enums.Acce /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image JxlloadSource(Source source, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image JxlloadSource(Source source, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -4223,7 +4353,7 @@ public static Image JxlloadSource(Source source, out Enums.ForeignFlags flags, b /// /// /// - /// using Image @out = NetVips.Image.JxlloadStream(stream, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.JxlloadStream(stream, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. @@ -4231,11 +4361,12 @@ public static Image JxlloadSource(Source source, out Enums.ForeignFlags flags, b /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image JxlloadStream(Stream stream, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image JxlloadStream(Stream stream, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = JxlloadSource(source, out flags, memory, access, failOn); + var image = JxlloadSource(source, out flags, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -4247,28 +4378,30 @@ public static Image JxlloadStream(Stream stream, out Enums.ForeignFlags flags, b /// /// /// - /// in.Jxlsave(filename, tier: int, distance: double, effort: int, lossless: bool, q: int, strip: bool, background: double[], pageHeight: int); + /// in.Jxlsave(filename, tier: int, distance: double, profile: string, effort: int, lossless: bool, q: int, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Filename to load from. /// Decode speed tier. /// Target butteraugli distance. + /// Filename of ICC profile to embed. /// Encoding effort. /// Enable lossless compression. /// Quality factor. - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void Jxlsave(string filename, int? tier = null, double? distance = null, int? effort = null, bool? lossless = null, int? q = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void Jxlsave(string filename, int? tier = null, double? distance = null, string profile = null, int? effort = null, bool? lossless = null, int? q = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); options.AddIfPresent(nameof(tier), tier); options.AddIfPresent(nameof(distance), distance); + options.AddIfPresent(nameof(profile), profile); options.AddIfPresent(nameof(effort), effort); options.AddIfPresent(nameof(lossless), lossless); options.AddIfPresent("Q", q); - options.AddIfPresent(nameof(strip), strip); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -4280,28 +4413,30 @@ public void Jxlsave(string filename, int? tier = null, double? distance = null, /// /// /// - /// byte[] buffer = in.JxlsaveBuffer(tier: int, distance: double, effort: int, lossless: bool, q: int, strip: bool, background: double[], pageHeight: int); + /// byte[] buffer = in.JxlsaveBuffer(tier: int, distance: double, profile: string, effort: int, lossless: bool, q: int, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Decode speed tier. /// Target butteraugli distance. + /// Filename of ICC profile to embed. /// Encoding effort. /// Enable lossless compression. /// Quality factor. - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. /// An array of bytes. - public byte[] JxlsaveBuffer(int? tier = null, double? distance = null, int? effort = null, bool? lossless = null, int? q = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public byte[] JxlsaveBuffer(int? tier = null, double? distance = null, string profile = null, int? effort = null, bool? lossless = null, int? q = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); options.AddIfPresent(nameof(tier), tier); options.AddIfPresent(nameof(distance), distance); + options.AddIfPresent(nameof(profile), profile); options.AddIfPresent(nameof(effort), effort); options.AddIfPresent(nameof(lossless), lossless); options.AddIfPresent("Q", q); - options.AddIfPresent(nameof(strip), strip); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -4313,28 +4448,30 @@ public byte[] JxlsaveBuffer(int? tier = null, double? distance = null, int? effo /// /// /// - /// in.JxlsaveTarget(target, tier: int, distance: double, effort: int, lossless: bool, q: int, strip: bool, background: double[], pageHeight: int); + /// in.JxlsaveTarget(target, tier: int, distance: double, profile: string, effort: int, lossless: bool, q: int, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Target to save to. /// Decode speed tier. /// Target butteraugli distance. + /// Filename of ICC profile to embed. /// Encoding effort. /// Enable lossless compression. /// Quality factor. - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void JxlsaveTarget(Target target, int? tier = null, double? distance = null, int? effort = null, bool? lossless = null, int? q = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void JxlsaveTarget(Target target, int? tier = null, double? distance = null, string profile = null, int? effort = null, bool? lossless = null, int? q = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); options.AddIfPresent(nameof(tier), tier); options.AddIfPresent(nameof(distance), distance); + options.AddIfPresent(nameof(profile), profile); options.AddIfPresent(nameof(effort), effort); options.AddIfPresent(nameof(lossless), lossless); options.AddIfPresent("Q", q); - options.AddIfPresent(nameof(strip), strip); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -4346,22 +4483,23 @@ public void JxlsaveTarget(Target target, int? tier = null, double? distance = nu /// /// /// - /// in.JxlsaveStream(stream, tier: int, distance: double, effort: int, lossless: bool, q: int, strip: bool, background: double[], pageHeight: int); + /// in.JxlsaveStream(stream, tier: int, distance: double, profile: string, effort: int, lossless: bool, q: int, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Stream to save to. /// Decode speed tier. /// Target butteraugli distance. + /// Filename of ICC profile to embed. /// Encoding effort. /// Enable lossless compression. /// Quality factor. - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void JxlsaveStream(Stream stream, int? tier = null, double? distance = null, int? effort = null, bool? lossless = null, int? q = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void JxlsaveStream(Stream stream, int? tier = null, double? distance = null, string profile = null, int? effort = null, bool? lossless = null, int? q = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { using var target = TargetStream.NewFromStream(stream); - JxlsaveTarget(target, tier, distance, effort, lossless, q, strip, background, pageHeight); + JxlsaveTarget(target, tier, distance, profile, effort, lossless, q, keep, background, pageHeight); } /// @@ -4636,7 +4774,7 @@ public static Image Logmat(double sigma, double minAmpl, bool? separable = null, /// /// /// - /// using Image @out = NetVips.Image.Magickload(filename, density: string, page: int, n: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Magickload(filename, density: string, page: int, n: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -4646,8 +4784,9 @@ public static Image Logmat(double sigma, double minAmpl, bool? separable = null, /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Magickload(string filename, string density = null, int? page = null, int? n = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Magickload(string filename, string density = null, int? page = null, int? n = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -4657,6 +4796,7 @@ public static Image Magickload(string filename, string density = null, int? page options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("magickload", options, filename) as Image; } @@ -4666,7 +4806,7 @@ public static Image Magickload(string filename, string density = null, int? page /// /// /// - /// using Image @out = NetVips.Image.Magickload(filename, out var flags, density: string, page: int, n: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Magickload(filename, out var flags, density: string, page: int, n: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -4677,8 +4817,9 @@ public static Image Magickload(string filename, string density = null, int? page /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Magickload(string filename, out Enums.ForeignFlags flags, string density = null, int? page = null, int? n = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Magickload(string filename, out Enums.ForeignFlags flags, string density = null, int? page = null, int? n = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -4688,6 +4829,7 @@ public static Image Magickload(string filename, out Enums.ForeignFlags flags, st options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -4704,7 +4846,7 @@ public static Image Magickload(string filename, out Enums.ForeignFlags flags, st /// /// /// - /// using Image @out = NetVips.Image.MagickloadBuffer(buffer, density: string, page: int, n: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.MagickloadBuffer(buffer, density: string, page: int, n: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Buffer to load from. @@ -4714,8 +4856,9 @@ public static Image Magickload(string filename, out Enums.ForeignFlags flags, st /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image MagickloadBuffer(byte[] buffer, string density = null, int? page = null, int? n = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image MagickloadBuffer(byte[] buffer, string density = null, int? page = null, int? n = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -4725,6 +4868,7 @@ public static Image MagickloadBuffer(byte[] buffer, string density = null, int? options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("magickload_buffer", options, buffer) as Image; } @@ -4734,7 +4878,7 @@ public static Image MagickloadBuffer(byte[] buffer, string density = null, int? /// /// /// - /// using Image @out = NetVips.Image.MagickloadBuffer(buffer, out var flags, density: string, page: int, n: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.MagickloadBuffer(buffer, out var flags, density: string, page: int, n: int, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Buffer to load from. @@ -4745,8 +4889,9 @@ public static Image MagickloadBuffer(byte[] buffer, string density = null, int? /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image MagickloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, string density = null, int? page = null, int? n = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image MagickloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, string density = null, int? page = null, int? n = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -4756,6 +4901,7 @@ public static Image MagickloadBuffer(byte[] buffer, out Enums.ForeignFlags flags options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -4772,7 +4918,7 @@ public static Image MagickloadBuffer(byte[] buffer, out Enums.ForeignFlags flags /// /// /// - /// in.Magicksave(filename, format: string, quality: int, optimizeGifFrames: bool, optimizeGifTransparency: bool, bitdepth: int, strip: bool, background: double[], pageHeight: int); + /// in.Magicksave(filename, format: string, quality: int, optimizeGifFrames: bool, optimizeGifTransparency: bool, bitdepth: int, profile: string, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Filename to save to. @@ -4781,10 +4927,11 @@ public static Image MagickloadBuffer(byte[] buffer, out Enums.ForeignFlags flags /// Apply GIF frames optimization. /// Apply GIF transparency optimization. /// Number of bits per pixel. - /// Strip all metadata from image. + /// Filename of ICC profile to embed. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void Magicksave(string filename, string format = null, int? quality = null, bool? optimizeGifFrames = null, bool? optimizeGifTransparency = null, int? bitdepth = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void Magicksave(string filename, string format = null, int? quality = null, bool? optimizeGifFrames = null, bool? optimizeGifTransparency = null, int? bitdepth = null, string profile = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); @@ -4793,7 +4940,8 @@ public void Magicksave(string filename, string format = null, int? quality = nul options.AddIfPresent("optimize_gif_frames", optimizeGifFrames); options.AddIfPresent("optimize_gif_transparency", optimizeGifTransparency); options.AddIfPresent(nameof(bitdepth), bitdepth); - options.AddIfPresent(nameof(strip), strip); + options.AddIfPresent(nameof(profile), profile); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -4805,7 +4953,7 @@ public void Magicksave(string filename, string format = null, int? quality = nul /// /// /// - /// byte[] buffer = in.MagicksaveBuffer(format: string, quality: int, optimizeGifFrames: bool, optimizeGifTransparency: bool, bitdepth: int, strip: bool, background: double[], pageHeight: int); + /// byte[] buffer = in.MagicksaveBuffer(format: string, quality: int, optimizeGifFrames: bool, optimizeGifTransparency: bool, bitdepth: int, profile: string, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Format to save in. @@ -4813,11 +4961,12 @@ public void Magicksave(string filename, string format = null, int? quality = nul /// Apply GIF frames optimization. /// Apply GIF transparency optimization. /// Number of bits per pixel. - /// Strip all metadata from image. + /// Filename of ICC profile to embed. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. /// An array of bytes. - public byte[] MagicksaveBuffer(string format = null, int? quality = null, bool? optimizeGifFrames = null, bool? optimizeGifTransparency = null, int? bitdepth = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public byte[] MagicksaveBuffer(string format = null, int? quality = null, bool? optimizeGifFrames = null, bool? optimizeGifTransparency = null, int? bitdepth = null, string profile = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); @@ -4826,7 +4975,8 @@ public byte[] MagicksaveBuffer(string format = null, int? quality = null, bool? options.AddIfPresent("optimize_gif_frames", optimizeGifFrames); options.AddIfPresent("optimize_gif_transparency", optimizeGifTransparency); options.AddIfPresent(nameof(bitdepth), bitdepth); - options.AddIfPresent(nameof(strip), strip); + options.AddIfPresent(nameof(profile), profile); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -5263,21 +5413,23 @@ public Image Math2Const(Enums.OperationMath2 math2, double[] c) /// /// /// - /// using Image @out = NetVips.Image.Matload(filename, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Matload(filename, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Matload(string filename, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Matload(string filename, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("matload", options, filename) as Image; } @@ -5287,7 +5439,7 @@ public static Image Matload(string filename, bool? memory = null, Enums.Access? /// /// /// - /// using Image @out = NetVips.Image.Matload(filename, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Matload(filename, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -5295,14 +5447,16 @@ public static Image Matload(string filename, bool? memory = null, Enums.Access? /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Matload(string filename, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Matload(string filename, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -5333,21 +5487,23 @@ public Image Matrixinvert() /// /// /// - /// using Image @out = NetVips.Image.Matrixload(filename, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Matrixload(filename, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Matrixload(string filename, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Matrixload(string filename, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("matrixload", options, filename) as Image; } @@ -5357,7 +5513,7 @@ public static Image Matrixload(string filename, bool? memory = null, Enums.Acces /// /// /// - /// using Image @out = NetVips.Image.Matrixload(filename, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Matrixload(filename, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -5365,14 +5521,16 @@ public static Image Matrixload(string filename, bool? memory = null, Enums.Acces /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Matrixload(string filename, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Matrixload(string filename, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -5389,21 +5547,23 @@ public static Image Matrixload(string filename, out Enums.ForeignFlags flags, bo /// /// /// - /// using Image @out = NetVips.Image.MatrixloadSource(source, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.MatrixloadSource(source, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image MatrixloadSource(Source source, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image MatrixloadSource(Source source, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("matrixload_source", options, source) as Image; } @@ -5413,18 +5573,19 @@ public static Image MatrixloadSource(Source source, bool? memory = null, Enums.A /// /// /// - /// using Image @out = NetVips.Image.MatrixloadStream(stream, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.MatrixloadStream(stream, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image MatrixloadStream(Stream stream, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image MatrixloadStream(Stream stream, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = MatrixloadSource(source, memory, access, failOn); + var image = MatrixloadSource(source, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -5436,7 +5597,7 @@ public static Image MatrixloadStream(Stream stream, bool? memory = null, Enums.A /// /// /// - /// using Image @out = NetVips.Image.MatrixloadSource(source, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.MatrixloadSource(source, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. @@ -5444,14 +5605,16 @@ public static Image MatrixloadStream(Stream stream, bool? memory = null, Enums.A /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image MatrixloadSource(Source source, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image MatrixloadSource(Source source, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -5468,7 +5631,7 @@ public static Image MatrixloadSource(Source source, out Enums.ForeignFlags flags /// /// /// - /// using Image @out = NetVips.Image.MatrixloadStream(stream, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.MatrixloadStream(stream, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. @@ -5476,11 +5639,12 @@ public static Image MatrixloadSource(Source source, out Enums.ForeignFlags flags /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image MatrixloadStream(Stream stream, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image MatrixloadStream(Stream stream, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = MatrixloadSource(source, out flags, memory, access, failOn); + var image = MatrixloadSource(source, out flags, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -5492,17 +5656,19 @@ public static Image MatrixloadStream(Stream stream, out Enums.ForeignFlags flags /// /// /// - /// in.Matrixprint(strip: bool, background: double[], pageHeight: int); + /// in.Matrixprint(profile: string, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// - /// Strip all metadata from image. + /// Filename of ICC profile to embed. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void Matrixprint(bool? strip = null, double[] background = null, int? pageHeight = null) + public void Matrixprint(string profile = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); - options.AddIfPresent(nameof(strip), strip); + options.AddIfPresent(nameof(profile), profile); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -5514,18 +5680,20 @@ public void Matrixprint(bool? strip = null, double[] background = null, int? pag /// /// /// - /// in.Matrixsave(filename, strip: bool, background: double[], pageHeight: int); + /// in.Matrixsave(filename, profile: string, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Filename to save to. - /// Strip all metadata from image. + /// Filename of ICC profile to embed. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void Matrixsave(string filename, bool? strip = null, double[] background = null, int? pageHeight = null) + public void Matrixsave(string filename, string profile = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); - options.AddIfPresent(nameof(strip), strip); + options.AddIfPresent(nameof(profile), profile); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -5537,18 +5705,20 @@ public void Matrixsave(string filename, bool? strip = null, double[] background /// /// /// - /// in.MatrixsaveTarget(target, strip: bool, background: double[], pageHeight: int); + /// in.MatrixsaveTarget(target, profile: string, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Target to save to. - /// Strip all metadata from image. + /// Filename of ICC profile to embed. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void MatrixsaveTarget(Target target, bool? strip = null, double[] background = null, int? pageHeight = null) + public void MatrixsaveTarget(Target target, string profile = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); - options.AddIfPresent(nameof(strip), strip); + options.AddIfPresent(nameof(profile), profile); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -5560,17 +5730,18 @@ public void MatrixsaveTarget(Target target, bool? strip = null, double[] backgro /// /// /// - /// in.MatrixsaveStream(stream, strip: bool, background: double[], pageHeight: int); + /// in.MatrixsaveStream(stream, profile: string, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Stream to save to. - /// Strip all metadata from image. + /// Filename of ICC profile to embed. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void MatrixsaveStream(Stream stream, bool? strip = null, double[] background = null, int? pageHeight = null) + public void MatrixsaveStream(Stream stream, string profile = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { using var target = TargetStream.NewFromStream(stream); - MatrixsaveTarget(target, strip, background, pageHeight); + MatrixsaveTarget(target, profile, keep, background, pageHeight); } /// @@ -6393,21 +6564,23 @@ public Image Multiply(Image right) /// /// /// - /// using Image @out = NetVips.Image.Niftiload(filename, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Niftiload(filename, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Niftiload(string filename, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Niftiload(string filename, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("niftiload", options, filename) as Image; } @@ -6417,7 +6590,7 @@ public static Image Niftiload(string filename, bool? memory = null, Enums.Access /// /// /// - /// using Image @out = NetVips.Image.Niftiload(filename, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Niftiload(filename, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -6425,14 +6598,16 @@ public static Image Niftiload(string filename, bool? memory = null, Enums.Access /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Niftiload(string filename, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Niftiload(string filename, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -6449,21 +6624,23 @@ public static Image Niftiload(string filename, out Enums.ForeignFlags flags, boo /// /// /// - /// using Image @out = NetVips.Image.NiftiloadSource(source, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.NiftiloadSource(source, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image NiftiloadSource(Source source, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image NiftiloadSource(Source source, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("niftiload_source", options, source) as Image; } @@ -6473,18 +6650,19 @@ public static Image NiftiloadSource(Source source, bool? memory = null, Enums.Ac /// /// /// - /// using Image @out = NetVips.Image.NiftiloadStream(stream, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.NiftiloadStream(stream, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image NiftiloadStream(Stream stream, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image NiftiloadStream(Stream stream, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = NiftiloadSource(source, memory, access, failOn); + var image = NiftiloadSource(source, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -6496,7 +6674,7 @@ public static Image NiftiloadStream(Stream stream, bool? memory = null, Enums.Ac /// /// /// - /// using Image @out = NetVips.Image.NiftiloadSource(source, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.NiftiloadSource(source, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. @@ -6504,14 +6682,16 @@ public static Image NiftiloadStream(Stream stream, bool? memory = null, Enums.Ac /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image NiftiloadSource(Source source, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image NiftiloadSource(Source source, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -6528,7 +6708,7 @@ public static Image NiftiloadSource(Source source, out Enums.ForeignFlags flags, /// /// /// - /// using Image @out = NetVips.Image.NiftiloadStream(stream, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.NiftiloadStream(stream, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. @@ -6536,11 +6716,12 @@ public static Image NiftiloadSource(Source source, out Enums.ForeignFlags flags, /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image NiftiloadStream(Stream stream, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image NiftiloadStream(Stream stream, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = NiftiloadSource(source, out flags, memory, access, failOn); + var image = NiftiloadSource(source, out flags, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -6552,18 +6733,20 @@ public static Image NiftiloadStream(Stream stream, out Enums.ForeignFlags flags, /// /// /// - /// in.Niftisave(filename, strip: bool, background: double[], pageHeight: int); + /// in.Niftisave(filename, profile: string, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Filename to save to. - /// Strip all metadata from image. + /// Filename of ICC profile to embed. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void Niftisave(string filename, bool? strip = null, double[] background = null, int? pageHeight = null) + public void Niftisave(string filename, string profile = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); - options.AddIfPresent(nameof(strip), strip); + options.AddIfPresent(nameof(profile), profile); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -6575,21 +6758,23 @@ public void Niftisave(string filename, bool? strip = null, double[] background = /// /// /// - /// using Image @out = NetVips.Image.Openexrload(filename, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Openexrload(filename, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Openexrload(string filename, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Openexrload(string filename, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("openexrload", options, filename) as Image; } @@ -6599,7 +6784,7 @@ public static Image Openexrload(string filename, bool? memory = null, Enums.Acce /// /// /// - /// using Image @out = NetVips.Image.Openexrload(filename, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Openexrload(filename, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -6607,14 +6792,16 @@ public static Image Openexrload(string filename, bool? memory = null, Enums.Acce /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Openexrload(string filename, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Openexrload(string filename, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -6631,7 +6818,7 @@ public static Image Openexrload(string filename, out Enums.ForeignFlags flags, b /// /// /// - /// using Image @out = NetVips.Image.Openslideload(filename, level: int, autocrop: bool, associated: string, attachAssociated: bool, rgb: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Openslideload(filename, level: int, autocrop: bool, associated: string, attachAssociated: bool, rgb: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -6643,8 +6830,9 @@ public static Image Openexrload(string filename, out Enums.ForeignFlags flags, b /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Openslideload(string filename, int? level = null, bool? autocrop = null, string associated = null, bool? attachAssociated = null, bool? rgb = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Openslideload(string filename, int? level = null, bool? autocrop = null, string associated = null, bool? attachAssociated = null, bool? rgb = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -6656,6 +6844,7 @@ public static Image Openslideload(string filename, int? level = null, bool? auto options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("openslideload", options, filename) as Image; } @@ -6665,7 +6854,7 @@ public static Image Openslideload(string filename, int? level = null, bool? auto /// /// /// - /// using Image @out = NetVips.Image.Openslideload(filename, out var flags, level: int, autocrop: bool, associated: string, attachAssociated: bool, rgb: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Openslideload(filename, out var flags, level: int, autocrop: bool, associated: string, attachAssociated: bool, rgb: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -6678,8 +6867,9 @@ public static Image Openslideload(string filename, int? level = null, bool? auto /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Openslideload(string filename, out Enums.ForeignFlags flags, int? level = null, bool? autocrop = null, string associated = null, bool? attachAssociated = null, bool? rgb = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Openslideload(string filename, out Enums.ForeignFlags flags, int? level = null, bool? autocrop = null, string associated = null, bool? attachAssociated = null, bool? rgb = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -6691,6 +6881,7 @@ public static Image Openslideload(string filename, out Enums.ForeignFlags flags, options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -6707,7 +6898,7 @@ public static Image Openslideload(string filename, out Enums.ForeignFlags flags, /// /// /// - /// using Image @out = NetVips.Image.OpenslideloadSource(source, level: int, autocrop: bool, associated: string, attachAssociated: bool, rgb: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.OpenslideloadSource(source, level: int, autocrop: bool, associated: string, attachAssociated: bool, rgb: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. @@ -6719,8 +6910,9 @@ public static Image Openslideload(string filename, out Enums.ForeignFlags flags, /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image OpenslideloadSource(Source source, int? level = null, bool? autocrop = null, string associated = null, bool? attachAssociated = null, bool? rgb = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image OpenslideloadSource(Source source, int? level = null, bool? autocrop = null, string associated = null, bool? attachAssociated = null, bool? rgb = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -6732,6 +6924,7 @@ public static Image OpenslideloadSource(Source source, int? level = null, bool? options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("openslideload_source", options, source) as Image; } @@ -6741,7 +6934,7 @@ public static Image OpenslideloadSource(Source source, int? level = null, bool? /// /// /// - /// using Image @out = NetVips.Image.OpenslideloadStream(stream, level: int, autocrop: bool, associated: string, attachAssociated: bool, rgb: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.OpenslideloadStream(stream, level: int, autocrop: bool, associated: string, attachAssociated: bool, rgb: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. @@ -6753,11 +6946,12 @@ public static Image OpenslideloadSource(Source source, int? level = null, bool? /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image OpenslideloadStream(Stream stream, int? level = null, bool? autocrop = null, string associated = null, bool? attachAssociated = null, bool? rgb = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image OpenslideloadStream(Stream stream, int? level = null, bool? autocrop = null, string associated = null, bool? attachAssociated = null, bool? rgb = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = OpenslideloadSource(source, level, autocrop, associated, attachAssociated, rgb, memory, access, failOn); + var image = OpenslideloadSource(source, level, autocrop, associated, attachAssociated, rgb, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -6769,7 +6963,7 @@ public static Image OpenslideloadStream(Stream stream, int? level = null, bool? /// /// /// - /// using Image @out = NetVips.Image.OpenslideloadSource(source, out var flags, level: int, autocrop: bool, associated: string, attachAssociated: bool, rgb: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.OpenslideloadSource(source, out var flags, level: int, autocrop: bool, associated: string, attachAssociated: bool, rgb: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. @@ -6782,8 +6976,9 @@ public static Image OpenslideloadStream(Stream stream, int? level = null, bool? /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image OpenslideloadSource(Source source, out Enums.ForeignFlags flags, int? level = null, bool? autocrop = null, string associated = null, bool? attachAssociated = null, bool? rgb = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image OpenslideloadSource(Source source, out Enums.ForeignFlags flags, int? level = null, bool? autocrop = null, string associated = null, bool? attachAssociated = null, bool? rgb = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -6795,6 +6990,7 @@ public static Image OpenslideloadSource(Source source, out Enums.ForeignFlags fl options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -6811,7 +7007,7 @@ public static Image OpenslideloadSource(Source source, out Enums.ForeignFlags fl /// /// /// - /// using Image @out = NetVips.Image.OpenslideloadStream(stream, out var flags, level: int, autocrop: bool, associated: string, attachAssociated: bool, rgb: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.OpenslideloadStream(stream, out var flags, level: int, autocrop: bool, associated: string, attachAssociated: bool, rgb: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. @@ -6824,11 +7020,12 @@ public static Image OpenslideloadSource(Source source, out Enums.ForeignFlags fl /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image OpenslideloadStream(Stream stream, out Enums.ForeignFlags flags, int? level = null, bool? autocrop = null, string associated = null, bool? attachAssociated = null, bool? rgb = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image OpenslideloadStream(Stream stream, out Enums.ForeignFlags flags, int? level = null, bool? autocrop = null, string associated = null, bool? attachAssociated = null, bool? rgb = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = OpenslideloadSource(source, out flags, level, autocrop, associated, attachAssociated, rgb, memory, access, failOn); + var image = OpenslideloadSource(source, out flags, level, autocrop, associated, attachAssociated, rgb, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -6840,7 +7037,7 @@ public static Image OpenslideloadStream(Stream stream, out Enums.ForeignFlags fl /// /// /// - /// using Image @out = NetVips.Image.Pdfload(filename, page: int, n: int, dpi: double, scale: double, background: double[], password: string, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Pdfload(filename, page: int, n: int, dpi: double, scale: double, background: double[], password: string, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -6853,8 +7050,9 @@ public static Image OpenslideloadStream(Stream stream, out Enums.ForeignFlags fl /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Pdfload(string filename, int? page = null, int? n = null, double? dpi = null, double? scale = null, double[] background = null, string password = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Pdfload(string filename, int? page = null, int? n = null, double? dpi = null, double? scale = null, double[] background = null, string password = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -6867,6 +7065,7 @@ public static Image Pdfload(string filename, int? page = null, int? n = null, do options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("pdfload", options, filename) as Image; } @@ -6876,7 +7075,7 @@ public static Image Pdfload(string filename, int? page = null, int? n = null, do /// /// /// - /// using Image @out = NetVips.Image.Pdfload(filename, out var flags, page: int, n: int, dpi: double, scale: double, background: double[], password: string, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Pdfload(filename, out var flags, page: int, n: int, dpi: double, scale: double, background: double[], password: string, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -6890,8 +7089,9 @@ public static Image Pdfload(string filename, int? page = null, int? n = null, do /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Pdfload(string filename, out Enums.ForeignFlags flags, int? page = null, int? n = null, double? dpi = null, double? scale = null, double[] background = null, string password = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Pdfload(string filename, out Enums.ForeignFlags flags, int? page = null, int? n = null, double? dpi = null, double? scale = null, double[] background = null, string password = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -6904,6 +7104,7 @@ public static Image Pdfload(string filename, out Enums.ForeignFlags flags, int? options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -6920,7 +7121,7 @@ public static Image Pdfload(string filename, out Enums.ForeignFlags flags, int? /// /// /// - /// using Image @out = NetVips.Image.PdfloadBuffer(buffer, page: int, n: int, dpi: double, scale: double, background: double[], password: string, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.PdfloadBuffer(buffer, page: int, n: int, dpi: double, scale: double, background: double[], password: string, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Buffer to load from. @@ -6933,8 +7134,9 @@ public static Image Pdfload(string filename, out Enums.ForeignFlags flags, int? /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image PdfloadBuffer(byte[] buffer, int? page = null, int? n = null, double? dpi = null, double? scale = null, double[] background = null, string password = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image PdfloadBuffer(byte[] buffer, int? page = null, int? n = null, double? dpi = null, double? scale = null, double[] background = null, string password = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -6947,6 +7149,7 @@ public static Image PdfloadBuffer(byte[] buffer, int? page = null, int? n = null options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("pdfload_buffer", options, buffer) as Image; } @@ -6956,7 +7159,7 @@ public static Image PdfloadBuffer(byte[] buffer, int? page = null, int? n = null /// /// /// - /// using Image @out = NetVips.Image.PdfloadBuffer(buffer, out var flags, page: int, n: int, dpi: double, scale: double, background: double[], password: string, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.PdfloadBuffer(buffer, out var flags, page: int, n: int, dpi: double, scale: double, background: double[], password: string, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Buffer to load from. @@ -6970,8 +7173,9 @@ public static Image PdfloadBuffer(byte[] buffer, int? page = null, int? n = null /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image PdfloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, int? page = null, int? n = null, double? dpi = null, double? scale = null, double[] background = null, string password = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image PdfloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, int? page = null, int? n = null, double? dpi = null, double? scale = null, double[] background = null, string password = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -6984,6 +7188,7 @@ public static Image PdfloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, i options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -7000,7 +7205,7 @@ public static Image PdfloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, i /// /// /// - /// using Image @out = NetVips.Image.PdfloadSource(source, page: int, n: int, dpi: double, scale: double, background: double[], password: string, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.PdfloadSource(source, page: int, n: int, dpi: double, scale: double, background: double[], password: string, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. @@ -7013,8 +7218,9 @@ public static Image PdfloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, i /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image PdfloadSource(Source source, int? page = null, int? n = null, double? dpi = null, double? scale = null, double[] background = null, string password = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image PdfloadSource(Source source, int? page = null, int? n = null, double? dpi = null, double? scale = null, double[] background = null, string password = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -7027,6 +7233,7 @@ public static Image PdfloadSource(Source source, int? page = null, int? n = null options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("pdfload_source", options, source) as Image; } @@ -7036,7 +7243,7 @@ public static Image PdfloadSource(Source source, int? page = null, int? n = null /// /// /// - /// using Image @out = NetVips.Image.PdfloadStream(stream, page: int, n: int, dpi: double, scale: double, background: double[], password: string, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.PdfloadStream(stream, page: int, n: int, dpi: double, scale: double, background: double[], password: string, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. @@ -7049,11 +7256,12 @@ public static Image PdfloadSource(Source source, int? page = null, int? n = null /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image PdfloadStream(Stream stream, int? page = null, int? n = null, double? dpi = null, double? scale = null, double[] background = null, string password = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image PdfloadStream(Stream stream, int? page = null, int? n = null, double? dpi = null, double? scale = null, double[] background = null, string password = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = PdfloadSource(source, page, n, dpi, scale, background, password, memory, access, failOn); + var image = PdfloadSource(source, page, n, dpi, scale, background, password, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -7065,7 +7273,7 @@ public static Image PdfloadStream(Stream stream, int? page = null, int? n = null /// /// /// - /// using Image @out = NetVips.Image.PdfloadSource(source, out var flags, page: int, n: int, dpi: double, scale: double, background: double[], password: string, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.PdfloadSource(source, out var flags, page: int, n: int, dpi: double, scale: double, background: double[], password: string, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. @@ -7079,8 +7287,9 @@ public static Image PdfloadStream(Stream stream, int? page = null, int? n = null /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image PdfloadSource(Source source, out Enums.ForeignFlags flags, int? page = null, int? n = null, double? dpi = null, double? scale = null, double[] background = null, string password = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image PdfloadSource(Source source, out Enums.ForeignFlags flags, int? page = null, int? n = null, double? dpi = null, double? scale = null, double[] background = null, string password = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -7093,6 +7302,7 @@ public static Image PdfloadSource(Source source, out Enums.ForeignFlags flags, i options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -7109,7 +7319,7 @@ public static Image PdfloadSource(Source source, out Enums.ForeignFlags flags, i /// /// /// - /// using Image @out = NetVips.Image.PdfloadStream(stream, out var flags, page: int, n: int, dpi: double, scale: double, background: double[], password: string, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.PdfloadStream(stream, out var flags, page: int, n: int, dpi: double, scale: double, background: double[], password: string, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. @@ -7123,11 +7333,12 @@ public static Image PdfloadSource(Source source, out Enums.ForeignFlags flags, i /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image PdfloadStream(Stream stream, out Enums.ForeignFlags flags, int? page = null, int? n = null, double? dpi = null, double? scale = null, double[] background = null, string password = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image PdfloadStream(Stream stream, out Enums.ForeignFlags flags, int? page = null, int? n = null, double? dpi = null, double? scale = null, double[] background = null, string password = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = PdfloadSource(source, out flags, page, n, dpi, scale, background, password, memory, access, failOn); + var image = PdfloadSource(source, out flags, page, n, dpi, scale, background, password, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -7194,7 +7405,7 @@ public Image Phasecor(Image in2) /// /// /// - /// using Image @out = NetVips.Image.Pngload(filename, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Pngload(filename, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -7202,8 +7413,9 @@ public Image Phasecor(Image in2) /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Pngload(string filename, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Pngload(string filename, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -7211,6 +7423,7 @@ public static Image Pngload(string filename, bool? unlimited = null, bool? memor options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("pngload", options, filename) as Image; } @@ -7220,7 +7433,7 @@ public static Image Pngload(string filename, bool? unlimited = null, bool? memor /// /// /// - /// using Image @out = NetVips.Image.Pngload(filename, out var flags, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Pngload(filename, out var flags, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -7229,8 +7442,9 @@ public static Image Pngload(string filename, bool? unlimited = null, bool? memor /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Pngload(string filename, out Enums.ForeignFlags flags, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Pngload(string filename, out Enums.ForeignFlags flags, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -7238,6 +7452,7 @@ public static Image Pngload(string filename, out Enums.ForeignFlags flags, bool? options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -7254,7 +7469,7 @@ public static Image Pngload(string filename, out Enums.ForeignFlags flags, bool? /// /// /// - /// using Image @out = NetVips.Image.PngloadBuffer(buffer, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.PngloadBuffer(buffer, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Buffer to load from. @@ -7262,8 +7477,9 @@ public static Image Pngload(string filename, out Enums.ForeignFlags flags, bool? /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image PngloadBuffer(byte[] buffer, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image PngloadBuffer(byte[] buffer, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -7271,6 +7487,7 @@ public static Image PngloadBuffer(byte[] buffer, bool? unlimited = null, bool? m options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("pngload_buffer", options, buffer) as Image; } @@ -7280,7 +7497,7 @@ public static Image PngloadBuffer(byte[] buffer, bool? unlimited = null, bool? m /// /// /// - /// using Image @out = NetVips.Image.PngloadBuffer(buffer, out var flags, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.PngloadBuffer(buffer, out var flags, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Buffer to load from. @@ -7289,8 +7506,9 @@ public static Image PngloadBuffer(byte[] buffer, bool? unlimited = null, bool? m /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image PngloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image PngloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -7298,6 +7516,7 @@ public static Image PngloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, b options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -7314,7 +7533,7 @@ public static Image PngloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, b /// /// /// - /// using Image @out = NetVips.Image.PngloadSource(source, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.PngloadSource(source, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. @@ -7322,8 +7541,9 @@ public static Image PngloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, b /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image PngloadSource(Source source, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image PngloadSource(Source source, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -7331,6 +7551,7 @@ public static Image PngloadSource(Source source, bool? unlimited = null, bool? m options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("pngload_source", options, source) as Image; } @@ -7340,7 +7561,7 @@ public static Image PngloadSource(Source source, bool? unlimited = null, bool? m /// /// /// - /// using Image @out = NetVips.Image.PngloadStream(stream, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.PngloadStream(stream, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. @@ -7348,11 +7569,12 @@ public static Image PngloadSource(Source source, bool? unlimited = null, bool? m /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image PngloadStream(Stream stream, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image PngloadStream(Stream stream, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = PngloadSource(source, unlimited, memory, access, failOn); + var image = PngloadSource(source, unlimited, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -7364,7 +7586,7 @@ public static Image PngloadStream(Stream stream, bool? unlimited = null, bool? m /// /// /// - /// using Image @out = NetVips.Image.PngloadSource(source, out var flags, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.PngloadSource(source, out var flags, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. @@ -7373,8 +7595,9 @@ public static Image PngloadStream(Stream stream, bool? unlimited = null, bool? m /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image PngloadSource(Source source, out Enums.ForeignFlags flags, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image PngloadSource(Source source, out Enums.ForeignFlags flags, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -7382,6 +7605,7 @@ public static Image PngloadSource(Source source, out Enums.ForeignFlags flags, b options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -7398,7 +7622,7 @@ public static Image PngloadSource(Source source, out Enums.ForeignFlags flags, b /// /// /// - /// using Image @out = NetVips.Image.PngloadStream(stream, out var flags, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.PngloadStream(stream, out var flags, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. @@ -7407,11 +7631,12 @@ public static Image PngloadSource(Source source, out Enums.ForeignFlags flags, b /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image PngloadStream(Stream stream, out Enums.ForeignFlags flags, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image PngloadStream(Stream stream, out Enums.ForeignFlags flags, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = PngloadSource(source, out flags, unlimited, memory, access, failOn); + var image = PngloadSource(source, out flags, unlimited, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -7423,23 +7648,23 @@ public static Image PngloadStream(Stream stream, out Enums.ForeignFlags flags, b /// /// /// - /// in.Pngsave(filename, compression: int, interlace: bool, profile: string, filter: Enums.ForeignPngFilter, palette: bool, q: int, dither: double, bitdepth: int, effort: int, strip: bool, background: double[], pageHeight: int); + /// in.Pngsave(filename, compression: int, interlace: bool, profile: string, filter: Enums.ForeignPngFilter, palette: bool, q: int, dither: double, bitdepth: int, effort: int, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Filename to save to. /// Compression factor. /// Interlace image. - /// ICC profile to embed. + /// Filename of ICC profile to embed. /// libspng row filter flag(s). /// Quantise to 8bpp palette. /// Quantisation quality. /// Amount of dithering. /// Write as a 1, 2, 4, 8 or 16 bit image. /// Quantisation CPU effort. - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void Pngsave(string filename, int? compression = null, bool? interlace = null, string profile = null, Enums.ForeignPngFilter? filter = null, bool? palette = null, int? q = null, double? dither = null, int? bitdepth = null, int? effort = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void Pngsave(string filename, int? compression = null, bool? interlace = null, string profile = null, Enums.ForeignPngFilter? filter = null, bool? palette = null, int? q = null, double? dither = null, int? bitdepth = null, int? effort = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); @@ -7452,7 +7677,7 @@ public void Pngsave(string filename, int? compression = null, bool? interlace = options.AddIfPresent(nameof(dither), dither); options.AddIfPresent(nameof(bitdepth), bitdepth); options.AddIfPresent(nameof(effort), effort); - options.AddIfPresent(nameof(strip), strip); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -7464,23 +7689,23 @@ public void Pngsave(string filename, int? compression = null, bool? interlace = /// /// /// - /// byte[] buffer = in.PngsaveBuffer(compression: int, interlace: bool, profile: string, filter: Enums.ForeignPngFilter, palette: bool, q: int, dither: double, bitdepth: int, effort: int, strip: bool, background: double[], pageHeight: int); + /// byte[] buffer = in.PngsaveBuffer(compression: int, interlace: bool, profile: string, filter: Enums.ForeignPngFilter, palette: bool, q: int, dither: double, bitdepth: int, effort: int, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Compression factor. /// Interlace image. - /// ICC profile to embed. + /// Filename of ICC profile to embed. /// libspng row filter flag(s). /// Quantise to 8bpp palette. /// Quantisation quality. /// Amount of dithering. /// Write as a 1, 2, 4, 8 or 16 bit image. /// Quantisation CPU effort. - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. /// An array of bytes. - public byte[] PngsaveBuffer(int? compression = null, bool? interlace = null, string profile = null, Enums.ForeignPngFilter? filter = null, bool? palette = null, int? q = null, double? dither = null, int? bitdepth = null, int? effort = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public byte[] PngsaveBuffer(int? compression = null, bool? interlace = null, string profile = null, Enums.ForeignPngFilter? filter = null, bool? palette = null, int? q = null, double? dither = null, int? bitdepth = null, int? effort = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); @@ -7493,7 +7718,7 @@ public byte[] PngsaveBuffer(int? compression = null, bool? interlace = null, str options.AddIfPresent(nameof(dither), dither); options.AddIfPresent(nameof(bitdepth), bitdepth); options.AddIfPresent(nameof(effort), effort); - options.AddIfPresent(nameof(strip), strip); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -7505,23 +7730,23 @@ public byte[] PngsaveBuffer(int? compression = null, bool? interlace = null, str /// /// /// - /// in.PngsaveTarget(target, compression: int, interlace: bool, profile: string, filter: Enums.ForeignPngFilter, palette: bool, q: int, dither: double, bitdepth: int, effort: int, strip: bool, background: double[], pageHeight: int); + /// in.PngsaveTarget(target, compression: int, interlace: bool, profile: string, filter: Enums.ForeignPngFilter, palette: bool, q: int, dither: double, bitdepth: int, effort: int, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Target to save to. /// Compression factor. /// Interlace image. - /// ICC profile to embed. + /// Filename of ICC profile to embed. /// libspng row filter flag(s). /// Quantise to 8bpp palette. /// Quantisation quality. /// Amount of dithering. /// Write as a 1, 2, 4, 8 or 16 bit image. /// Quantisation CPU effort. - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void PngsaveTarget(Target target, int? compression = null, bool? interlace = null, string profile = null, Enums.ForeignPngFilter? filter = null, bool? palette = null, int? q = null, double? dither = null, int? bitdepth = null, int? effort = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void PngsaveTarget(Target target, int? compression = null, bool? interlace = null, string profile = null, Enums.ForeignPngFilter? filter = null, bool? palette = null, int? q = null, double? dither = null, int? bitdepth = null, int? effort = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); @@ -7534,7 +7759,7 @@ public void PngsaveTarget(Target target, int? compression = null, bool? interlac options.AddIfPresent(nameof(dither), dither); options.AddIfPresent(nameof(bitdepth), bitdepth); options.AddIfPresent(nameof(effort), effort); - options.AddIfPresent(nameof(strip), strip); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -7546,26 +7771,26 @@ public void PngsaveTarget(Target target, int? compression = null, bool? interlac /// /// /// - /// in.PngsaveStream(stream, compression: int, interlace: bool, profile: string, filter: Enums.ForeignPngFilter, palette: bool, q: int, dither: double, bitdepth: int, effort: int, strip: bool, background: double[], pageHeight: int); + /// in.PngsaveStream(stream, compression: int, interlace: bool, profile: string, filter: Enums.ForeignPngFilter, palette: bool, q: int, dither: double, bitdepth: int, effort: int, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Stream to save to. /// Compression factor. /// Interlace image. - /// ICC profile to embed. + /// Filename of ICC profile to embed. /// libspng row filter flag(s). /// Quantise to 8bpp palette. /// Quantisation quality. /// Amount of dithering. /// Write as a 1, 2, 4, 8 or 16 bit image. /// Quantisation CPU effort. - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void PngsaveStream(Stream stream, int? compression = null, bool? interlace = null, string profile = null, Enums.ForeignPngFilter? filter = null, bool? palette = null, int? q = null, double? dither = null, int? bitdepth = null, int? effort = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void PngsaveStream(Stream stream, int? compression = null, bool? interlace = null, string profile = null, Enums.ForeignPngFilter? filter = null, bool? palette = null, int? q = null, double? dither = null, int? bitdepth = null, int? effort = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { using var target = TargetStream.NewFromStream(stream); - PngsaveTarget(target, compression, interlace, profile, filter, palette, q, dither, bitdepth, effort, strip, background, pageHeight); + PngsaveTarget(target, compression, interlace, profile, filter, palette, q, dither, bitdepth, effort, keep, background, pageHeight); } /// @@ -7573,21 +7798,23 @@ public void PngsaveStream(Stream stream, int? compression = null, bool? interlac /// /// /// - /// using Image @out = NetVips.Image.Ppmload(filename, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Ppmload(filename, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Ppmload(string filename, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Ppmload(string filename, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("ppmload", options, filename) as Image; } @@ -7597,7 +7824,7 @@ public static Image Ppmload(string filename, bool? memory = null, Enums.Access? /// /// /// - /// using Image @out = NetVips.Image.Ppmload(filename, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Ppmload(filename, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -7605,14 +7832,16 @@ public static Image Ppmload(string filename, bool? memory = null, Enums.Access? /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Ppmload(string filename, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Ppmload(string filename, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -7629,21 +7858,23 @@ public static Image Ppmload(string filename, out Enums.ForeignFlags flags, bool? /// /// /// - /// using Image @out = NetVips.Image.PpmloadSource(source, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.PpmloadSource(source, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image PpmloadSource(Source source, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image PpmloadSource(Source source, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("ppmload_source", options, source) as Image; } @@ -7653,18 +7884,19 @@ public static Image PpmloadSource(Source source, bool? memory = null, Enums.Acce /// /// /// - /// using Image @out = NetVips.Image.PpmloadStream(stream, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.PpmloadStream(stream, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image PpmloadStream(Stream stream, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image PpmloadStream(Stream stream, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = PpmloadSource(source, memory, access, failOn); + var image = PpmloadSource(source, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -7676,7 +7908,7 @@ public static Image PpmloadStream(Stream stream, bool? memory = null, Enums.Acce /// /// /// - /// using Image @out = NetVips.Image.PpmloadSource(source, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.PpmloadSource(source, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. @@ -7684,14 +7916,16 @@ public static Image PpmloadStream(Stream stream, bool? memory = null, Enums.Acce /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image PpmloadSource(Source source, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image PpmloadSource(Source source, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -7708,7 +7942,7 @@ public static Image PpmloadSource(Source source, out Enums.ForeignFlags flags, b /// /// /// - /// using Image @out = NetVips.Image.PpmloadStream(stream, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.PpmloadStream(stream, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. @@ -7716,11 +7950,12 @@ public static Image PpmloadSource(Source source, out Enums.ForeignFlags flags, b /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image PpmloadStream(Stream stream, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image PpmloadStream(Stream stream, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = PpmloadSource(source, out flags, memory, access, failOn); + var image = PpmloadSource(source, out flags, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -7732,24 +7967,26 @@ public static Image PpmloadStream(Stream stream, out Enums.ForeignFlags flags, b /// /// /// - /// in.Ppmsave(filename, format: Enums.ForeignPpmFormat, ascii: bool, bitdepth: int, strip: bool, background: double[], pageHeight: int); + /// in.Ppmsave(filename, format: Enums.ForeignPpmFormat, ascii: bool, profile: string, bitdepth: int, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Filename to save to. /// Format to save in. /// Save as ascii. + /// Filename of ICC profile to embed. /// Set to 1 to write as a 1 bit image. - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void Ppmsave(string filename, Enums.ForeignPpmFormat? format = null, bool? ascii = null, int? bitdepth = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void Ppmsave(string filename, Enums.ForeignPpmFormat? format = null, bool? ascii = null, string profile = null, int? bitdepth = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); options.AddIfPresent(nameof(format), format); options.AddIfPresent(nameof(ascii), ascii); + options.AddIfPresent(nameof(profile), profile); options.AddIfPresent(nameof(bitdepth), bitdepth); - options.AddIfPresent(nameof(strip), strip); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -7761,24 +7998,26 @@ public void Ppmsave(string filename, Enums.ForeignPpmFormat? format = null, bool /// /// /// - /// in.PpmsaveTarget(target, format: Enums.ForeignPpmFormat, ascii: bool, bitdepth: int, strip: bool, background: double[], pageHeight: int); + /// in.PpmsaveTarget(target, format: Enums.ForeignPpmFormat, ascii: bool, profile: string, bitdepth: int, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Target to save to. /// Format to save in. /// Save as ascii. + /// Filename of ICC profile to embed. /// Set to 1 to write as a 1 bit image. - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void PpmsaveTarget(Target target, Enums.ForeignPpmFormat? format = null, bool? ascii = null, int? bitdepth = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void PpmsaveTarget(Target target, Enums.ForeignPpmFormat? format = null, bool? ascii = null, string profile = null, int? bitdepth = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); options.AddIfPresent(nameof(format), format); options.AddIfPresent(nameof(ascii), ascii); + options.AddIfPresent(nameof(profile), profile); options.AddIfPresent(nameof(bitdepth), bitdepth); - options.AddIfPresent(nameof(strip), strip); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -7790,20 +8029,21 @@ public void PpmsaveTarget(Target target, Enums.ForeignPpmFormat? format = null, /// /// /// - /// in.PpmsaveStream(stream, format: Enums.ForeignPpmFormat, ascii: bool, bitdepth: int, strip: bool, background: double[], pageHeight: int); + /// in.PpmsaveStream(stream, format: Enums.ForeignPpmFormat, ascii: bool, profile: string, bitdepth: int, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Stream to save to. /// Format to save in. /// Save as ascii. + /// Filename of ICC profile to embed. /// Set to 1 to write as a 1 bit image. - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void PpmsaveStream(Stream stream, Enums.ForeignPpmFormat? format = null, bool? ascii = null, int? bitdepth = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void PpmsaveStream(Stream stream, Enums.ForeignPpmFormat? format = null, bool? ascii = null, string profile = null, int? bitdepth = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { using var target = TargetStream.NewFromStream(stream); - PpmsaveTarget(target, format, ascii, bitdepth, strip, background, pageHeight); + PpmsaveTarget(target, format, ascii, profile, bitdepth, keep, background, pageHeight); } /// @@ -7825,6 +8065,20 @@ public Image Premultiply(double? maxAlpha = null) return this.Call("premultiply", options) as Image; } + /// + /// Prewitt edge detector. + /// + /// + /// + /// using Image @out = in.Prewitt(); + /// + /// + /// A new . + public Image Prewitt() + { + return this.Call("prewitt") as Image; + } + /// /// Find image profiles. /// @@ -7907,21 +8161,23 @@ public Image Rad2float() /// /// /// - /// using Image @out = NetVips.Image.Radload(filename, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Radload(filename, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Radload(string filename, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Radload(string filename, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("radload", options, filename) as Image; } @@ -7931,7 +8187,7 @@ public static Image Radload(string filename, bool? memory = null, Enums.Access? /// /// /// - /// using Image @out = NetVips.Image.Radload(filename, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Radload(filename, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -7939,14 +8195,16 @@ public static Image Radload(string filename, bool? memory = null, Enums.Access? /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Radload(string filename, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Radload(string filename, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -7963,21 +8221,23 @@ public static Image Radload(string filename, out Enums.ForeignFlags flags, bool? /// /// /// - /// using Image @out = NetVips.Image.RadloadBuffer(buffer, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.RadloadBuffer(buffer, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Buffer to load from. /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image RadloadBuffer(byte[] buffer, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image RadloadBuffer(byte[] buffer, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("radload_buffer", options, buffer) as Image; } @@ -7987,7 +8247,7 @@ public static Image RadloadBuffer(byte[] buffer, bool? memory = null, Enums.Acce /// /// /// - /// using Image @out = NetVips.Image.RadloadBuffer(buffer, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.RadloadBuffer(buffer, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Buffer to load from. @@ -7995,14 +8255,16 @@ public static Image RadloadBuffer(byte[] buffer, bool? memory = null, Enums.Acce /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image RadloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image RadloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -8019,21 +8281,23 @@ public static Image RadloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, b /// /// /// - /// using Image @out = NetVips.Image.RadloadSource(source, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.RadloadSource(source, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image RadloadSource(Source source, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image RadloadSource(Source source, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("radload_source", options, source) as Image; } @@ -8043,18 +8307,19 @@ public static Image RadloadSource(Source source, bool? memory = null, Enums.Acce /// /// /// - /// using Image @out = NetVips.Image.RadloadStream(stream, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.RadloadStream(stream, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image RadloadStream(Stream stream, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image RadloadStream(Stream stream, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = RadloadSource(source, memory, access, failOn); + var image = RadloadSource(source, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -8066,7 +8331,7 @@ public static Image RadloadStream(Stream stream, bool? memory = null, Enums.Acce /// /// /// - /// using Image @out = NetVips.Image.RadloadSource(source, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.RadloadSource(source, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. @@ -8074,14 +8339,16 @@ public static Image RadloadStream(Stream stream, bool? memory = null, Enums.Acce /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image RadloadSource(Source source, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image RadloadSource(Source source, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -8098,7 +8365,7 @@ public static Image RadloadSource(Source source, out Enums.ForeignFlags flags, b /// /// /// - /// using Image @out = NetVips.Image.RadloadStream(stream, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.RadloadStream(stream, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. @@ -8106,11 +8373,12 @@ public static Image RadloadSource(Source source, out Enums.ForeignFlags flags, b /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image RadloadStream(Stream stream, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image RadloadStream(Stream stream, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = RadloadSource(source, out flags, memory, access, failOn); + var image = RadloadSource(source, out flags, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -8122,18 +8390,20 @@ public static Image RadloadStream(Stream stream, out Enums.ForeignFlags flags, b /// /// /// - /// in.Radsave(filename, strip: bool, background: double[], pageHeight: int); + /// in.Radsave(filename, profile: string, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Filename to save to. - /// Strip all metadata from image. + /// Filename of ICC profile to embed. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void Radsave(string filename, bool? strip = null, double[] background = null, int? pageHeight = null) + public void Radsave(string filename, string profile = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); - options.AddIfPresent(nameof(strip), strip); + options.AddIfPresent(nameof(profile), profile); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -8145,18 +8415,20 @@ public void Radsave(string filename, bool? strip = null, double[] background = n /// /// /// - /// byte[] buffer = in.RadsaveBuffer(strip: bool, background: double[], pageHeight: int); + /// byte[] buffer = in.RadsaveBuffer(profile: string, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// - /// Strip all metadata from image. + /// Filename of ICC profile to embed. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. /// An array of bytes. - public byte[] RadsaveBuffer(bool? strip = null, double[] background = null, int? pageHeight = null) + public byte[] RadsaveBuffer(string profile = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); - options.AddIfPresent(nameof(strip), strip); + options.AddIfPresent(nameof(profile), profile); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -8168,18 +8440,20 @@ public byte[] RadsaveBuffer(bool? strip = null, double[] background = null, int? /// /// /// - /// in.RadsaveTarget(target, strip: bool, background: double[], pageHeight: int); + /// in.RadsaveTarget(target, profile: string, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Target to save to. - /// Strip all metadata from image. + /// Filename of ICC profile to embed. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void RadsaveTarget(Target target, bool? strip = null, double[] background = null, int? pageHeight = null) + public void RadsaveTarget(Target target, string profile = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); - options.AddIfPresent(nameof(strip), strip); + options.AddIfPresent(nameof(profile), profile); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -8191,17 +8465,18 @@ public void RadsaveTarget(Target target, bool? strip = null, double[] background /// /// /// - /// in.RadsaveStream(stream, strip: bool, background: double[], pageHeight: int); + /// in.RadsaveStream(stream, profile: string, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Stream to save to. - /// Strip all metadata from image. + /// Filename of ICC profile to embed. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void RadsaveStream(Stream stream, bool? strip = null, double[] background = null, int? pageHeight = null) + public void RadsaveStream(Stream stream, string profile = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { using var target = TargetStream.NewFromStream(stream); - RadsaveTarget(target, strip, background, pageHeight); + RadsaveTarget(target, profile, keep, background, pageHeight); } /// @@ -8226,7 +8501,7 @@ public Image Rank(int width, int height, int index) /// /// /// - /// using Image @out = NetVips.Image.Rawload(filename, width, height, bands, offset: ulong, format: Enums.BandFormat, interpretation: Enums.Interpretation, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Rawload(filename, width, height, bands, offset: ulong, format: Enums.BandFormat, interpretation: Enums.Interpretation, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -8239,8 +8514,9 @@ public Image Rank(int width, int height, int index) /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Rawload(string filename, int width, int height, int bands, ulong? offset = null, Enums.BandFormat? format = null, Enums.Interpretation? interpretation = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Rawload(string filename, int width, int height, int bands, ulong? offset = null, Enums.BandFormat? format = null, Enums.Interpretation? interpretation = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -8250,6 +8526,7 @@ public static Image Rawload(string filename, int width, int height, int bands, u options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("rawload", options, filename, width, height, bands) as Image; } @@ -8259,7 +8536,7 @@ public static Image Rawload(string filename, int width, int height, int bands, u /// /// /// - /// using Image @out = NetVips.Image.Rawload(filename, width, height, bands, out var flags, offset: ulong, format: Enums.BandFormat, interpretation: Enums.Interpretation, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Rawload(filename, width, height, bands, out var flags, offset: ulong, format: Enums.BandFormat, interpretation: Enums.Interpretation, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -8273,8 +8550,9 @@ public static Image Rawload(string filename, int width, int height, int bands, u /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Rawload(string filename, int width, int height, int bands, out Enums.ForeignFlags flags, ulong? offset = null, Enums.BandFormat? format = null, Enums.Interpretation? interpretation = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Rawload(string filename, int width, int height, int bands, out Enums.ForeignFlags flags, ulong? offset = null, Enums.BandFormat? format = null, Enums.Interpretation? interpretation = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -8284,6 +8562,7 @@ public static Image Rawload(string filename, int width, int height, int bands, o options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -8300,18 +8579,20 @@ public static Image Rawload(string filename, int width, int height, int bands, o /// /// /// - /// in.Rawsave(filename, strip: bool, background: double[], pageHeight: int); + /// in.Rawsave(filename, profile: string, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Filename to save to. - /// Strip all metadata from image. + /// Filename of ICC profile to embed. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void Rawsave(string filename, bool? strip = null, double[] background = null, int? pageHeight = null) + public void Rawsave(string filename, string profile = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); - options.AddIfPresent(nameof(strip), strip); + options.AddIfPresent(nameof(profile), profile); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -8323,18 +8604,20 @@ public void Rawsave(string filename, bool? strip = null, double[] background = n /// /// /// - /// in.RawsaveFd(fd, strip: bool, background: double[], pageHeight: int); + /// in.RawsaveFd(fd, profile: string, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// File descriptor to write to. - /// Strip all metadata from image. + /// Filename of ICC profile to embed. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void RawsaveFd(int fd, bool? strip = null, double[] background = null, int? pageHeight = null) + public void RawsaveFd(int fd, string profile = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); - options.AddIfPresent(nameof(strip), strip); + options.AddIfPresent(nameof(profile), profile); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -8604,6 +8887,20 @@ public Image Round(Enums.OperationRound round) return this.Call("round", round) as Image; } + /// + /// Scharr edge detector. + /// + /// + /// + /// using Image @out = in.Scharr(); + /// + /// + /// A new . + public Image Scharr() + { + return this.Call("scharr") as Image; + } + /// /// Convert scRGB to BW. /// @@ -8842,18 +9139,20 @@ public static Image Sines(int width, int height, bool? uchar = null, double? hfr /// /// /// - /// using Image @out = input.Smartcrop(width, height, interesting: Enums.Interesting); + /// using Image @out = input.Smartcrop(width, height, interesting: Enums.Interesting, premultiplied: bool); /// /// /// Width of extract area. /// Height of extract area. /// How to measure interestingness. + /// Input image already has premultiplied alpha. /// A new . - public Image Smartcrop(int width, int height, Enums.Interesting? interesting = null) + public Image Smartcrop(int width, int height, Enums.Interesting? interesting = null, bool? premultiplied = null) { var options = new VOption(); options.AddIfPresent(nameof(interesting), interesting); + options.AddIfPresent(nameof(premultiplied), premultiplied); return this.Call("smartcrop", options, width, height) as Image; } @@ -8863,19 +9162,21 @@ public Image Smartcrop(int width, int height, Enums.Interesting? interesting = n /// /// /// - /// using Image @out = input.Smartcrop(width, height, out var attentionX, interesting: Enums.Interesting); + /// using Image @out = input.Smartcrop(width, height, out var attentionX, interesting: Enums.Interesting, premultiplied: bool); /// /// /// Width of extract area. /// Height of extract area. /// Horizontal position of attention centre. /// How to measure interestingness. + /// Input image already has premultiplied alpha. /// A new . - public Image Smartcrop(int width, int height, out int attentionX, Enums.Interesting? interesting = null) + public Image Smartcrop(int width, int height, out int attentionX, Enums.Interesting? interesting = null, bool? premultiplied = null) { var options = new VOption(); options.AddIfPresent(nameof(interesting), interesting); + options.AddIfPresent(nameof(premultiplied), premultiplied); options.Add("attention_x", true); @@ -8892,7 +9193,7 @@ public Image Smartcrop(int width, int height, out int attentionX, Enums.Interest /// /// /// - /// using Image @out = input.Smartcrop(width, height, out var attentionX, out var attentionY, interesting: Enums.Interesting); + /// using Image @out = input.Smartcrop(width, height, out var attentionX, out var attentionY, interesting: Enums.Interesting, premultiplied: bool); /// /// /// Width of extract area. @@ -8900,12 +9201,14 @@ public Image Smartcrop(int width, int height, out int attentionX, Enums.Interest /// Horizontal position of attention centre. /// Vertical position of attention centre. /// How to measure interestingness. + /// Input image already has premultiplied alpha. /// A new . - public Image Smartcrop(int width, int height, out int attentionX, out int attentionY, Enums.Interesting? interesting = null) + public Image Smartcrop(int width, int height, out int attentionX, out int attentionY, Enums.Interesting? interesting = null, bool? premultiplied = null) { var options = new VOption(); options.AddIfPresent(nameof(interesting), interesting); + options.AddIfPresent(nameof(premultiplied), premultiplied); options.Add("attention_x", true); options.Add("attention_y", true); @@ -9087,7 +9390,7 @@ public static Image Sum(params Image[] @in) /// /// /// - /// using Image @out = NetVips.Image.Svgload(filename, dpi: double, scale: double, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Svgload(filename, dpi: double, scale: double, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -9097,8 +9400,9 @@ public static Image Sum(params Image[] @in) /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Svgload(string filename, double? dpi = null, double? scale = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Svgload(string filename, double? dpi = null, double? scale = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -9108,6 +9412,7 @@ public static Image Svgload(string filename, double? dpi = null, double? scale = options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("svgload", options, filename) as Image; } @@ -9117,7 +9422,7 @@ public static Image Svgload(string filename, double? dpi = null, double? scale = /// /// /// - /// using Image @out = NetVips.Image.Svgload(filename, out var flags, dpi: double, scale: double, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Svgload(filename, out var flags, dpi: double, scale: double, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -9128,8 +9433,9 @@ public static Image Svgload(string filename, double? dpi = null, double? scale = /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Svgload(string filename, out Enums.ForeignFlags flags, double? dpi = null, double? scale = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Svgload(string filename, out Enums.ForeignFlags flags, double? dpi = null, double? scale = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -9139,6 +9445,7 @@ public static Image Svgload(string filename, out Enums.ForeignFlags flags, doubl options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -9155,7 +9462,7 @@ public static Image Svgload(string filename, out Enums.ForeignFlags flags, doubl /// /// /// - /// using Image @out = NetVips.Image.SvgloadBuffer(buffer, dpi: double, scale: double, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.SvgloadBuffer(buffer, dpi: double, scale: double, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Buffer to load from. @@ -9165,8 +9472,9 @@ public static Image Svgload(string filename, out Enums.ForeignFlags flags, doubl /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image SvgloadBuffer(byte[] buffer, double? dpi = null, double? scale = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image SvgloadBuffer(byte[] buffer, double? dpi = null, double? scale = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -9176,6 +9484,7 @@ public static Image SvgloadBuffer(byte[] buffer, double? dpi = null, double? sca options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("svgload_buffer", options, buffer) as Image; } @@ -9185,7 +9494,7 @@ public static Image SvgloadBuffer(byte[] buffer, double? dpi = null, double? sca /// /// /// - /// using Image @out = NetVips.Image.SvgloadBuffer(buffer, out var flags, dpi: double, scale: double, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.SvgloadBuffer(buffer, out var flags, dpi: double, scale: double, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Buffer to load from. @@ -9196,8 +9505,9 @@ public static Image SvgloadBuffer(byte[] buffer, double? dpi = null, double? sca /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image SvgloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, double? dpi = null, double? scale = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image SvgloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, double? dpi = null, double? scale = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -9207,6 +9517,7 @@ public static Image SvgloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, d options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -9223,7 +9534,7 @@ public static Image SvgloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, d /// /// /// - /// using Image @out = NetVips.Image.SvgloadSource(source, dpi: double, scale: double, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.SvgloadSource(source, dpi: double, scale: double, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. @@ -9233,8 +9544,9 @@ public static Image SvgloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, d /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image SvgloadSource(Source source, double? dpi = null, double? scale = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image SvgloadSource(Source source, double? dpi = null, double? scale = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -9244,6 +9556,7 @@ public static Image SvgloadSource(Source source, double? dpi = null, double? sca options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("svgload_source", options, source) as Image; } @@ -9253,7 +9566,7 @@ public static Image SvgloadSource(Source source, double? dpi = null, double? sca /// /// /// - /// using Image @out = NetVips.Image.SvgloadStream(stream, dpi: double, scale: double, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.SvgloadStream(stream, dpi: double, scale: double, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. @@ -9263,11 +9576,12 @@ public static Image SvgloadSource(Source source, double? dpi = null, double? sca /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image SvgloadStream(Stream stream, double? dpi = null, double? scale = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image SvgloadStream(Stream stream, double? dpi = null, double? scale = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = SvgloadSource(source, dpi, scale, unlimited, memory, access, failOn); + var image = SvgloadSource(source, dpi, scale, unlimited, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -9279,7 +9593,7 @@ public static Image SvgloadStream(Stream stream, double? dpi = null, double? sca /// /// /// - /// using Image @out = NetVips.Image.SvgloadSource(source, out var flags, dpi: double, scale: double, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.SvgloadSource(source, out var flags, dpi: double, scale: double, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. @@ -9290,8 +9604,9 @@ public static Image SvgloadStream(Stream stream, double? dpi = null, double? sca /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image SvgloadSource(Source source, out Enums.ForeignFlags flags, double? dpi = null, double? scale = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image SvgloadSource(Source source, out Enums.ForeignFlags flags, double? dpi = null, double? scale = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -9301,6 +9616,7 @@ public static Image SvgloadSource(Source source, out Enums.ForeignFlags flags, d options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -9317,7 +9633,7 @@ public static Image SvgloadSource(Source source, out Enums.ForeignFlags flags, d /// /// /// - /// using Image @out = NetVips.Image.SvgloadStream(stream, out var flags, dpi: double, scale: double, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.SvgloadStream(stream, out var flags, dpi: double, scale: double, unlimited: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. @@ -9328,11 +9644,12 @@ public static Image SvgloadSource(Source source, out Enums.ForeignFlags flags, d /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image SvgloadStream(Stream stream, out Enums.ForeignFlags flags, double? dpi = null, double? scale = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image SvgloadStream(Stream stream, out Enums.ForeignFlags flags, double? dpi = null, double? scale = null, bool? unlimited = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = SvgloadSource(source, out flags, dpi, scale, unlimited, memory, access, failOn); + var image = SvgloadSource(source, out flags, dpi, scale, unlimited, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -9709,7 +10026,7 @@ public static Image ThumbnailStream(Stream stream, int width, string optionStrin /// /// /// - /// using Image @out = NetVips.Image.Tiffload(filename, page: int, subifd: int, n: int, autorotate: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Tiffload(filename, page: int, subifd: int, n: int, autorotate: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -9720,8 +10037,9 @@ public static Image ThumbnailStream(Stream stream, int width, string optionStrin /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Tiffload(string filename, int? page = null, int? subifd = null, int? n = null, bool? autorotate = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Tiffload(string filename, int? page = null, int? subifd = null, int? n = null, bool? autorotate = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -9732,6 +10050,7 @@ public static Image Tiffload(string filename, int? page = null, int? subifd = nu options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("tiffload", options, filename) as Image; } @@ -9741,7 +10060,7 @@ public static Image Tiffload(string filename, int? page = null, int? subifd = nu /// /// /// - /// using Image @out = NetVips.Image.Tiffload(filename, out var flags, page: int, subifd: int, n: int, autorotate: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Tiffload(filename, out var flags, page: int, subifd: int, n: int, autorotate: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -9753,8 +10072,9 @@ public static Image Tiffload(string filename, int? page = null, int? subifd = nu /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Tiffload(string filename, out Enums.ForeignFlags flags, int? page = null, int? subifd = null, int? n = null, bool? autorotate = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Tiffload(string filename, out Enums.ForeignFlags flags, int? page = null, int? subifd = null, int? n = null, bool? autorotate = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -9765,6 +10085,7 @@ public static Image Tiffload(string filename, out Enums.ForeignFlags flags, int? options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -9781,7 +10102,7 @@ public static Image Tiffload(string filename, out Enums.ForeignFlags flags, int? /// /// /// - /// using Image @out = NetVips.Image.TiffloadBuffer(buffer, page: int, subifd: int, n: int, autorotate: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.TiffloadBuffer(buffer, page: int, subifd: int, n: int, autorotate: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Buffer to load from. @@ -9792,8 +10113,9 @@ public static Image Tiffload(string filename, out Enums.ForeignFlags flags, int? /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image TiffloadBuffer(byte[] buffer, int? page = null, int? subifd = null, int? n = null, bool? autorotate = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image TiffloadBuffer(byte[] buffer, int? page = null, int? subifd = null, int? n = null, bool? autorotate = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -9804,6 +10126,7 @@ public static Image TiffloadBuffer(byte[] buffer, int? page = null, int? subifd options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("tiffload_buffer", options, buffer) as Image; } @@ -9813,7 +10136,7 @@ public static Image TiffloadBuffer(byte[] buffer, int? page = null, int? subifd /// /// /// - /// using Image @out = NetVips.Image.TiffloadBuffer(buffer, out var flags, page: int, subifd: int, n: int, autorotate: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.TiffloadBuffer(buffer, out var flags, page: int, subifd: int, n: int, autorotate: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Buffer to load from. @@ -9825,8 +10148,9 @@ public static Image TiffloadBuffer(byte[] buffer, int? page = null, int? subifd /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image TiffloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, int? page = null, int? subifd = null, int? n = null, bool? autorotate = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image TiffloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, int? page = null, int? subifd = null, int? n = null, bool? autorotate = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -9837,6 +10161,7 @@ public static Image TiffloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -9853,7 +10178,7 @@ public static Image TiffloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, /// /// /// - /// using Image @out = NetVips.Image.TiffloadSource(source, page: int, subifd: int, n: int, autorotate: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.TiffloadSource(source, page: int, subifd: int, n: int, autorotate: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. @@ -9864,8 +10189,9 @@ public static Image TiffloadBuffer(byte[] buffer, out Enums.ForeignFlags flags, /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image TiffloadSource(Source source, int? page = null, int? subifd = null, int? n = null, bool? autorotate = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image TiffloadSource(Source source, int? page = null, int? subifd = null, int? n = null, bool? autorotate = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -9876,6 +10202,7 @@ public static Image TiffloadSource(Source source, int? page = null, int? subifd options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("tiffload_source", options, source) as Image; } @@ -9885,7 +10212,7 @@ public static Image TiffloadSource(Source source, int? page = null, int? subifd /// /// /// - /// using Image @out = NetVips.Image.TiffloadStream(stream, page: int, subifd: int, n: int, autorotate: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.TiffloadStream(stream, page: int, subifd: int, n: int, autorotate: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. @@ -9896,11 +10223,12 @@ public static Image TiffloadSource(Source source, int? page = null, int? subifd /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image TiffloadStream(Stream stream, int? page = null, int? subifd = null, int? n = null, bool? autorotate = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image TiffloadStream(Stream stream, int? page = null, int? subifd = null, int? n = null, bool? autorotate = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = TiffloadSource(source, page, subifd, n, autorotate, memory, access, failOn); + var image = TiffloadSource(source, page, subifd, n, autorotate, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -9912,7 +10240,7 @@ public static Image TiffloadStream(Stream stream, int? page = null, int? subifd /// /// /// - /// using Image @out = NetVips.Image.TiffloadSource(source, out var flags, page: int, subifd: int, n: int, autorotate: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.TiffloadSource(source, out var flags, page: int, subifd: int, n: int, autorotate: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. @@ -9924,8 +10252,9 @@ public static Image TiffloadStream(Stream stream, int? page = null, int? subifd /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image TiffloadSource(Source source, out Enums.ForeignFlags flags, int? page = null, int? subifd = null, int? n = null, bool? autorotate = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image TiffloadSource(Source source, out Enums.ForeignFlags flags, int? page = null, int? subifd = null, int? n = null, bool? autorotate = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -9936,6 +10265,7 @@ public static Image TiffloadSource(Source source, out Enums.ForeignFlags flags, options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -9952,7 +10282,7 @@ public static Image TiffloadSource(Source source, out Enums.ForeignFlags flags, /// /// /// - /// using Image @out = NetVips.Image.TiffloadStream(stream, out var flags, page: int, subifd: int, n: int, autorotate: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.TiffloadStream(stream, out var flags, page: int, subifd: int, n: int, autorotate: bool, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. @@ -9964,11 +10294,12 @@ public static Image TiffloadSource(Source source, out Enums.ForeignFlags flags, /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image TiffloadStream(Stream stream, out Enums.ForeignFlags flags, int? page = null, int? subifd = null, int? n = null, bool? autorotate = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image TiffloadStream(Stream stream, out Enums.ForeignFlags flags, int? page = null, int? subifd = null, int? n = null, bool? autorotate = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = TiffloadSource(source, out flags, page, subifd, n, autorotate, memory, access, failOn); + var image = TiffloadSource(source, out flags, page, subifd, n, autorotate, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -9980,16 +10311,16 @@ public static Image TiffloadStream(Stream stream, out Enums.ForeignFlags flags, /// /// /// - /// in.Tiffsave(filename, compression: Enums.ForeignTiffCompression, q: int, predictor: Enums.ForeignTiffPredictor, profile: string, tile: bool, tileWidth: int, tileHeight: int, pyramid: bool, miniswhite: bool, bitdepth: int, resunit: Enums.ForeignTiffResunit, xres: double, yres: double, bigtiff: bool, properties: bool, regionShrink: Enums.RegionShrink, level: int, lossless: bool, depth: Enums.ForeignDzDepth, subifd: bool, premultiply: bool, strip: bool, background: double[], pageHeight: int); + /// in.Tiffsave(filename, compression: Enums.ForeignTiffCompression, q: int, predictor: Enums.ForeignTiffPredictor, tile: bool, tileWidth: int, profile: string, tileHeight: int, pyramid: bool, miniswhite: bool, bitdepth: int, resunit: Enums.ForeignTiffResunit, xres: double, yres: double, bigtiff: bool, properties: bool, regionShrink: Enums.RegionShrink, level: int, lossless: bool, depth: Enums.ForeignDzDepth, subifd: bool, premultiply: bool, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Filename to save to. /// Compression for this file. /// Q factor. /// Compression prediction. - /// ICC profile to embed. /// Write a tiled tiff. /// Tile width in pixels. + /// Filename of ICC profile to embed. /// Tile height in pixels. /// Write a pyramidal tiff. /// Use 0 for white in 1-bit images. @@ -10005,19 +10336,19 @@ public static Image TiffloadStream(Stream stream, out Enums.ForeignFlags flags, /// Pyramid depth. /// Save pyr layers as sub-IFDs. /// Save with premultiplied alpha. - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void Tiffsave(string filename, Enums.ForeignTiffCompression? compression = null, int? q = null, Enums.ForeignTiffPredictor? predictor = null, string profile = null, bool? tile = null, int? tileWidth = null, int? tileHeight = null, bool? pyramid = null, bool? miniswhite = null, int? bitdepth = null, Enums.ForeignTiffResunit? resunit = null, double? xres = null, double? yres = null, bool? bigtiff = null, bool? properties = null, Enums.RegionShrink? regionShrink = null, int? level = null, bool? lossless = null, Enums.ForeignDzDepth? depth = null, bool? subifd = null, bool? premultiply = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void Tiffsave(string filename, Enums.ForeignTiffCompression? compression = null, int? q = null, Enums.ForeignTiffPredictor? predictor = null, bool? tile = null, int? tileWidth = null, string profile = null, int? tileHeight = null, bool? pyramid = null, bool? miniswhite = null, int? bitdepth = null, Enums.ForeignTiffResunit? resunit = null, double? xres = null, double? yres = null, bool? bigtiff = null, bool? properties = null, Enums.RegionShrink? regionShrink = null, int? level = null, bool? lossless = null, Enums.ForeignDzDepth? depth = null, bool? subifd = null, bool? premultiply = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); options.AddIfPresent(nameof(compression), compression); options.AddIfPresent("Q", q); options.AddIfPresent(nameof(predictor), predictor); - options.AddIfPresent(nameof(profile), profile); options.AddIfPresent(nameof(tile), tile); options.AddIfPresent("tile_width", tileWidth); + options.AddIfPresent(nameof(profile), profile); options.AddIfPresent("tile_height", tileHeight); options.AddIfPresent(nameof(pyramid), pyramid); options.AddIfPresent(nameof(miniswhite), miniswhite); @@ -10033,7 +10364,7 @@ public void Tiffsave(string filename, Enums.ForeignTiffCompression? compression options.AddIfPresent(nameof(depth), depth); options.AddIfPresent(nameof(subifd), subifd); options.AddIfPresent(nameof(premultiply), premultiply); - options.AddIfPresent(nameof(strip), strip); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -10045,15 +10376,15 @@ public void Tiffsave(string filename, Enums.ForeignTiffCompression? compression /// /// /// - /// byte[] buffer = in.TiffsaveBuffer(compression: Enums.ForeignTiffCompression, q: int, predictor: Enums.ForeignTiffPredictor, profile: string, tile: bool, tileWidth: int, tileHeight: int, pyramid: bool, miniswhite: bool, bitdepth: int, resunit: Enums.ForeignTiffResunit, xres: double, yres: double, bigtiff: bool, properties: bool, regionShrink: Enums.RegionShrink, level: int, lossless: bool, depth: Enums.ForeignDzDepth, subifd: bool, premultiply: bool, strip: bool, background: double[], pageHeight: int); + /// byte[] buffer = in.TiffsaveBuffer(compression: Enums.ForeignTiffCompression, q: int, predictor: Enums.ForeignTiffPredictor, tile: bool, tileWidth: int, profile: string, tileHeight: int, pyramid: bool, miniswhite: bool, bitdepth: int, resunit: Enums.ForeignTiffResunit, xres: double, yres: double, bigtiff: bool, properties: bool, regionShrink: Enums.RegionShrink, level: int, lossless: bool, depth: Enums.ForeignDzDepth, subifd: bool, premultiply: bool, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Compression for this file. /// Q factor. /// Compression prediction. - /// ICC profile to embed. /// Write a tiled tiff. /// Tile width in pixels. + /// Filename of ICC profile to embed. /// Tile height in pixels. /// Write a pyramidal tiff. /// Use 0 for white in 1-bit images. @@ -10069,20 +10400,20 @@ public void Tiffsave(string filename, Enums.ForeignTiffCompression? compression /// Pyramid depth. /// Save pyr layers as sub-IFDs. /// Save with premultiplied alpha. - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. /// An array of bytes. - public byte[] TiffsaveBuffer(Enums.ForeignTiffCompression? compression = null, int? q = null, Enums.ForeignTiffPredictor? predictor = null, string profile = null, bool? tile = null, int? tileWidth = null, int? tileHeight = null, bool? pyramid = null, bool? miniswhite = null, int? bitdepth = null, Enums.ForeignTiffResunit? resunit = null, double? xres = null, double? yres = null, bool? bigtiff = null, bool? properties = null, Enums.RegionShrink? regionShrink = null, int? level = null, bool? lossless = null, Enums.ForeignDzDepth? depth = null, bool? subifd = null, bool? premultiply = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public byte[] TiffsaveBuffer(Enums.ForeignTiffCompression? compression = null, int? q = null, Enums.ForeignTiffPredictor? predictor = null, bool? tile = null, int? tileWidth = null, string profile = null, int? tileHeight = null, bool? pyramid = null, bool? miniswhite = null, int? bitdepth = null, Enums.ForeignTiffResunit? resunit = null, double? xres = null, double? yres = null, bool? bigtiff = null, bool? properties = null, Enums.RegionShrink? regionShrink = null, int? level = null, bool? lossless = null, Enums.ForeignDzDepth? depth = null, bool? subifd = null, bool? premultiply = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); options.AddIfPresent(nameof(compression), compression); options.AddIfPresent("Q", q); options.AddIfPresent(nameof(predictor), predictor); - options.AddIfPresent(nameof(profile), profile); options.AddIfPresent(nameof(tile), tile); options.AddIfPresent("tile_width", tileWidth); + options.AddIfPresent(nameof(profile), profile); options.AddIfPresent("tile_height", tileHeight); options.AddIfPresent(nameof(pyramid), pyramid); options.AddIfPresent(nameof(miniswhite), miniswhite); @@ -10098,7 +10429,7 @@ public byte[] TiffsaveBuffer(Enums.ForeignTiffCompression? compression = null, i options.AddIfPresent(nameof(depth), depth); options.AddIfPresent(nameof(subifd), subifd); options.AddIfPresent(nameof(premultiply), premultiply); - options.AddIfPresent(nameof(strip), strip); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -10110,16 +10441,16 @@ public byte[] TiffsaveBuffer(Enums.ForeignTiffCompression? compression = null, i /// /// /// - /// in.TiffsaveTarget(target, compression: Enums.ForeignTiffCompression, q: int, predictor: Enums.ForeignTiffPredictor, profile: string, tile: bool, tileWidth: int, tileHeight: int, pyramid: bool, miniswhite: bool, bitdepth: int, resunit: Enums.ForeignTiffResunit, xres: double, yres: double, bigtiff: bool, properties: bool, regionShrink: Enums.RegionShrink, level: int, lossless: bool, depth: Enums.ForeignDzDepth, subifd: bool, premultiply: bool, strip: bool, background: double[], pageHeight: int); + /// in.TiffsaveTarget(target, compression: Enums.ForeignTiffCompression, q: int, predictor: Enums.ForeignTiffPredictor, tile: bool, tileWidth: int, profile: string, tileHeight: int, pyramid: bool, miniswhite: bool, bitdepth: int, resunit: Enums.ForeignTiffResunit, xres: double, yres: double, bigtiff: bool, properties: bool, regionShrink: Enums.RegionShrink, level: int, lossless: bool, depth: Enums.ForeignDzDepth, subifd: bool, premultiply: bool, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Target to save to. /// Compression for this file. /// Q factor. /// Compression prediction. - /// ICC profile to embed. /// Write a tiled tiff. /// Tile width in pixels. + /// Filename of ICC profile to embed. /// Tile height in pixels. /// Write a pyramidal tiff. /// Use 0 for white in 1-bit images. @@ -10135,19 +10466,19 @@ public byte[] TiffsaveBuffer(Enums.ForeignTiffCompression? compression = null, i /// Pyramid depth. /// Save pyr layers as sub-IFDs. /// Save with premultiplied alpha. - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void TiffsaveTarget(Target target, Enums.ForeignTiffCompression? compression = null, int? q = null, Enums.ForeignTiffPredictor? predictor = null, string profile = null, bool? tile = null, int? tileWidth = null, int? tileHeight = null, bool? pyramid = null, bool? miniswhite = null, int? bitdepth = null, Enums.ForeignTiffResunit? resunit = null, double? xres = null, double? yres = null, bool? bigtiff = null, bool? properties = null, Enums.RegionShrink? regionShrink = null, int? level = null, bool? lossless = null, Enums.ForeignDzDepth? depth = null, bool? subifd = null, bool? premultiply = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void TiffsaveTarget(Target target, Enums.ForeignTiffCompression? compression = null, int? q = null, Enums.ForeignTiffPredictor? predictor = null, bool? tile = null, int? tileWidth = null, string profile = null, int? tileHeight = null, bool? pyramid = null, bool? miniswhite = null, int? bitdepth = null, Enums.ForeignTiffResunit? resunit = null, double? xres = null, double? yres = null, bool? bigtiff = null, bool? properties = null, Enums.RegionShrink? regionShrink = null, int? level = null, bool? lossless = null, Enums.ForeignDzDepth? depth = null, bool? subifd = null, bool? premultiply = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); options.AddIfPresent(nameof(compression), compression); options.AddIfPresent("Q", q); options.AddIfPresent(nameof(predictor), predictor); - options.AddIfPresent(nameof(profile), profile); options.AddIfPresent(nameof(tile), tile); options.AddIfPresent("tile_width", tileWidth); + options.AddIfPresent(nameof(profile), profile); options.AddIfPresent("tile_height", tileHeight); options.AddIfPresent(nameof(pyramid), pyramid); options.AddIfPresent(nameof(miniswhite), miniswhite); @@ -10163,7 +10494,7 @@ public void TiffsaveTarget(Target target, Enums.ForeignTiffCompression? compress options.AddIfPresent(nameof(depth), depth); options.AddIfPresent(nameof(subifd), subifd); options.AddIfPresent(nameof(premultiply), premultiply); - options.AddIfPresent(nameof(strip), strip); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -10175,16 +10506,16 @@ public void TiffsaveTarget(Target target, Enums.ForeignTiffCompression? compress /// /// /// - /// in.TiffsaveStream(stream, compression: Enums.ForeignTiffCompression, q: int, predictor: Enums.ForeignTiffPredictor, profile: string, tile: bool, tileWidth: int, tileHeight: int, pyramid: bool, miniswhite: bool, bitdepth: int, resunit: Enums.ForeignTiffResunit, xres: double, yres: double, bigtiff: bool, properties: bool, regionShrink: Enums.RegionShrink, level: int, lossless: bool, depth: Enums.ForeignDzDepth, subifd: bool, premultiply: bool, strip: bool, background: double[], pageHeight: int); + /// in.TiffsaveStream(stream, compression: Enums.ForeignTiffCompression, q: int, predictor: Enums.ForeignTiffPredictor, tile: bool, tileWidth: int, profile: string, tileHeight: int, pyramid: bool, miniswhite: bool, bitdepth: int, resunit: Enums.ForeignTiffResunit, xres: double, yres: double, bigtiff: bool, properties: bool, regionShrink: Enums.RegionShrink, level: int, lossless: bool, depth: Enums.ForeignDzDepth, subifd: bool, premultiply: bool, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Stream to save to. /// Compression for this file. /// Q factor. /// Compression prediction. - /// ICC profile to embed. /// Write a tiled tiff. /// Tile width in pixels. + /// Filename of ICC profile to embed. /// Tile height in pixels. /// Write a pyramidal tiff. /// Use 0 for white in 1-bit images. @@ -10200,13 +10531,13 @@ public void TiffsaveTarget(Target target, Enums.ForeignTiffCompression? compress /// Pyramid depth. /// Save pyr layers as sub-IFDs. /// Save with premultiplied alpha. - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void TiffsaveStream(Stream stream, Enums.ForeignTiffCompression? compression = null, int? q = null, Enums.ForeignTiffPredictor? predictor = null, string profile = null, bool? tile = null, int? tileWidth = null, int? tileHeight = null, bool? pyramid = null, bool? miniswhite = null, int? bitdepth = null, Enums.ForeignTiffResunit? resunit = null, double? xres = null, double? yres = null, bool? bigtiff = null, bool? properties = null, Enums.RegionShrink? regionShrink = null, int? level = null, bool? lossless = null, Enums.ForeignDzDepth? depth = null, bool? subifd = null, bool? premultiply = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void TiffsaveStream(Stream stream, Enums.ForeignTiffCompression? compression = null, int? q = null, Enums.ForeignTiffPredictor? predictor = null, bool? tile = null, int? tileWidth = null, string profile = null, int? tileHeight = null, bool? pyramid = null, bool? miniswhite = null, int? bitdepth = null, Enums.ForeignTiffResunit? resunit = null, double? xres = null, double? yres = null, bool? bigtiff = null, bool? properties = null, Enums.RegionShrink? regionShrink = null, int? level = null, bool? lossless = null, Enums.ForeignDzDepth? depth = null, bool? subifd = null, bool? premultiply = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { using var target = TargetStream.NewFromStream(stream); - TiffsaveTarget(target, compression, q, predictor, profile, tile, tileWidth, tileHeight, pyramid, miniswhite, bitdepth, resunit, xres, yres, bigtiff, properties, regionShrink, level, lossless, depth, subifd, premultiply, strip, background, pageHeight); + TiffsaveTarget(target, compression, q, predictor, tile, tileWidth, profile, tileHeight, pyramid, miniswhite, bitdepth, resunit, xres, yres, bigtiff, properties, regionShrink, level, lossless, depth, subifd, premultiply, keep, background, pageHeight); } /// @@ -10320,21 +10651,23 @@ public Image Unpremultiply(double? maxAlpha = null, int? alphaBand = null) /// /// /// - /// using Image @out = NetVips.Image.Vipsload(filename, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Vipsload(filename, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Vipsload(string filename, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Vipsload(string filename, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("vipsload", options, filename) as Image; } @@ -10344,7 +10677,7 @@ public static Image Vipsload(string filename, bool? memory = null, Enums.Access? /// /// /// - /// using Image @out = NetVips.Image.Vipsload(filename, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Vipsload(filename, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -10352,14 +10685,16 @@ public static Image Vipsload(string filename, bool? memory = null, Enums.Access? /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Vipsload(string filename, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Vipsload(string filename, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -10376,21 +10711,23 @@ public static Image Vipsload(string filename, out Enums.ForeignFlags flags, bool /// /// /// - /// using Image @out = NetVips.Image.VipsloadSource(source, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.VipsloadSource(source, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image VipsloadSource(Source source, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image VipsloadSource(Source source, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("vipsload_source", options, source) as Image; } @@ -10400,18 +10737,19 @@ public static Image VipsloadSource(Source source, bool? memory = null, Enums.Acc /// /// /// - /// using Image @out = NetVips.Image.VipsloadStream(stream, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.VipsloadStream(stream, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image VipsloadStream(Stream stream, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image VipsloadStream(Stream stream, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = VipsloadSource(source, memory, access, failOn); + var image = VipsloadSource(source, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -10423,7 +10761,7 @@ public static Image VipsloadStream(Stream stream, bool? memory = null, Enums.Acc /// /// /// - /// using Image @out = NetVips.Image.VipsloadSource(source, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.VipsloadSource(source, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. @@ -10431,14 +10769,16 @@ public static Image VipsloadStream(Stream stream, bool? memory = null, Enums.Acc /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image VipsloadSource(Source source, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image VipsloadSource(Source source, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -10455,7 +10795,7 @@ public static Image VipsloadSource(Source source, out Enums.ForeignFlags flags, /// /// /// - /// using Image @out = NetVips.Image.VipsloadStream(stream, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.VipsloadStream(stream, out var flags, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. @@ -10463,11 +10803,12 @@ public static Image VipsloadSource(Source source, out Enums.ForeignFlags flags, /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image VipsloadStream(Stream stream, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image VipsloadStream(Stream stream, out Enums.ForeignFlags flags, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = VipsloadSource(source, out flags, memory, access, failOn); + var image = VipsloadSource(source, out flags, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -10479,18 +10820,20 @@ public static Image VipsloadStream(Stream stream, out Enums.ForeignFlags flags, /// /// /// - /// in.Vipssave(filename, strip: bool, background: double[], pageHeight: int); + /// in.Vipssave(filename, profile: string, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Filename to save to. - /// Strip all metadata from image. + /// Filename of ICC profile to embed. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void Vipssave(string filename, bool? strip = null, double[] background = null, int? pageHeight = null) + public void Vipssave(string filename, string profile = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); - options.AddIfPresent(nameof(strip), strip); + options.AddIfPresent(nameof(profile), profile); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -10502,18 +10845,20 @@ public void Vipssave(string filename, bool? strip = null, double[] background = /// /// /// - /// in.VipssaveTarget(target, strip: bool, background: double[], pageHeight: int); + /// in.VipssaveTarget(target, profile: string, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Target to save to. - /// Strip all metadata from image. + /// Filename of ICC profile to embed. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void VipssaveTarget(Target target, bool? strip = null, double[] background = null, int? pageHeight = null) + public void VipssaveTarget(Target target, string profile = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); - options.AddIfPresent(nameof(strip), strip); + options.AddIfPresent(nameof(profile), profile); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -10525,17 +10870,18 @@ public void VipssaveTarget(Target target, bool? strip = null, double[] backgroun /// /// /// - /// in.VipssaveStream(stream, strip: bool, background: double[], pageHeight: int); + /// in.VipssaveStream(stream, profile: string, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Stream to save to. - /// Strip all metadata from image. + /// Filename of ICC profile to embed. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void VipssaveStream(Stream stream, bool? strip = null, double[] background = null, int? pageHeight = null) + public void VipssaveStream(Stream stream, string profile = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { using var target = TargetStream.NewFromStream(stream); - VipssaveTarget(target, strip, background, pageHeight); + VipssaveTarget(target, profile, keep, background, pageHeight); } /// @@ -10543,7 +10889,7 @@ public void VipssaveStream(Stream stream, bool? strip = null, double[] backgroun /// /// /// - /// using Image @out = NetVips.Image.Webpload(filename, page: int, n: int, scale: double, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Webpload(filename, page: int, n: int, scale: double, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -10553,8 +10899,9 @@ public void VipssaveStream(Stream stream, bool? strip = null, double[] backgroun /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Webpload(string filename, int? page = null, int? n = null, double? scale = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Webpload(string filename, int? page = null, int? n = null, double? scale = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -10564,6 +10911,7 @@ public static Image Webpload(string filename, int? page = null, int? n = null, d options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("webpload", options, filename) as Image; } @@ -10573,7 +10921,7 @@ public static Image Webpload(string filename, int? page = null, int? n = null, d /// /// /// - /// using Image @out = NetVips.Image.Webpload(filename, out var flags, page: int, n: int, scale: double, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.Webpload(filename, out var flags, page: int, n: int, scale: double, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Filename to load from. @@ -10584,8 +10932,9 @@ public static Image Webpload(string filename, int? page = null, int? n = null, d /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image Webpload(string filename, out Enums.ForeignFlags flags, int? page = null, int? n = null, double? scale = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image Webpload(string filename, out Enums.ForeignFlags flags, int? page = null, int? n = null, double? scale = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -10595,6 +10944,7 @@ public static Image Webpload(string filename, out Enums.ForeignFlags flags, int? options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -10611,7 +10961,7 @@ public static Image Webpload(string filename, out Enums.ForeignFlags flags, int? /// /// /// - /// using Image @out = NetVips.Image.WebploadBuffer(buffer, page: int, n: int, scale: double, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.WebploadBuffer(buffer, page: int, n: int, scale: double, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Buffer to load from. @@ -10621,8 +10971,9 @@ public static Image Webpload(string filename, out Enums.ForeignFlags flags, int? /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image WebploadBuffer(byte[] buffer, int? page = null, int? n = null, double? scale = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image WebploadBuffer(byte[] buffer, int? page = null, int? n = null, double? scale = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -10632,6 +10983,7 @@ public static Image WebploadBuffer(byte[] buffer, int? page = null, int? n = nul options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("webpload_buffer", options, buffer) as Image; } @@ -10641,7 +10993,7 @@ public static Image WebploadBuffer(byte[] buffer, int? page = null, int? n = nul /// /// /// - /// using Image @out = NetVips.Image.WebploadBuffer(buffer, out var flags, page: int, n: int, scale: double, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.WebploadBuffer(buffer, out var flags, page: int, n: int, scale: double, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Buffer to load from. @@ -10652,8 +11004,9 @@ public static Image WebploadBuffer(byte[] buffer, int? page = null, int? n = nul /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image WebploadBuffer(byte[] buffer, out Enums.ForeignFlags flags, int? page = null, int? n = null, double? scale = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image WebploadBuffer(byte[] buffer, out Enums.ForeignFlags flags, int? page = null, int? n = null, double? scale = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -10663,6 +11016,7 @@ public static Image WebploadBuffer(byte[] buffer, out Enums.ForeignFlags flags, options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -10679,7 +11033,7 @@ public static Image WebploadBuffer(byte[] buffer, out Enums.ForeignFlags flags, /// /// /// - /// using Image @out = NetVips.Image.WebploadSource(source, page: int, n: int, scale: double, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.WebploadSource(source, page: int, n: int, scale: double, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. @@ -10689,8 +11043,9 @@ public static Image WebploadBuffer(byte[] buffer, out Enums.ForeignFlags flags, /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image WebploadSource(Source source, int? page = null, int? n = null, double? scale = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image WebploadSource(Source source, int? page = null, int? n = null, double? scale = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -10700,6 +11055,7 @@ public static Image WebploadSource(Source source, int? page = null, int? n = nul options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); return Operation.Call("webpload_source", options, source) as Image; } @@ -10709,7 +11065,7 @@ public static Image WebploadSource(Source source, int? page = null, int? n = nul /// /// /// - /// using Image @out = NetVips.Image.WebploadStream(stream, page: int, n: int, scale: double, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.WebploadStream(stream, page: int, n: int, scale: double, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. @@ -10719,11 +11075,12 @@ public static Image WebploadSource(Source source, int? page = null, int? n = nul /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image WebploadStream(Stream stream, int? page = null, int? n = null, double? scale = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image WebploadStream(Stream stream, int? page = null, int? n = null, double? scale = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = WebploadSource(source, page, n, scale, memory, access, failOn); + var image = WebploadSource(source, page, n, scale, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -10735,7 +11092,7 @@ public static Image WebploadStream(Stream stream, int? page = null, int? n = nul /// /// /// - /// using Image @out = NetVips.Image.WebploadSource(source, out var flags, page: int, n: int, scale: double, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.WebploadSource(source, out var flags, page: int, n: int, scale: double, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Source to load from. @@ -10746,8 +11103,9 @@ public static Image WebploadStream(Stream stream, int? page = null, int? n = nul /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image WebploadSource(Source source, out Enums.ForeignFlags flags, int? page = null, int? n = null, double? scale = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image WebploadSource(Source source, out Enums.ForeignFlags flags, int? page = null, int? n = null, double? scale = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var options = new VOption(); @@ -10757,6 +11115,7 @@ public static Image WebploadSource(Source source, out Enums.ForeignFlags flags, options.AddIfPresent(nameof(memory), memory); options.AddIfPresent(nameof(access), access); options.AddFailOn(failOn); + options.AddIfPresent(nameof(revalidate), revalidate); options.Add("flags", true); @@ -10773,7 +11132,7 @@ public static Image WebploadSource(Source source, out Enums.ForeignFlags flags, /// /// /// - /// using Image @out = NetVips.Image.WebploadStream(stream, out var flags, page: int, n: int, scale: double, memory: bool, access: Enums.Access, failOn: Enums.FailOn); + /// using Image @out = NetVips.Image.WebploadStream(stream, out var flags, page: int, n: int, scale: double, memory: bool, access: Enums.Access, failOn: Enums.FailOn, revalidate: bool); /// /// /// Stream to load from. @@ -10784,11 +11143,12 @@ public static Image WebploadSource(Source source, out Enums.ForeignFlags flags, /// Force open via memory. /// Required access pattern for this file. /// Error level to fail on. + /// Don't use a cached result for this operation. /// A new . - public static Image WebploadStream(Stream stream, out Enums.ForeignFlags flags, int? page = null, int? n = null, double? scale = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null) + public static Image WebploadStream(Stream stream, out Enums.ForeignFlags flags, int? page = null, int? n = null, double? scale = null, bool? memory = null, Enums.Access? access = null, Enums.FailOn? failOn = null, bool? revalidate = null) { var source = SourceStream.NewFromStream(stream); - var image = WebploadSource(source, out flags, page, n, scale, memory, access, failOn); + var image = WebploadSource(source, out flags, page, n, scale, memory, access, failOn, revalidate); image.OnPostClose += () => source.Dispose(); @@ -10800,12 +11160,13 @@ public static Image WebploadStream(Stream stream, out Enums.ForeignFlags flags, /// /// /// - /// in.Webpsave(filename, q: int, lossless: bool, preset: Enums.ForeignWebpPreset, smartSubsample: bool, nearLossless: bool, alphaQ: int, minSize: bool, kmin: int, kmax: int, effort: int, profile: string, mixed: bool, strip: bool, background: double[], pageHeight: int); + /// in.Webpsave(filename, q: int, lossless: bool, profile: string, preset: Enums.ForeignWebpPreset, smartSubsample: bool, nearLossless: bool, alphaQ: int, minSize: bool, kmin: int, kmax: int, effort: int, mixed: bool, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Filename to save to. /// Q factor. /// Enable lossless compression. + /// Filename of ICC profile to embed. /// Preset for lossy compression. /// Enable high quality chroma subsampling. /// Enable preprocessing in lossless mode (uses Q). @@ -10814,17 +11175,17 @@ public static Image WebploadStream(Stream stream, out Enums.ForeignFlags flags, /// Minimum number of frames between key frames. /// Maximum number of frames between key frames. /// Level of CPU effort to reduce file size. - /// ICC profile to embed. /// Allow mixed encoding (might reduce file size). - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void Webpsave(string filename, int? q = null, bool? lossless = null, Enums.ForeignWebpPreset? preset = null, bool? smartSubsample = null, bool? nearLossless = null, int? alphaQ = null, bool? minSize = null, int? kmin = null, int? kmax = null, int? effort = null, string profile = null, bool? mixed = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void Webpsave(string filename, int? q = null, bool? lossless = null, string profile = null, Enums.ForeignWebpPreset? preset = null, bool? smartSubsample = null, bool? nearLossless = null, int? alphaQ = null, bool? minSize = null, int? kmin = null, int? kmax = null, int? effort = null, bool? mixed = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); options.AddIfPresent("Q", q); options.AddIfPresent(nameof(lossless), lossless); + options.AddIfPresent(nameof(profile), profile); options.AddIfPresent(nameof(preset), preset); options.AddIfPresent("smart_subsample", smartSubsample); options.AddIfPresent("near_lossless", nearLossless); @@ -10833,9 +11194,8 @@ public void Webpsave(string filename, int? q = null, bool? lossless = null, Enum options.AddIfPresent(nameof(kmin), kmin); options.AddIfPresent(nameof(kmax), kmax); options.AddIfPresent(nameof(effort), effort); - options.AddIfPresent(nameof(profile), profile); options.AddIfPresent(nameof(mixed), mixed); - options.AddIfPresent(nameof(strip), strip); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -10847,11 +11207,12 @@ public void Webpsave(string filename, int? q = null, bool? lossless = null, Enum /// /// /// - /// byte[] buffer = in.WebpsaveBuffer(q: int, lossless: bool, preset: Enums.ForeignWebpPreset, smartSubsample: bool, nearLossless: bool, alphaQ: int, minSize: bool, kmin: int, kmax: int, effort: int, profile: string, mixed: bool, strip: bool, background: double[], pageHeight: int); + /// byte[] buffer = in.WebpsaveBuffer(q: int, lossless: bool, profile: string, preset: Enums.ForeignWebpPreset, smartSubsample: bool, nearLossless: bool, alphaQ: int, minSize: bool, kmin: int, kmax: int, effort: int, mixed: bool, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Q factor. /// Enable lossless compression. + /// Filename of ICC profile to embed. /// Preset for lossy compression. /// Enable high quality chroma subsampling. /// Enable preprocessing in lossless mode (uses Q). @@ -10860,18 +11221,18 @@ public void Webpsave(string filename, int? q = null, bool? lossless = null, Enum /// Minimum number of frames between key frames. /// Maximum number of frames between key frames. /// Level of CPU effort to reduce file size. - /// ICC profile to embed. /// Allow mixed encoding (might reduce file size). - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. /// An array of bytes. - public byte[] WebpsaveBuffer(int? q = null, bool? lossless = null, Enums.ForeignWebpPreset? preset = null, bool? smartSubsample = null, bool? nearLossless = null, int? alphaQ = null, bool? minSize = null, int? kmin = null, int? kmax = null, int? effort = null, string profile = null, bool? mixed = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public byte[] WebpsaveBuffer(int? q = null, bool? lossless = null, string profile = null, Enums.ForeignWebpPreset? preset = null, bool? smartSubsample = null, bool? nearLossless = null, int? alphaQ = null, bool? minSize = null, int? kmin = null, int? kmax = null, int? effort = null, bool? mixed = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); options.AddIfPresent("Q", q); options.AddIfPresent(nameof(lossless), lossless); + options.AddIfPresent(nameof(profile), profile); options.AddIfPresent(nameof(preset), preset); options.AddIfPresent("smart_subsample", smartSubsample); options.AddIfPresent("near_lossless", nearLossless); @@ -10880,9 +11241,8 @@ public byte[] WebpsaveBuffer(int? q = null, bool? lossless = null, Enums.Foreign options.AddIfPresent(nameof(kmin), kmin); options.AddIfPresent(nameof(kmax), kmax); options.AddIfPresent(nameof(effort), effort); - options.AddIfPresent(nameof(profile), profile); options.AddIfPresent(nameof(mixed), mixed); - options.AddIfPresent(nameof(strip), strip); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -10894,11 +11254,12 @@ public byte[] WebpsaveBuffer(int? q = null, bool? lossless = null, Enums.Foreign /// /// /// - /// in.WebpsaveMime(q: int, lossless: bool, preset: Enums.ForeignWebpPreset, smartSubsample: bool, nearLossless: bool, alphaQ: int, minSize: bool, kmin: int, kmax: int, effort: int, profile: string, mixed: bool, strip: bool, background: double[], pageHeight: int); + /// in.WebpsaveMime(q: int, lossless: bool, profile: string, preset: Enums.ForeignWebpPreset, smartSubsample: bool, nearLossless: bool, alphaQ: int, minSize: bool, kmin: int, kmax: int, effort: int, mixed: bool, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Q factor. /// Enable lossless compression. + /// Filename of ICC profile to embed. /// Preset for lossy compression. /// Enable high quality chroma subsampling. /// Enable preprocessing in lossless mode (uses Q). @@ -10907,17 +11268,17 @@ public byte[] WebpsaveBuffer(int? q = null, bool? lossless = null, Enums.Foreign /// Minimum number of frames between key frames. /// Maximum number of frames between key frames. /// Level of CPU effort to reduce file size. - /// ICC profile to embed. /// Allow mixed encoding (might reduce file size). - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void WebpsaveMime(int? q = null, bool? lossless = null, Enums.ForeignWebpPreset? preset = null, bool? smartSubsample = null, bool? nearLossless = null, int? alphaQ = null, bool? minSize = null, int? kmin = null, int? kmax = null, int? effort = null, string profile = null, bool? mixed = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void WebpsaveMime(int? q = null, bool? lossless = null, string profile = null, Enums.ForeignWebpPreset? preset = null, bool? smartSubsample = null, bool? nearLossless = null, int? alphaQ = null, bool? minSize = null, int? kmin = null, int? kmax = null, int? effort = null, bool? mixed = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); options.AddIfPresent("Q", q); options.AddIfPresent(nameof(lossless), lossless); + options.AddIfPresent(nameof(profile), profile); options.AddIfPresent(nameof(preset), preset); options.AddIfPresent("smart_subsample", smartSubsample); options.AddIfPresent("near_lossless", nearLossless); @@ -10926,9 +11287,8 @@ public void WebpsaveMime(int? q = null, bool? lossless = null, Enums.ForeignWebp options.AddIfPresent(nameof(kmin), kmin); options.AddIfPresent(nameof(kmax), kmax); options.AddIfPresent(nameof(effort), effort); - options.AddIfPresent(nameof(profile), profile); options.AddIfPresent(nameof(mixed), mixed); - options.AddIfPresent(nameof(strip), strip); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -10940,12 +11300,13 @@ public void WebpsaveMime(int? q = null, bool? lossless = null, Enums.ForeignWebp /// /// /// - /// in.WebpsaveTarget(target, q: int, lossless: bool, preset: Enums.ForeignWebpPreset, smartSubsample: bool, nearLossless: bool, alphaQ: int, minSize: bool, kmin: int, kmax: int, effort: int, profile: string, mixed: bool, strip: bool, background: double[], pageHeight: int); + /// in.WebpsaveTarget(target, q: int, lossless: bool, profile: string, preset: Enums.ForeignWebpPreset, smartSubsample: bool, nearLossless: bool, alphaQ: int, minSize: bool, kmin: int, kmax: int, effort: int, mixed: bool, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Target to save to. /// Q factor. /// Enable lossless compression. + /// Filename of ICC profile to embed. /// Preset for lossy compression. /// Enable high quality chroma subsampling. /// Enable preprocessing in lossless mode (uses Q). @@ -10954,17 +11315,17 @@ public void WebpsaveMime(int? q = null, bool? lossless = null, Enums.ForeignWebp /// Minimum number of frames between key frames. /// Maximum number of frames between key frames. /// Level of CPU effort to reduce file size. - /// ICC profile to embed. /// Allow mixed encoding (might reduce file size). - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void WebpsaveTarget(Target target, int? q = null, bool? lossless = null, Enums.ForeignWebpPreset? preset = null, bool? smartSubsample = null, bool? nearLossless = null, int? alphaQ = null, bool? minSize = null, int? kmin = null, int? kmax = null, int? effort = null, string profile = null, bool? mixed = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void WebpsaveTarget(Target target, int? q = null, bool? lossless = null, string profile = null, Enums.ForeignWebpPreset? preset = null, bool? smartSubsample = null, bool? nearLossless = null, int? alphaQ = null, bool? minSize = null, int? kmin = null, int? kmax = null, int? effort = null, bool? mixed = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { var options = new VOption(); options.AddIfPresent("Q", q); options.AddIfPresent(nameof(lossless), lossless); + options.AddIfPresent(nameof(profile), profile); options.AddIfPresent(nameof(preset), preset); options.AddIfPresent("smart_subsample", smartSubsample); options.AddIfPresent("near_lossless", nearLossless); @@ -10973,9 +11334,8 @@ public void WebpsaveTarget(Target target, int? q = null, bool? lossless = null, options.AddIfPresent(nameof(kmin), kmin); options.AddIfPresent(nameof(kmax), kmax); options.AddIfPresent(nameof(effort), effort); - options.AddIfPresent(nameof(profile), profile); options.AddIfPresent(nameof(mixed), mixed); - options.AddIfPresent(nameof(strip), strip); + options.AddForeignKeep(keep); options.AddIfPresent(nameof(background), background); options.AddIfPresent("page_height", pageHeight); @@ -10987,12 +11347,13 @@ public void WebpsaveTarget(Target target, int? q = null, bool? lossless = null, /// /// /// - /// in.WebpsaveStream(stream, q: int, lossless: bool, preset: Enums.ForeignWebpPreset, smartSubsample: bool, nearLossless: bool, alphaQ: int, minSize: bool, kmin: int, kmax: int, effort: int, profile: string, mixed: bool, strip: bool, background: double[], pageHeight: int); + /// in.WebpsaveStream(stream, q: int, lossless: bool, profile: string, preset: Enums.ForeignWebpPreset, smartSubsample: bool, nearLossless: bool, alphaQ: int, minSize: bool, kmin: int, kmax: int, effort: int, mixed: bool, keep: Enums.ForeignKeep, background: double[], pageHeight: int); /// /// /// Stream to save to. /// Q factor. /// Enable lossless compression. + /// Filename of ICC profile to embed. /// Preset for lossy compression. /// Enable high quality chroma subsampling. /// Enable preprocessing in lossless mode (uses Q). @@ -11001,15 +11362,14 @@ public void WebpsaveTarget(Target target, int? q = null, bool? lossless = null, /// Minimum number of frames between key frames. /// Maximum number of frames between key frames. /// Level of CPU effort to reduce file size. - /// ICC profile to embed. /// Allow mixed encoding (might reduce file size). - /// Strip all metadata from image. + /// Which metadata to retain. /// Background value. /// Set page height for multipage save. - public void WebpsaveStream(Stream stream, int? q = null, bool? lossless = null, Enums.ForeignWebpPreset? preset = null, bool? smartSubsample = null, bool? nearLossless = null, int? alphaQ = null, bool? minSize = null, int? kmin = null, int? kmax = null, int? effort = null, string profile = null, bool? mixed = null, bool? strip = null, double[] background = null, int? pageHeight = null) + public void WebpsaveStream(Stream stream, int? q = null, bool? lossless = null, string profile = null, Enums.ForeignWebpPreset? preset = null, bool? smartSubsample = null, bool? nearLossless = null, int? alphaQ = null, bool? minSize = null, int? kmin = null, int? kmax = null, int? effort = null, bool? mixed = null, Enums.ForeignKeep? keep = null, double[] background = null, int? pageHeight = null) { using var target = TargetStream.NewFromStream(stream); - WebpsaveTarget(target, q, lossless, preset, smartSubsample, nearLossless, alphaQ, minSize, kmin, kmax, effort, profile, mixed, strip, background, pageHeight); + WebpsaveTarget(target, q, lossless, profile, preset, smartSubsample, nearLossless, alphaQ, minSize, kmin, kmax, effort, mixed, keep, background, pageHeight); } /// diff --git a/src/NetVips/MutableImage.Generated.cs b/src/NetVips/MutableImage.Generated.cs index bbe2f571..61687a58 100644 --- a/src/NetVips/MutableImage.Generated.cs +++ b/src/NetVips/MutableImage.Generated.cs @@ -1,7 +1,7 @@ //------------------------------------------------------------------------------ // // This code was generated by a tool. -// libvips version: 8.14.2 +// libvips version: 8.15.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. diff --git a/tests/NetVips.Tests/ColourTests.cs b/tests/NetVips.Tests/ColourTests.cs index 318d556d..5d21f424 100644 --- a/tests/NetVips.Tests/ColourTests.cs +++ b/tests/NetVips.Tests/ColourTests.cs @@ -35,7 +35,15 @@ public void TestColourspace() } var pixel = im[10, 10]; - Assert.Equal(42, pixel[3], 2); + if (col == Enums.Interpretation.Scrgb && NetVips.AtLeastLibvips(8, 15)) + { + // libvips 8.15 uses alpha range of 0.0 - 1.0 for scRGB images. + Assert.Equal(42.0 / 255.0, pixel[3], 4); + } + else + { + Assert.Equal(42, pixel[3], 2); + } } // alpha won't be equal for RGB16, but it should be preserved if we go diff --git a/tests/NetVips.Tests/CreateTests.cs b/tests/NetVips.Tests/CreateTests.cs index eb0fc57b..2723a3c4 100644 --- a/tests/NetVips.Tests/CreateTests.cs +++ b/tests/NetVips.Tests/CreateTests.cs @@ -493,7 +493,7 @@ public void TestText() Assert.True(im.Height > 10); Assert.Equal(1, im.Bands); Assert.Equal(Enums.BandFormat.Uchar, im.Format); - Assert.Equal(255, im.Max()); + Assert.True(im.Max() > 240); Assert.Equal(0, im.Min()); if (NetVips.AtLeastLibvips(8, 9)) diff --git a/tests/NetVips.Tests/ForeignTests.cs b/tests/NetVips.Tests/ForeignTests.cs index 5f459c8d..0eb14c3e 100644 --- a/tests/NetVips.Tests/ForeignTests.cs +++ b/tests/NetVips.Tests/ForeignTests.cs @@ -937,7 +937,8 @@ void ExrValid(Image im) 0.159668, 0.040375, // OpenEXR alpha is scaled to 0 - 255 in libvips 8.7+ - NetVips.AtLeastLibvips(8, 7) ? 255 : 1.0 + // but libvips 8.15+ uses alpha range of 0 - 1 for scRGB. + NetVips.AtLeastLibvips(8, 7) && !NetVips.AtLeastLibvips(8, 15) ? 255 : 1.0 }, a, 0.00001); Assert.Equal(610, im.Width); Assert.Equal(406, im.Height); @@ -1298,7 +1299,7 @@ public void TestDzSave() x = Image.NewFromFile(filename + "/2/2/3.jpg"); Assert.Equal(256, x.Width); Assert.Equal(256, x.Height); - Assert.False(Directory.Exists(filename + "/2/2/4.jpg")); + Assert.False(File.Exists(filename + "/2/2/4.jpg")); Assert.False(Directory.Exists(filename + "/3")); x = Image.NewFromFile(filename + "/blank.png"); Assert.Equal(256, x.Width); @@ -1316,7 +1317,7 @@ public void TestDzSave() x = Image.NewFromFile(filename + "/0/1/1.jpg"); Assert.Equal(256, x.Width); Assert.Equal(256, x.Height); - Assert.False(Directory.Exists(filename + "/0/2/2.jpg")); + Assert.False(File.Exists(filename + "/0/2/2.jpg")); // with 511x511, it'll fit exactly into 2x2 -- we we actually generate // 3x3, since we output the overlaps @@ -1330,7 +1331,7 @@ public void TestDzSave() x = Image.NewFromFile(filename + "/0/2/2.jpg"); Assert.Equal(256, x.Width); Assert.Equal(256, x.Height); - Assert.False(Directory.Exists(filename + "/0/3/3.jpg")); + Assert.False(File.Exists(filename + "/0/3/3.jpg")); } // default zoomify layout @@ -1398,7 +1399,7 @@ public void TestDzSave() _colour.Dzsave(filename); buf1 = File.ReadAllBytes(filename); - buf2 = _colour.DzsaveBuffer(basename: baseName); + buf2 = _colour.DzsaveBuffer(imagename: baseName); Assert.Equal(buf1.Length, buf2.Length); // we can't test the bytes are exactly equal -- the timestamp in diff --git "a/tests/NetVips.Tests/images/\320\271\321\206\321\203\320\272.jpg" "b/tests/NetVips.Tests/images/\320\271\321\206\321\203\320\272.jpg" index 4ae2ad73..065262a4 100644 Binary files "a/tests/NetVips.Tests/images/\320\271\321\206\321\203\320\272.jpg" and "b/tests/NetVips.Tests/images/\320\271\321\206\321\203\320\272.jpg" differ