Blackmagic Fusion macro: text on a box


I was trying to make a tool which would make a rectangle behind a text element and automatically scale the rectangle as you add more characters in the text.

I ended up making two, in slightly different ways - one for a single line with centre justified text (you could just use multiple copies of this for extra lines) and another for text which is top let justified. Both of these can be can dragged and reposition. A limitation with them both is that the width of the rectangle is set by the text in the first line.

Here are both of the tools - copy and paste them into your Fusion flow. Scroll way down for the Top Left version

Text Box Single line Centred

{

Tools = ordered() {

TextBoxSinglelineCentred11 = MacroOperator {

Inputs = ordered() {

Input1 = InstanceInput {

SourceOp = "Blur2",

Source = "XBlurSize",

Name = "X Box Tweak",

Page = "Controls",

Default = 12.4,

},

Input2 = InstanceInput {

SourceOp = "Background1",

Source = "Type",

},

Input3 = InstanceInput {

SourceOp = "Background1",

Source = "TopLeftRed",

Name = "Color",

ControlGroup = 3,

Default = 0.338,

},

Input4 = InstanceInput {

SourceOp = "Background1",

Source = "TopLeftGreen",

ControlGroup = 3,

Default = 0.363,

},

Input5 = InstanceInput {

SourceOp = "Background1",

Source = "TopLeftBlue",

ControlGroup = 3,

Default = 0.644,

},

Input6 = InstanceInput {

SourceOp = "Background1",

Source = "TopLeftAlpha",

ControlGroup = 3,

Default = 1,

},

Input7 = InstanceInput {

SourceOp = "Background1",

Source = "TopRightRed",

Name = "Top Right",

ControlGroup = 4,

Default = 0,

},

Input8 = InstanceInput {

SourceOp = "Background1",

Source = "TopRightGreen",

ControlGroup = 4,

Default = 0,

},

Input9 = InstanceInput {

SourceOp = "Background1",

Source = "TopRightBlue",

ControlGroup = 4,

Default = 0,

},

Input10 = InstanceInput {

SourceOp = "Background1",

Source = "TopRightAlpha",

ControlGroup = 4,

Default = 1,

},

Input11 = InstanceInput {

SourceOp = "Background1",

Source = "BottomLeftRed",

Name = "Bottom Left",

ControlGroup = 5,

Default = 0,

},

Input12 = InstanceInput {

SourceOp = "Background1",

Source = "BottomLeftGreen",

ControlGroup = 5,

Default = 0,

},

Input13 = InstanceInput {

SourceOp = "Background1",

Source = "BottomLeftBlue",

ControlGroup = 5,

Default = 0,

},

Input14 = InstanceInput {

SourceOp = "Background1",

Source = "BottomLeftAlpha",

ControlGroup = 5,

Default = 1,

},

Input15 = InstanceInput {

SourceOp = "Background1",

Source = "BottomRightRed",

Name = "Bottom Right",

ControlGroup = 6,

Default = 0,

},

Input16 = InstanceInput {

SourceOp = "Background1",

Source = "BottomRightGreen",

ControlGroup = 6,

Default = 0,

},

Input17 = InstanceInput {

SourceOp = "Background1",

Source = "BottomRightBlue",

ControlGroup = 6,

Default = 0,

},

Input18 = InstanceInput {

SourceOp = "Background1",

Source = "BottomRightAlpha",

ControlGroup = 6,

Default = 1,

},

Input19 = InstanceInput {

SourceOp = "Background1",

Source = "GradientType",

},

Input20 = InstanceInput {

SourceOp = "Background1",

Source = "Start",

DefaultX = 0,

DefaultY = 0.5,

},

Input21 = InstanceInput {

SourceOp = "Background1",

Source = "End",

DefaultX = 1,

DefaultY = 0.5,

},

Input22 = InstanceInput {

SourceOp = "Background1",

Source = "Gradient",

},

Input23 = InstanceInput {

SourceOp = "Background1",

Source = "GradientInterpolationMethod",

},

Input24 = InstanceInput {

SourceOp = "Background1",

Source = "Offset",

Default = 0,

},

Input25 = InstanceInput {

SourceOp = "Background1",

Source = "Repeat",

},

Input26 = InstanceInput {

SourceOp = "Background1",

Source = "SubPixel",

},

Input27 = InstanceInput {

SourceOp = "Rectangle1",

Source = "CornerRadius",

Default = 0.085,

},

Input28 = InstanceInput {

SourceOp = "Rectangle1",

Source = "Height",

Page = "Controls",

Default = 0.145,

},

Input29 = InstanceInput {

SourceOp = "Text1",

Source = "Size",

Default = 0.0897,

},

Input30 = InstanceInput {

SourceOp = "Text1",

Source = "Font",

ControlGroup = 18,

},

Input31 = InstanceInput {

SourceOp = "Text1",

Source = "Style",

ControlGroup = 18,

},

Input32 = InstanceInput {

SourceOp = "Text1",

Source = "Underline",

ControlGroup = 18,

},

Input33 = InstanceInput {

SourceOp = "Text1",

Source = "Strikeout",

ControlGroup = 18,

},

Input34 = InstanceInput {

SourceOp = "Text1",

Source = "StyledText",

},

Input35 = InstanceInput {

SourceOp = "Text1",

Source = "Start",

ControlGroup = 20,

Default = 0,

},

Input36 = InstanceInput {

SourceOp = "Text1",

Source = "End",

ControlGroup = 20,

Default = 1,

},

Input37 = InstanceInput {

SourceOp = "Text1",

Source = "Subset",

Default = 0,

},

Input38 = InstanceInput {

SourceOp = "Text1",

Source = "Center",

},

Input39 = InstanceInput {

SourceOp = "Text1",

Source = "SelectElement",

},

Input40 = InstanceInput {

SourceOp = "Text1",

Source = "Select",

},

Input41 = InstanceInput {

SourceOp = "Text1",

Source = "Name1",

DefaultText = "White solid fill",

},

Input42 = InstanceInput {

SourceOp = "Text1",

Source = "Enabled1",

Default = 1,

},

Input43 = InstanceInput {

SourceOp = "Text1",

Source = "Opacity1",

Default = 1,

},

Input44 = InstanceInput {

SourceOp = "Text1",

Source = "PriorityBack1",

Default = 8,

},

Input45 = InstanceInput {

SourceOp = "Text1",

Source = "Overlap1",

Default = 2,

},

Input46 = InstanceInput {

SourceOp = "Text1",

Source = "ElementShape1",

Default = 0,

},

Input47 = InstanceInput {

SourceOp = "Text1",

Source = "Thickness1",

Default = 0.02,

},

Input48 = InstanceInput {

SourceOp = "Text1",

Source = "AdaptThicknessToPerspective1",

Default = 0,

},

Input49 = InstanceInput {

SourceOp = "Text1",

Source = "OutsideOnly1",

Default = 0,

},

Input50 = InstanceInput {

SourceOp = "Text1",

Source = "JoinStyle1",

Default = 1,

},

Input51 = InstanceInput {

SourceOp = "Text1",

Source = "LineStyle1",

Default = 0,

},

Input52 = InstanceInput {

SourceOp = "Text1",

Source = "Level1",

Default = 3,

},

Input53 = InstanceInput {

SourceOp = "Text1",

Source = "ExtendHorizontal1",

Default = 0,

},

Input54 = InstanceInput {

SourceOp = "Text1",

Source = "ExtendVertical1",

Default = 0,

},

Input55 = InstanceInput {

SourceOp = "Text1",

Source = "Round1",

Default = 0,

},

Input56 = InstanceInput {

SourceOp = "Text1",

Source = "UseOneMaterial",

Default = 1,

},

Input57 = InstanceInput {

SourceOp = "Text1",

Source = "Type1",

Default = 0,

},

Input58 = InstanceInput {

SourceOp = "Text1",

Source = "Red1",

Name = "Text Color",

ControlGroup = 42,

Default = 1,

},

Input59 = InstanceInput {

SourceOp = "Text1",

Source = "Green1",

Name = "Color",

ControlGroup = 42,

Default = 1,

},

Input60 = InstanceInput {

SourceOp = "Text1",

Source = "Blue1",

Name = "Color",

ControlGroup = 42,

Default = 1,

},

Input61 = InstanceInput {

SourceOp = "Text1",

Source = "Alpha1",

Name = "Color",

ControlGroup = 42,

Default = 1,

},

Input62 = InstanceInput {

SourceOp = "Text1",

Source = "ImageSource1",

Default = 0,

},

Input63 = InstanceInput {

SourceOp = "Text1",

Source = "ColorImage1",

},

Input64 = InstanceInput {

SourceOp = "Text1",

Source = "ColorFile1",

DefaultText = "",

},

Input65 = InstanceInput {

SourceOp = "Text1",

Source = "ColorBrush1",

Default = 0,

},

Input66 = InstanceInput {

SourceOp = "Text1",

Source = "ShadingGradient1",

},

Input67 = InstanceInput {

SourceOp = "Text1",

Source = "ShadingMapping1",

Default = 1,

},

Input68 = InstanceInput {

SourceOp = "Text1",

Source = "ShadingMappingAngle1",

Name = "Mapping angle",

Default = 0,

},

Input69 = InstanceInput {

SourceOp = "Text1",

Source = "ShadingMappingSize1",

Name = "Mapping size",

Default = 1,

},

Input70 = InstanceInput {

SourceOp = "Text1",

Source = "ShadingMappingAspect1",

Name = "Mapping aspect",

Default = 1,

},

Input71 = InstanceInput {

SourceOp = "Text1",

Source = "ShadingMappingLevel1",

Name = "Mapping level",

Default = 4,

},

Input72 = InstanceInput {

SourceOp = "Text1",

Source = "SoftnessX1",

Default = 0,

},

Input73 = InstanceInput {

SourceOp = "Text1",

Source = "SoftnessY1",

Default = 0,

},

Input74 = InstanceInput {

SourceOp = "Text1",

Source = "SoftnessOnFillColorToo1",

Default = 0,

},

Input75 = InstanceInput {

SourceOp = "Text1",

Source = "SoftnessGlow1",

Default = 0,

},

Input76 = InstanceInput {

SourceOp = "Text1",

Source = "SoftnessBlend1",

Default = 1,

},

Input77 = InstanceInput {

SourceOp = "Text1",

Source = "Offset1",

DefaultX = 0,

DefaultY = 0,

},

Input78 = InstanceInput {

SourceOp = "Text1",

Source = "OffsetZ1",

Default = 0,

},

Input79 = InstanceInput {

SourceOp = "Text1",

Source = "Pivot1",

DefaultX = 0,

DefaultY = 0,

},

Input80 = InstanceInput {

SourceOp = "Text1",

Source = "PivotZ1",

Default = 0,

},

Input81 = InstanceInput {

SourceOp = "Text1",

Source = "AngleX1",

Default = 0,

},

Input82 = InstanceInput {

SourceOp = "Text1",

Source = "AngleY1",

Default = 0,

},

Input83 = InstanceInput {

SourceOp = "Text1",

Source = "AngleZ1",

Default = 0,

},

Input84 = InstanceInput {

SourceOp = "Text1",

Source = "ShearX1",

Default = 0,

},

Input85 = InstanceInput {

SourceOp = "Text1",

Source = "ShearY1",

Default = 0,

},

Input86 = InstanceInput {

SourceOp = "Text1",

Source = "SizeX1",

Default = 1,

},

Input87 = InstanceInput {

SourceOp = "Text1",

Source = "SizeY1",

Default = 1,

},

Input88 = InstanceInput {

SourceOp = "Text1",

Source = "Name2",

DefaultText = "Red outline",

},

Input89 = InstanceInput {

SourceOp = "Text1",

Source = "Enabled2",

Default = 0,

},

Input90 = InstanceInput {

SourceOp = "Text1",

Source = "Name3",

DefaultText = "Black shadow",

},

Input91 = InstanceInput {

SourceOp = "Text1",

Source = "Enabled3",

Default = 0,

},

Input92 = InstanceInput {

SourceOp = "Text1",

Source = "Name4",

DefaultText = "Blue border",

},

Input93 = InstanceInput {

SourceOp = "Text1",

Source = "Enabled4",

Default = 0,

},

Input94 = InstanceInput {

SourceOp = "Text1",

Source = "Name5",

DefaultText = "Element 5",

},

Input95 = InstanceInput {

SourceOp = "Text1",

Source = "Enabled5",

Default = 0,

},

Input96 = InstanceInput {

SourceOp = "Text1",

Source = "Name6",

DefaultText = "Element 6",

},

Input97 = InstanceInput {

SourceOp = "Text1",

Source = "Enabled6",

Default = 0,

},

Input98 = InstanceInput {

SourceOp = "Text1",

Source = "Name7",

DefaultText = "Element 7",

},

Input99 = InstanceInput {

SourceOp = "Text1",

Source = "Enabled7",

Default = 0,

},

Input100 = InstanceInput {

SourceOp = "Text1",

Source = "Name8",

DefaultText = "Element 8",

},

Input101 = InstanceInput {

SourceOp = "Text1",

Source = "Enabled8",

Default = 0,

},

},

Outputs = {

MainOutput1 = InstanceOutput {

SourceOp = "Merge1",

Source = "Output",

},

Output1 = InstanceOutput {

SourceOp = "Probe1",

Source = "Red",

},

Output2 = InstanceOutput {

SourceOp = "Probe1",

Source = "Green",

},

Output3 = InstanceOutput {

SourceOp = "Probe1",

Source = "Blue",

},

Output4 = InstanceOutput {

SourceOp = "Probe1",

Source = "Alpha",

}

},

ViewInfo = GroupInfo {

Name = "TextBoxSinglelineCentred1",

Pos = { 0, 0 }

},

Tools = ordered() {

Merge1 = Merge {

CtrlWShown = false,

Inputs = {

Background = Input {

SourceOp = "Background1",

Source = "Output",

},

Foreground = Input {

SourceOp = "Text1",

Source = "Output",

},

PerformDepthMerge = Input { Value = 0, },

},

ViewInfo = OperatorInfo { Pos = { 330, 115.5 } },

},

Blur2 = Blur {

CtrlWShown = false,

Inputs = {

LockXY = Input { Value = 0, },

Input = Input {

SourceOp = "Text1",

Source = "Output",

},

YBlurSize = Input { Value = 15, },

XBlurSize = Input { Value = 12.4, },

},

ViewInfo = OperatorInfo { Pos = { 330, 49.5 } },

UserControls = ordered() {

YBlurSize = {

INP_MaxAllowed = 1000000,

INP_Integer = false,

INPID_InputControl = "SliderControl",

IC_Steps = 101,

INP_MaxScale = 100,

INP_Default = 1,

INP_MinScale = 0,

INP_MinAllowed = 0,

LINKID_DataType = "Number",

ICS_ControlPage = "Controls",

LINKS_Name = "Y Box Tweak"

},

XBlurSize = {

INP_MaxAllowed = 1000000,

INP_Integer = false,

INPID_InputControl = "SliderControl",

IC_Steps = 101,

INP_MaxScale = 100,

INP_Default = 1,

INP_MinScale = 0,

INP_MinAllowed = 0,

LINKID_DataType = "Number",

ICS_ControlPage = "Controls",

LINKS_Name = "X Box Tweak"

}

}

},

LumaKeyer1 = LumaKeyer {

CtrlWShown = false,

Inputs = {

Channel = Input { Value = 3, },

High = Input { Value = 0.021, },

Input = Input {

SourceOp = "Blur2",

Source = "Output",

},

},

ViewInfo = OperatorInfo { Pos = { 495, 49.5 } },

},

Background1 = Background {

CtrlWShown = false,

Inputs = {

Width = Input { Value = 1920, },

Height = Input { Value = 1080, },

["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },

TopLeftRed = Input { Value = 0.338, },

TopLeftGreen = Input { Value = 0.363, },

TopLeftBlue = Input { Value = 0.644, },

EffectMask = Input {

SourceOp = "Rectangle1",

Source = "Mask",

}

},

ViewInfo = OperatorInfo { Pos = { 220, 115.5 } },

},

Rectangle1 = RectangleMask {

CtrlWShown = false,

Inputs = {

MaskWidth = Input { Value = 1920, },

PixelAspect = Input { Value = { 1, 1 }, },

ClippingMode = Input { Value = FuID { "None" }, },

Center = Input {

SourceOp = "Publish1",

Source = "Value",

},

Width = Input {

SourceOp = "Probe1",

Source = "Result",

},

CornerRadius = Input { Value = 0.085, },

MaskHeight = Input { Value = 240, },

Height = Input { Value = 0.145, },

},

ViewInfo = OperatorInfo { Pos = { 220, 82.5 } },

UserControls = ordered() {

MaskHeight = {

INP_MaxAllowed = 32767,

INP_Integer = true,

INPID_InputControl = "SliderControl",

IC_Steps = 1023,

INP_MaxScale = 1024,

INP_Default = 1080,

INP_MinScale = 2,

INP_MinAllowed = 2,

LINKID_DataType = "Number",

ICS_ControlPage = "Controls",

LINKS_Name = "Box Height Tweak"

},

Height = {

INP_MaxAllowed = 1000000,

INP_Integer = false,

INPID_InputControl = "SliderControl",

INP_MaxScale = 1,

INP_Default = 0.5,

ICS_ControlPage = "Controls",

INPID_PreviewControl = "RectangleControl",

INP_MinAllowed = -1000000,

LINKID_DataType = "Number",

PC_ControlGroup = 1,

INP_MinScale = 0,

PC_ControlID = 1,

LINKS_Name = "Y Box Tweak"

}

}

},

Publish1 = PublishPoint {

CtrlWZoom = false,

CtrlWShown = false,

Inputs = {

Value = Input { Value = { 0.5, 0.547445721583653 }, },

},

},

Probe1 = Probe {

CtrlWZoom = false,

CtrlWShown = false,

Inputs = {

ImageToProbe = Input {

SourceOp = "LumaKeyer1",

Source = "Output",

},

Channel = Input { Value = 3, },

Position = Input {

SourceOp = "Publish1",

Source = "Value",

},

ProbeRectangle = Input { Value = 1, },

Width = Input { Value = 1, },

Height = Input { Value = 0.009, },

},

},

Text1 = TextPlus {

CtrlWZoom = false,

CtrlWShown = false,

Inputs = {

Width = Input { Value = 1920, },

Height = Input { Value = 1080, },

["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },

LayoutType = Input { Value = 1, },

Center = Input {

SourceOp = "Publish1",

Source = "Value",

},

Size = Input { Value = 0.0897, },

Font = Input { Value = "Open Sans", },

StyledText = Input { Value = "Centred text in a box", },

Style = Input { Value = "Bold", },

ManualFontKerningPlacement = Input {

Value = StyledText {

Array = {

},

Value = ""

},

},

Alignment = Input { Value = 1, },

Transform1 = Input { Value = 1, },

},

ViewInfo = OperatorInfo { Pos = { 110, 16.5 } },

}

},

}

},

ActiveTool = "TextBoxSinglelineCentred11"

}

Text on Box Top Left

{

Tools = ordered() {

TextonBoxTopLeft = MacroOperator {

Inputs = ordered() {

Input1 = InstanceInput {

SourceOp = "TextOnABox",

Source = "Size",

Default = 0.08,

},

Input2 = InstanceInput {

SourceOp = "TextOnABox",

Source = "Font",

ControlGroup = 2,

},

Input3 = InstanceInput {

SourceOp = "TextOnABox",

Source = "Style",

ControlGroup = 2,

},

Input4 = InstanceInput {

SourceOp = "TextOnABox",

Source = "Underline",

ControlGroup = 2,

},

Input5 = InstanceInput {

SourceOp = "TextOnABox",

Source = "Strikeout",

ControlGroup = 2,

},

Input6 = InstanceInput {

SourceOp = "TextOnABox",

Source = "StyledText",

},

Input7 = InstanceInput {

SourceOp = "TextOnABox",

Source = "Start",

ControlGroup = 4,

Default = 0,

},

Input8 = InstanceInput {

SourceOp = "TextOnABox",

Source = "End",

ControlGroup = 4,

Default = 1,

},

Input9 = InstanceInput {

SourceOp = "TextOnABox",

Source = "SelectElement",

},

Input10 = InstanceInput {

SourceOp = "TextOnABox",

Source = "Select",

},

Input11 = InstanceInput {

SourceOp = "TextOnABox",

Source = "Name1",

DefaultText = "White solid fill",

},

Input12 = InstanceInput {

SourceOp = "TextOnABox",

Source = "Enabled1",

Default = 1,

},

Input13 = InstanceInput {

SourceOp = "TextOnABox",

Source = "Opacity1",

Default = 1,

},

Input14 = InstanceInput {

SourceOp = "TextOnABox",

Source = "PriorityBack1",

Default = 8,

},

Input15 = InstanceInput {

SourceOp = "TextOnABox",

Source = "Overlap1",

Default = 2,

},

Input16 = InstanceInput {

SourceOp = "TextOnABox",

Source = "ElementShape1",

Default = 0,

},

Input17 = InstanceInput {

SourceOp = "TextOnABox",

Source = "Thickness1",

Default = 0.02,

},

Input18 = InstanceInput {

SourceOp = "TextOnABox",

Source = "AdaptThicknessToPerspective1",

Default = 0,

},

Input19 = InstanceInput {

SourceOp = "TextOnABox",

Source = "OutsideOnly1",

Default = 0,

},

Input20 = InstanceInput {

SourceOp = "TextOnABox",

Source = "JoinStyle1",

Default = 1,

},

Input21 = InstanceInput {

SourceOp = "TextOnABox",

Source = "LineStyle1",

Default = 0,

},

Input22 = InstanceInput {

SourceOp = "TextOnABox",

Source = "Level1",

Default = 3,

},

Input23 = InstanceInput {

SourceOp = "TextOnABox",

Source = "ExtendHorizontal1",

Default = 0,

},

Input24 = InstanceInput {

SourceOp = "TextOnABox",

Source = "ExtendVertical1",

Default = 0,

},

Input25 = InstanceInput {

SourceOp = "TextOnABox",

Source = "Round1",

Default = 0,

},

Input26 = InstanceInput {

SourceOp = "TextOnABox",

Source = "UseOneMaterial",

Default = 1,

},

Input27 = InstanceInput {

SourceOp = "TextOnABox",

Source = "Type1",

Default = 0,

},

Input28 = InstanceInput {

SourceOp = "TextOnABox",

Source = "Red1",

Name = "Text Color",

ControlGroup = 24,

Default = 1,

},

Input29 = InstanceInput {

SourceOp = "TextOnABox",

Source = "Green1",

Name = "Color",

ControlGroup = 24,

Default = 1,

},

Input30 = InstanceInput {

SourceOp = "TextOnABox",

Source = "Blue1",

Name = "Color",

ControlGroup = 24,

Default = 1,

},

Input31 = InstanceInput {

SourceOp = "TextOnABox",

Source = "Alpha1",

Name = "Color",

ControlGroup = 24,

Default = 1,

},

Input32 = InstanceInput {

SourceOp = "TextOnABox",

Source = "ImageSource1",

Default = 0,

},

Input33 = InstanceInput {

SourceOp = "TextOnABox",

Source = "ColorImage1",

},

Input34 = InstanceInput {

SourceOp = "TextOnABox",

Source = "ColorFile1",

DefaultText = "",

},

Input35 = InstanceInput {

SourceOp = "TextOnABox",

Source = "ColorBrush1",

Default = 0,

},

Input36 = InstanceInput {

SourceOp = "TextOnABox",

Source = "ShadingGradient1",

},

Input37 = InstanceInput {

SourceOp = "TextOnABox",

Source = "ShadingMapping1",

Default = 1,

},

Input38 = InstanceInput {

SourceOp = "TextOnABox",

Source = "ShadingMappingAngle1",

Name = "Mapping angle",

Default = 0,

},

Input39 = InstanceInput {

SourceOp = "TextOnABox",

Source = "ShadingMappingSize1",

Name = "Mapping size",

Default = 1,

},

Input40 = InstanceInput {

SourceOp = "TextOnABox",

Source = "ShadingMappingAspect1",

Name = "Mapping aspect",

Default = 1,

},

Input41 = InstanceInput {

SourceOp = "TextOnABox",

Source = "ShadingMappingLevel1",

Name = "Mapping level",

Default = 4,

},

Input42 = InstanceInput {

SourceOp = "TextOnABox",

Source = "SoftnessX1",

Default = 0,

},

Input43 = InstanceInput {

SourceOp = "TextOnABox",

Source = "SoftnessY1",

Default = 0,

},

Input44 = InstanceInput {

SourceOp = "TextOnABox",

Source = "SoftnessOnFillColorToo1",

Default = 0,

},

Input45 = InstanceInput {

SourceOp = "TextOnABox",

Source = "SoftnessGlow1",

Default = 0,

},

Input46 = InstanceInput {

SourceOp = "TextOnABox",

Source = "SoftnessBlend1",

Default = 1,

},

Input47 = InstanceInput {

SourceOp = "TextOnABox",

Source = "Offset1",

DefaultX = 0,

DefaultY = 0,

},

Input48 = InstanceInput {

SourceOp = "TextOnABox",

Source = "OffsetZ1",

Default = 0,

},

Input49 = InstanceInput {

SourceOp = "TextOnABox",

Source = "Pivot1",

DefaultX = 0,

DefaultY = 0,

},

Input50 = InstanceInput {

SourceOp = "xf_Handle",

Source = "Center",

},

Input51 = InstanceInput {

SourceOp = "Background2",

Source = "Type",

},

Input52 = InstanceInput {

SourceOp = "Background2",

Source = "TopLeftRed",

Name = "Color",

ControlGroup = 45,

Default = 0,

},

Input53 = InstanceInput {

SourceOp = "Background2",

Source = "TopLeftGreen",

ControlGroup = 45,

Default = 0,

},

Input54 = InstanceInput {

SourceOp = "Background2",

Source = "TopLeftBlue",

ControlGroup = 45,

Default = 0,

},

Input55 = InstanceInput {

SourceOp = "Background2",

Source = "TopLeftAlpha",

ControlGroup = 45,

Default = 0.5,

},

Input56 = InstanceInput {

SourceOp = "Background2",

Source = "TopRightRed",

Name = "Top Right",

ControlGroup = 46,

Default = 0,

},

Input57 = InstanceInput {

SourceOp = "Background2",

Source = "TopRightGreen",

ControlGroup = 46,

Default = 0,

},

Input58 = InstanceInput {

SourceOp = "Background2",

Source = "TopRightBlue",

ControlGroup = 46,

Default = 0,

},

Input59 = InstanceInput {

SourceOp = "Background2",

Source = "TopRightAlpha",

ControlGroup = 46,

Default = 1,

},

Input60 = InstanceInput {

SourceOp = "Background2",

Source = "BottomLeftRed",

Name = "Bottom Left",

ControlGroup = 47,

Default = 0,

},

Input61 = InstanceInput {

SourceOp = "Background2",

Source = "BottomLeftGreen",

ControlGroup = 47,

Default = 0,

},

Input62 = InstanceInput {

SourceOp = "Background2",

Source = "BottomLeftBlue",

ControlGroup = 47,

Default = 0,

},

Input63 = InstanceInput {

SourceOp = "Background2",

Source = "BottomLeftAlpha",

ControlGroup = 47,

Default = 1,

},

Input64 = InstanceInput {

SourceOp = "Background2",

Source = "BottomRightRed",

Name = "Bottom Right",

ControlGroup = 48,

Default = 0,

},

Input65 = InstanceInput {

SourceOp = "Background2",

Source = "BottomRightGreen",

ControlGroup = 48,

Default = 0,

},

Input66 = InstanceInput {

SourceOp = "Background2",

Source = "BottomRightBlue",

ControlGroup = 48,

Default = 0,

},

Input67 = InstanceInput {

SourceOp = "Background2",

Source = "BottomRightAlpha",

ControlGroup = 48,

Default = 1,

},

Input68 = InstanceInput {

SourceOp = "Background2",

Source = "GradientType",

},

Input69 = InstanceInput {

SourceOp = "Background2",

Source = "Start",

DefaultX = 0,

DefaultY = 0.5,

},

Input70 = InstanceInput {

SourceOp = "Background2",

Source = "End",

DefaultX = 1,

DefaultY = 0.5,

},

Input71 = InstanceInput {

SourceOp = "Background2",

Source = "Gradient",

},

Input72 = InstanceInput {

SourceOp = "Background2",

Source = "GradientInterpolationMethod",

},

Input73 = InstanceInput {

SourceOp = "Background2",

Source = "Offset",

Default = 0,

},

Input74 = InstanceInput {

SourceOp = "Background2",

Source = "Repeat",

},

Input75 = InstanceInput {

SourceOp = "Background2",

Source = "SubPixel",

},

Input76 = InstanceInput {

SourceOp = "Rectangle1",

Source = "CornerRadius",

Default = 0,

},

Input77 = InstanceInput {

SourceOp = "Blur1_1",

Source = "XBlurSize",

Name = "Tweak X",

Page = "Controls",

Default = 12,

},

Input78 = InstanceInput {

SourceOp = "Blur1_1",

Source = "YBlurSize",

Page = "Controls",

Default = 12,

},

},

Outputs = {

MainOutput1 = InstanceOutput {

SourceOp = "xf_Handle",

Source = "Output",

},

Output1 = InstanceOutput {

SourceOp = "ProbeX",

Source = "Red",

},

Output2 = InstanceOutput {

SourceOp = "ProbeX",

Source = "Green",

},

Output3 = InstanceOutput {

SourceOp = "ProbeX",

Source = "Blue",

},

Output4 = InstanceOutput {

SourceOp = "ProbeX",

Source = "Alpha",

},

Output5 = InstanceOutput {

SourceOp = "ProbeY",

Source = "Red",

},

Output6 = InstanceOutput {

SourceOp = "ProbeY",

Source = "Green",

},

Output7 = InstanceOutput {

SourceOp = "ProbeY",

Source = "Blue",

},

Output8 = InstanceOutput {

SourceOp = "ProbeY",

Source = "Alpha",

}

},

ViewInfo = GroupInfo {

Name = "Text on Box Top Left",

Pos = { 0, 0 }

},

Tools = ordered() {

TextOnABox = TextPlus {

CtrlWZoom = false,

NameSet = true,

Inputs = {

Width = Input { Value = 1920, },

Height = Input { Value = 1080, },

["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },

LayoutType = Input { Value = 1, },

LayoutSize = Input { Value = 1.009, },

LayoutWidth = Input { Value = 0.9673259498263, },

LayoutHeight = Input { Value = 0.949, },

Font = Input { Value = "Open Sans", },

StyledText = Input { Value = "Width is set by first line\nand height by \nhowever many lines\n\n\n\n", },

Style = Input { Value = "Bold", },

ManualFontKerningPlacement = Input {

Value = StyledText {

Array = {

},

Value = ""

},

},

Alignment = Input { Value = 1, },

HorizontalJustification = Input { Value = 0, },

VerticalJustification = Input { Value = 0, },

},

ViewInfo = OperatorInfo { Pos = { 440, 115.5 } },

},

xf_Handle = Transform {

NameSet = true,

Inputs = {

Center = Input { Value = { 0, 1 }, },

Input = Input {

SourceOp = "Xf_offset",

Source = "Output",

},

},

ViewInfo = OperatorInfo { Pos = { 935, 181.5 } },

},

Background2 = Background {

Inputs = {

Width = Input { Value = 1920, },

Height = Input { Value = 1080, },

["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },

TopLeftAlpha = Input { Value = 0.5, },

EffectMask = Input {

SourceOp = "Transform1",

Source = "Output",

}

},

ViewInfo = OperatorInfo { Pos = { 605, 181.5 } },

},

Rectangle1 = RectangleMask {

Inputs = {

MaskWidth = Input { Value = 1920, },

MaskHeight = Input { Value = 1080, },

PixelAspect = Input { Value = { 1, 1 }, },

ClippingMode = Input { Value = FuID { "None" }, },

Width = Input { Value = 1, },

Height = Input { Value = 1, },

},

ViewInfo = OperatorInfo { Pos = { 385, 148.5 } },

},

BackgroundAlpha = Background {

NameSet = true,

Inputs = {

Width = Input { Value = 1920, },

Height = Input { Value = 1080, },

["Gamut.SLogVersion"] = Input { Value = FuID { "SLog2" }, },

TopLeftRed = Input { Value = 0.375, },

TopLeftGreen = Input { Value = 0.313, },

TopLeftBlue = Input { Value = 0.35, },

EffectMask = Input {

SourceOp = "Rectangle1",

Source = "Mask",

}

},

ViewInfo = OperatorInfo { Pos = { 385, 181.5 } },

},

Transform1 = Transform {

Inputs = {

Pivot = Input { Value = { 0, 1 }, },

UseSizeAndAspect = Input { Value = 0, },

XSize = Input {

SourceOp = "Expression1",

Source = "NumberResult",

},

YSize = Input {

SourceOp = "Expression2",

Source = "NumberResult",

},

Input = Input {

SourceOp = "BackgroundAlpha",

Source = "Output",

},

},

ViewInfo = OperatorInfo { Pos = { 495, 181.5 } },

},

Expression1 = Expression {

CtrlWZoom = false,

Inputs = {

n1 = Input {

SourceOp = "ProbeX",

Source = "Result",

},

NumberExpression = Input { Value = "n1\n", },

NumberControls = Input { Value = 1, },

NameforNumber1 = Input { Value = "Number SIZE X", },

},

},

ProbeX = Probe {

CtrlWZoom = false,

NameSet = true,

Inputs = {

ImageToProbe = Input {

SourceOp = "LumaKeyer1_1",

Source = "Output",

},

Channel = Input { Value = 3, },

Position = Input { Value = { 0.03, 0.96 }, },

ProbeRectangle = Input { Value = 1, },

Width = Input { Value = 0.94, },

Height = Input { Value = 0.013, },

},

},

Expression2 = Expression {

CtrlWZoom = false,

Inputs = {

n1 = Input {

SourceOp = "ProbeY",

Source = "Result",

},

NumberExpression = Input { Value = "n1*1.15", },

NumberControls = Input { Value = 1, },

NameforNumber1 = Input { Value = "Number SIZE Y", },

},

},

ProbeY = Probe {

CtrlWZoom = false,

NameSet = true,

Inputs = {

ImageToProbe = Input {

SourceOp = "LumaKeyer1_1",

Source = "Output",

},

Channel = Input { Value = 3, },

Position = Input { Value = { 0.02, 0.96 }, },

ProbeRectangle = Input { Value = 1, },

Width = Input { Value = 0.004, },

Height = Input { Value = 0.953, },

},

},

Merge2 = Merge {

Inputs = {

Background = Input {

SourceOp = "Background2",

Source = "Output",

},

Foreground = Input {

SourceOp = "TextOnABox",

Source = "Output",

},

PerformDepthMerge = Input { Value = 0, },

},

ViewInfo = OperatorInfo { Pos = { 715, 181.5 } },

},

Xf_offset = Transform {

NameSet = true,

Inputs = {

Center = Input { Value = { 1, 0 }, },

Input = Input {

SourceOp = "Merge2",

Source = "Output",

},

},

ViewInfo = OperatorInfo { Pos = { 825, 181.5 } },

},

LumaKeyer1_1 = LumaKeyer {

Inputs = {

Channel = Input { Value = 3, },

High = Input { Value = 0.021, },

Input = Input {

SourceOp = "Blur1_1",

Source = "Output",

},

},

ViewInfo = OperatorInfo { Pos = { 715, 115.5 } },

},

Blur1_1 = Blur {

Inputs = {

LockXY = Input { Value = 0, },

Input = Input {

SourceOp = "TextOnABox",

Source = "Output",

},

XBlurSize = Input { Value = 12, },

YBlurSize = Input { Value = 12, },

},

ViewInfo = OperatorInfo { Pos = { 605, 115.5 } },

UserControls = ordered() {

XBlurSize = {

INP_MaxAllowed = 1000000,

INP_Integer = false,

INPID_InputControl = "SliderControl",

IC_Steps = 101,

INP_MaxScale = 100,

INP_Default = 1,

INP_MinScale = 0,

INP_MinAllowed = 0,

LINKID_DataType = "Number",

ICS_ControlPage = "Controls",

LINKS_Name = "Tweak X"

},

YBlurSize = {

INP_MaxAllowed = 1000000,

INP_Integer = false,

INPID_InputControl = "SliderControl",

IC_Steps = 101,

INP_MaxScale = 100,

INP_Default = 1,

INP_MinScale = 0,

INP_MinAllowed = 0,

LINKID_DataType = "Number",

ICS_ControlPage = "Controls",

LINKS_Name = "Tweak Y"

}

}

}

},

}

},

ActiveTool = "TextonBoxTopLeft"

}

Recent Posts
Search By Tags
Follow Us
  • Twitter Classic

© 2015 by Jamie Dickinson. Proudly created with Wix.com