local module = require(script.StrokeScript) local gui = game.Players.LocalPlayer.PlayerGui:WaitForChild("ScreenGui"):WaitForChild("ImageLabel") local comp = game.Players.LocalPlayer.PlayerGui:WaitForChild("ScreenGui"):WaitForChild("CompositeImageLabel") --Build a separate stroke image (white) and display it behind the src image local stroke = 16 local strokeImage, origSize, finalSize = module:MakeStrokeImageFromAssetIdAsync(gui.Image, stroke) if (strokeImage) then local strokeImg = gui:Clone() strokeImg.Parent = gui.Parent strokeImg.ImageContent = Content.fromObject(strokeImage) strokeImg.ImageColor3 = Color3.new(1,1,1) local ratio = (finalSize / origSize) --Offset version strokeImg.Size = UDim2.new(0,strokeImg.Size.X.Offset * ratio.X,0, strokeImg.Size.Y.Offset * ratio.Y) --Scale version --strokeImg.Size = UDim2.new(strokeImg.Size.X.Scale * ratio.X,strokeImg.Size.Y.Scale * ratio.Y, 0) gui.Parent = strokeImg gui.AnchorPoint = Vector2.new(0.5,0.5) gui.Position = UDim2.new(0.5,0,0.5,0) end --Composite an image and stroke together local compositeImage = module:AddStrokeToImageFromAssetIdAsync(comp.Image, stroke, Color3.new(0,0,0), 1) if (compositeImage) then comp.ImageContent = Content.fromObject(compositeImage) end