Hola,mira yo te decia asi,recien lo probe y imprime bien el contenido del picture,es asi:
primero pone un picturebox(picture1) y ponele cosas adentro,un label,un line,un boton...lo que quieras...despues pone otro picturebox(picture2) que es donde va a quedar almacenada la captura del picture1 y la vamos a imprimir desde este mismo..despues pone un boton que es el encargado de capturar la imagen del picture1,la va a guardar en el portapapeles,la va a recuperar del portapapeles,la va a pegar en el picture2 y la va a imprimir...
el codigo:
pone en un modulo bas todo el codigo del segundo link que te pase...y despues en tu formulario pone esto:
Código:
Private Sub Command1_Click()
Clipboard.Clear
Clipboard.SetData CaptureClient(Picture1)
Picture2.Picture = Clipboard.GetData
Printer.PaintPicture Picture2.Picture, Printer.Width / 4, Printer.Height / 4, Printer.Width / 2, Printer.Height / 2
Printer.EndDoc
End Sub
te tiene que funcionar,a mi me imprimio correctamente el contenido del picturebox,con lines,labels y botones dentro...con respecto al tamaño de la impresion la podes regular vos mismo despues..
saludos.