Adding images to a HUD?

How would you add an image to a hud?
For example lets say we want to create a rounded box with some text and an image inside it supposedly a logo or whatever ?
Do i need to add the vtf file to materials then use resource.addfile(“picturename.vtf”)
but how do I add it in (code)

Send the file to the client, then use the surface library to draw the texture

Some client side file:

--the materials folder is the root directory 
local hpcross = surface.GetTextureID ("halflife/hp_cross") --this is a .vtf file

--in a paint hook
surface.SetTexture( hpcross )
surface.SetDrawColor( HUD_Color )
surface.DrawTexturedRect (hudPosX,hudPosY,iconSize,iconSize)

You can also use Materials:

Ignore net, etc; imagine HUDPaint is just created by itself…