voidAssertIsTrue(boolcondition,stringmessage){if(!condition){thrownewFormatException(message);}}stringsourceFileName="SampleForResource.psd";stringdestinationFileName="Output"+sourceFileName;ClblResourceGetClblResource(PsdImageim){foreach(varlayerinim.Layers){foreach(varlayerResourceinlayer.Resources){if(layerResourceisClblResource){return(ClblResource)layerResource;}}}thrownewException("The specified ClblResource not found");}using(PsdImageim=(PsdImage)Image.Load(sourceFileName)){varresource=GetClblResource(im);AssertIsTrue(resource.BlendClippedElements,"The ClblResource.BlendClippedElements should be true");// Test editing and saving
resource.BlendClippedElements=false;im.Save(destinationFileName);}using(PsdImageim=(PsdImage)Image.Load(destinationFileName)){varresource=GetClblResource(im);AssertIsTrue(!resource.BlendClippedElements,"The ClblResource.BlendClippedElements should change to false");}
conststringActualPropertyValueIsWrongMessage="Expected property value is not equal to actual value";voidAssertIsTrue(boolcondition,stringmessage){if(!condition){thrownewFormatException(message);}}voidExampleSupportOfBlwhResource(stringsourceFileName,intreds,intyellows,intgreens,intcyans,intblues,intmagentas,booluseTint,intbwPresetKind,stringbwPresetFileName,doubletintColorRed,doubletintColorGreen,doubletintColorBlue,inttintColor,intnewTintColor){stringdestinationFileName="Output"+sourceFileName;boolisRequiredResourceFound=false;using(PsdImageim=(PsdImage)Image.Load(sourceFileName)){foreach(varlayerinim.Layers){foreach(varlayerResourceinlayer.Resources){if(layerResourceisBlwhResource){varblwhResource=(BlwhResource)layerResource;varblwhLayer=(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(PsdImageim=(PsdImage)Image.Load(destinationFileName)){foreach(varlayerinim.Layers){foreach(varlayerResourceinlayer.Resources){if(layerResourceisBlwhResource){varblwhResource=(BlwhResource)layerResource;varblwhLayer=(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```markdown)<1e-6,ActualPropertyValueIsWrongMessage);break;}}}}AssertIsTrue(isRequiredResourceFound,"The specified BlwhResource not found");}ExampleSupportOfBlwhResource("BlackWhiteAdjustmentLayerStripesMask.psd",0x28,0x3c,0x28,0x3c,0x14,0x50,false,1,"\0",225.00045776367188,211.00067138671875,179.00115966796875,-1977421,-5925001);ExampleSupportOfBlwhResource("BlackWhiteAdjustmentLayerStripesMask2.psd",0x80,0x40,0x20,0x10,0x08,0x04,true,4,"\0",239.996337890625,127.998046875,63.9990234375,-1015744,-4963324);Console.WriteLine("BlwhResource updating works as expected. Press any key.");
**PSDNET-230. Ability to export Layer Group to Jpeg/Png/Tiff/Gif/Bmp/Jpeg2000/Psd/Psb/Pdf**
using(varpsdImage=(PsdImage)Image.Load("1.psd")){// folder with background
LayerGroupbg_folder=(LayerGroup)psdImage.Layers[0];// folder with content
LayerGroupcontent_folder=(LayerGroup)psdImage.Layers[4];bg_folder.Save("background.png",newPngOptions());content_folder.Save("content.png",newPngOptions());}
**PSDNET-372. Support of lspf Resource (Contains settings about Layer Protected setting)**
conststringActualPropertyValueIsWrongMessage="Expected property value is not equal to actual value";voidAssertIsTrue(boolcondition,stringmessage){if(!condition){thrownewFormatException(message);}}stringsourceFileName="SampleForResource.psd";stringdestinationFileName="Output"+sourceFileName;boolisRequiredResourceFound=false;using(PsdImageim=(PsdImage)Image.Load(sourceFileName)){foreach(varlayerinim.Layers){foreach(varlayerResourceinlayer.Resources){if(layerResourceisLspfResource){varresource=(LspfResource)layerResource;isRequiredResourceFound=true;AssertIsTrue(false==resource.IsCompositeProtected,ActualPropertyValueIsWrongMessage);AssertIsTrue(false==resource.IsPositionProtected,ActualPropertyValueIsWrongMessage);AssertIsTrue(false==resource.IsTransparencyProtected,ActualPropertyValueIsWrongMessage);// Test editing and saving
resource.IsCompositeProtected=true;AssertIsTrue(true==resource.IsCompositeProtected,ActualPropertyValueIsWrongMessage);AssertIsTrue(false==resource.IsPositionProtected,ActualPropertyValueIsWrongMessage);AssertIsTrue(false==resource.IsTransparencyProtected,ActualPropertyValueIsWrongMessage);resource.IsCompositeProtected=false;resource.IsPositionProtected=true;AssertIsTrue(false==resource.IsCompositeProtected,ActualPropertyValueIsWrongMessage);AssertIsTrue(true==resource.IsPositionProtected,ActualPropertyValueIsWrongMessage);AssertIsTrue(false==resource.IsTransparencyProtected,ActualPropertyValueIsWrongMessage);resource.IsPositionProtected=false;resource.IsTransparencyProtected=true;AssertIsTrue(false==resource.IsCompositeProtected,ActualPropertyValueIsWrongMessage);AssertIsTrue(false==resource.IsPositionProtected,ActualPropertyValueIsWrongMessage);AssertIsTrue(true==resource.IsTransparencyProtected,ActualPropertyValueIsWrongMessage);resource.IsCompositeProtected=true;resource.IsPositionProtected=true;resource.IsTransparencyProtected=true;im.Save(destinationFileName);break;}}}}AssertIsTrue(isRequiredResourceFound,"The specified LspfResource not found");isRequiredResourceFound=false;using(PsdImageim=(PsdImage)Image.Load(destinationFileName)){foreach(varlayerinim.Layers){foreach(varlayerResourceinlayer.Resources){if(layerResourceisLspfResource){varresource=(LspfResource)layerResource;isRequiredResourceFound=true;AssertIsTrue(resource.IsCompositeProtected,ActualPropertyValueIsWrongMessage);AssertIsTrue(resource.IsPositionProtected,ActualPropertyValueIsWrongMessage);AssertIsTrue(resource.IsTransparencyProtected,ActualPropertyValueIsWrongMessage);break;}}}}AssertIsTrue(isRequiredResourceFound,"The specified LspfResource not found");Console.WriteLine("LspfResource updating works as expected. Press any key.");
Cookie Notice
To provide you with the best experience, we use cookies for personalization, analytics, and ads. By using our site, you agree to our cookie policy.
Enables storage, such as cookies, related to analytics.