Class BlwhResource
BlwhResource class
BlwhResource class is a resource of Black and White Adjustment Layer.
public class BlwhResource : AdjustmentLayerResource
Constructors
Properties
Name | Description |
---|
BlackAndWhitePresetFileName { get; set; } | Gets or sets the black and white preset file name. |
Blues { get; set; } | Gets or sets the blues value. |
BwPresetKind { get; set; } | Gets or sets the black and white preset kind value. |
Cyans { get; set; } | Gets or sets the cyans value. |
Greens { get; set; } | Gets or sets the greens value. |
Key { get; } | Gets the layer resource key. |
override Length { get; } | Gets the layer resource length in bytes. |
Magentas { get; set; } | Gets or sets the magentas value. |
PsdVersion { get; } | Gets the minimal psd version required for layer resource. 0 indicates no restrictions. |
Reds { get; set; } | Gets or sets the reds value. |
virtual Signature { get; } | Gets the signature. |
TintColor { get; set; } | Gets or sets the Tint Color ARGB value. |
UseTint { get; set; } | Gets or sets a value indicating whether [tint color] is used. |
Yellows { get; set; } | Gets or sets the yellows value. |
Methods
Name | Description |
---|
override Save(StreamContainer, int) | Saves the resource to the specified stream container. |
override ToString() | Returns a String that represents this instance. |
Fields
Name | Description |
---|
const TypeToolKey | The type tool info key. |
Examples
The following example demonstrates how you edit a BlwhResource.
[C#]
void AssertIsTrue(bool condition, string message)
{
if (!condition)
{
throw new FormatException(message);
}
}
const string ActualPropertyValueIsWrongMessage = "Expected property value is not equal to actual value";
string destinationFileName = "Output" + sourceFileName;
bool isRequiredResourceFound = false;
using (PsdImage im = (PsdImage)Image.Load(sourceFileName))
{
foreach (var layer in im.Layers)
{
foreach (var layerResource in layer.Resources)
{
if (layerResource is BlwhResource)
{
var blwhResource = (BlwhResource)layerResource;
var blwhLayer = (BlackWhiteAdjustmentLayer)layer;
isRequiredResourceFound = true;
AssertIsTrue(blwhResource.Reds == reds, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.Yellows == yellows, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.Greens == greens, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.Cyans == cyans, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.Blues == blues, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.Magentas == magentas, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.UseTint == useTint, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.TintColor == tintColor, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.BwPresetKind == bwPresetKind, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.BlackAndWhitePresetFileName == bwPresetFileName, ActualPropertyValueIsWrongMessage);
AssertIsTrue(Math.Abs(blwhLayer.TintColorRed - tintColorRed) < 1e-6, ActualPropertyValueIsWrongMessage);
AssertIsTrue(Math.Abs(blwhLayer.TintColorGreen - tintColorGreen) < 1e-6, ActualPropertyValueIsWrongMessage);
AssertIsTrue(Math.Abs(blwhLayer.TintColorBlue - tintColorBlue) < 1e-6, ActualPropertyValueIsWrongMessage);
// Test editing and saving
blwhResource.Reds = reds - 15;
blwhResource.Yellows = yellows - 15;
blwhResource.Greens = greens + 15;
blwhResource.Cyans = cyans + 15;
blwhResource.Blues = blues - 15;
blwhResource.Magentas = magentas - 15;
blwhResource.UseTint = !useTint;
blwhResource.BwPresetKind = 4;
blwhResource.BlackAndWhitePresetFileName = "bwPresetFileName";
blwhLayer.TintColorRed = tintColorRed - 60;
blwhLayer.TintColorGreen = tintColorGreen - 60;
blwhLayer.TintColorBlue = tintColorBlue - 60;
im.Save(destinationFileName);
break;
}
}
}
}
AssertIsTrue(isRequiredResourceFound, "The specified BlwhResource not found");
isRequiredResourceFound = false;
using (PsdImage im = (PsdImage)Image.Load(destinationFileName))
{
foreach (var layer in im.Layers)
{
foreach (var layerResource in layer.Resources)
{
if (layerResource is BlwhResource)
{
var blwhResource = (BlwhResource)layerResource;
var blwhLayer = (BlackWhiteAdjustmentLayer)layer;
isRequiredResourceFound = true;
AssertIsTrue(blwhResource.Reds == reds - 15, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.Yellows == yellows - 15, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.Greens == greens + 15, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.Cyans == cyans + 15, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.Blues == blues - 15, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.Magentas == magentas - 15, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.UseTint == !useTint, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.TintColor == newTintColor, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.BwPresetKind == 4, ActualPropertyValueIsWrongMessage);
AssertIsTrue(blwhResource.BlackAndWhitePresetFileName == "bwPresetFileName", ActualPropertyValueIsWrongMessage);
AssertIsTrue(Math.Abs(blwhLayer.TintColorRed - tintColorRed + 60) < 1e-6, ActualPropertyValueIsWrongMessage);
AssertIsTrue(Math.Abs(blwhLayer.TintColorGreen - tintColorGreen + 60) < 1e-6, ActualPropertyValueIsWrongMessage);
AssertIsTrue(Math.Abs(blwhLayer.TintColorBlue - tintColorBlue + 60) < 1e-6, ActualPropertyValueIsWrongMessage);
break;
}
}
}
}
AssertIsTrue(isRequiredResourceFound, "The specified BlwhResource not found");
See Also