MCPcopy Create free account
hub / github.com/beefytech/Beef / ReadEffectSection

Method ReadEffectSection

BeefySysLib/img/PSDReader.cpp:711–926  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

709}
710
711void PSDReader::ReadEffectSection(ImageEffects* imageEffects, PSDDescriptor* desc)
712{
713 ImageEffects* anImageEffects = imageEffects;
714
715 if (desc->Get("masterFXSwitch")->mInteger == 0)
716 return;
717
718 // Drop shadow
719 PSDDescriptor* effectDesc = desc->GetDescriptor("DrSh");
720 if (effectDesc->Get("enab")->mInteger != 0)
721 {
722 ImageDropShadowEffect* effect = new ImageDropShadowEffect();
723 effect->mBlendMode = ReadBlendMode(effectDesc->Get("Md "));
724 effect->mOpacity = effectDesc->Get("Opct")->mDouble;
725 ReadEffectColor(effectDesc->GetDescriptor("Clr "), &effect->mColor);
726
727 effect->mLocalAngle = effectDesc->Get("lagl")->mDouble;
728 effect->mUseGlobalLight = effectDesc->Get("uglg")->mInteger != 0;
729 effect->mDistance = effectDesc->Get("Dstn")->mDouble;
730 effect->mSpread = effectDesc->Get("Ckmt")->mDouble;
731 effect->mSize = effectDesc->Get("blur")->mDouble;
732
733 ReadEffectContour(effectDesc->GetDescriptor("TrnS"), &effect->mContour);
734 effect->mNoise = effectDesc->Get("Nose")->mDouble;
735
736 effect->mAntiAliased = effectDesc->Get("AntA")->mInteger != 0;
737 effect->mLayerKnocksOut = effectDesc->Get("layerConceals")->mInteger != 0;
738
739 anImageEffects->AddEffect(effect);
740 }
741
742 // Outer glow
743 effectDesc = desc->GetDescriptor("OrGl");
744 if (effectDesc->Get("enab")->mInteger != 0)
745 {
746 ImageOuterGlowEffect* effect = new ImageOuterGlowEffect();
747 effect->mBlendMode = ReadBlendMode(effectDesc->Get("Md "));
748 effect->mOpacity = effectDesc->Get("Opct")->mDouble;
749 effect->mNoise = effectDesc->Get("Nose")->mDouble;
750
751 effect->mHasGradient = ReadEffectGradient(effectDesc, effect->mColorGradient);
752
753 effect->mTechnique = effectDesc->Get("GlwT")->GetMulticharInt();
754 effect->mSpread = effectDesc->Get("Ckmt")->mDouble;
755 effect->mSize = effectDesc->Get("blur")->mDouble;
756
757 ReadEffectContour(effectDesc->GetDescriptor("TrnS"), &effect->mContour);
758
759 effect->mAntiAliased = effectDesc->Get("AntA")->mInteger != 0;
760 effect->mRange = effectDesc->Get("Inpr")->mDouble;
761 effect->mJitter = effectDesc->Get("ShdN")->mDouble;
762
763 anImageEffects->AddEffect(effect);
764 }
765
766 // Pattern Overlay
767 effectDesc = desc->GetDescriptor("patternFill");
768 if (effectDesc->Get("enab")->mInteger != 0)

Callers

nothing calls this directly

Calls 4

GetDescriptorMethod · 0.80
AddEffectMethod · 0.80
GetMulticharIntMethod · 0.80
GetMethod · 0.45

Tested by

no test coverage detected