La Web del Programador: Comunidad de Programadores
 
    Pregunta:  31585 - ¿COMO PUEDO HACER PARA GRABAR UNA IMAGEN DE DOS PICTUREBOX?
Autor:  Werner David Farfan Aparicio
Tengo un problema con mi programa lo que quiero es
Por ejemplo:
Tengo 2 PictureBox, uno que contiene al otro, por supuesto el contenedor es mas grande, al copiar la imagen del picture grande se copia la misma y lo quiero es copiar las dos imagenes como una sola
por que el picture grande es como una plantilla de fondo y el picture pequeño es variable y lo que deseo es juntar ambas imagenes y copiarlas como una sola

Gracias

  Respuesta:  Josemari Etxagibel
Muy buenas,

si lo que quieres es unir dos pictures en uno yo tengo una función que podrías utilizar (modificándola). Mi función sirve para poner un marco a una imagen (bordes blancos alrededor con una línea de contorno). La función es la siguiente :

Function Encuadrar(PicFuen As PictureBox, ByRef PicDest As PictureBox, nBorde As Integer, nGrosor As Integer, nCorrector As Long)
Dim X1, Y1, Y2, X2, nEscala

PicDest.Picture = LoadPicture
PicDest.Cls
PicDest.Refresh
PicDest.Width = PicFuen.Width + nBorde * 2 * 56.7 * nCorrector
PicDest.Height = PicFuen.Height + nBorde * 2 * 56.7 * nCorrector
If nBorde > 0 Then
PicDest.PaintPicture PicFuen.Picture, nBorde * 56.7 * nCorrector, nBorde * 56.7 * nCorrector, PicFuen.Width, PicFuen.Height
Else
Set PicDest.Picture = PicFuen.Image
End If
If nGrosor > 0 Then
nEscala = PicDest.ScaleMode
PicDest.ScaleMode = vbPixels
PicDest.DrawWidth = nGrosor

X1 = nGrosor
Y1 = nGrosor
X2 = PicDest.ScaleWidth - nGrosor
Y2 = PicDest.ScaleHeight - nGrosor

PicDest.Line (X1, Y1)-(X2, Y2), , B
PicDest.ScaleMode = nEscala
End If
PicDest.Refresh
End Function

Luego te queda guardar la PicDest (salvarlo).

Espero que te sirva de ayuda.