急问! 怎样把image中的图片缩小并保存?~ 不是只随着image控件改变而改变!而是改变原图片的真正尺寸大小!
最好能有完整的源、码!
感谢!!
感谢!!
感谢!!
感谢!!
感谢!!

解决方案 »

  1.   

    用PaintPicture可以缩小画到一个PictureBox里
    然后再SavePicture
      

  2.   

    用image可以吗?~
    可以具体点吗?~
    : )
    谢谢拉~
      

  3.   

    Image1.Stretch = True  '让图片缩放成Image1的大小
    Image1.Stretch = False '让Image1变成图片缩的大小,保持原图无缩放PictureBox1.PaintPicture Image1,x,y,w,h  '可用W、H 让图片变成任意你想要的大小
    SavePicture PictureBox1.Image,"c:\1.bmp" '保存上面大小的图片
      

  4.   

    写了个sub~可以参考下~Option ExplicitPrivate Sub Form_Load()
        Me.ScaleMode = 3
        
        With Picture1
            .Visible = False
            .ScaleMode = 3
            .AutoRedraw = True
            .BorderStyle = 0
        End With
        
        SavePic 50, 50, "c:\50.bmp"
        SavePic 100, 100, "c:\100.bmp"
    End SubPrivate Sub SavePic(Width As Long, Height As Long, FileName As String)
        With Picture1
            Set .Picture = Nothing
            .Width = Width
            .Height = Height
            .PaintPicture Image1.Picture, 0, 0, Width, Height, , , , , vbSrcCopy
            SavePicture .Image, FileName
        End With
    End Sub
      

  5.   

    Image1.Stretch = True  '让图片缩放成Image1的大小
    Image1.Stretch = False '让Image1变成图片缩的大小,保持原图无缩放PictureBox1.PaintPicture Image1,x,y,w,h  '可用W、H 让图片变成任意你想要的大小
    SavePicture PictureBox1.Image,"c:\1.bmp" '保存上面大小的图片
      

  6.   

    PictureBox1.PaintPicture Image1,x,y,w,h  (x,y是什么参数啊?1)
    谢谢啊~
      

  7.   

    object.PaintPicture picture, x1, y1, width1, height1, x2, y2, width2, height2, opcodepicture是要复制的图
    x1, y1, width1, height1是Paint之后的图像大小位置参数
    x2, y2, width2, height2是Paint之前的图像大小位置参数
    这里取不同的值就可以实现图像的缩放和翻转
    具体的说明在下面~MSDN
    ====================================================
    PaintPicture 方法
          用以在 Form, PictureBox 或 Printer 上绘制图形文件(.bmp、.wmf、.emf、.cur、.ico或 .dib)的内容。不支持命名参数。语法object.PaintPicture picture, x1, y1, width1, height1, x2, y2, width2, height2, opcodePaintPicture 方法的语法包含下列部分:部分 描述 
    object 可选的。一个对象表达式,其值为“应用于”列表中的一个对象。如果省略 object,带有焦点的 Form 对象缺省为 object。 
    Picture 必需的。要绘制到 object 上的图形源。Form 或 PictureBox 必须是 Picture 属性。 
    x1, y1 必需的。均为单精度值,指定在 object 上绘制 picture 的目标坐标(x-轴和y-轴)。object 的 ScaleMode 属性决定使用的度量单位。  
    Width1 可选的。单精度值,指示 picture 的目标宽度。object 的 ScaleMode 属性决定使用的度量单位。如果目标宽度比源宽度 (width2) 大或小,将适当地拉伸或压缩 picture。如果该参数省略,则使用源宽度。 
    Height1 可选的。 单精度值,指示 picture 的目标高度。object 的 ScaleMode 属性决定使用的度量单位。如果目标高度比源高度 (height2) 大或小,将适当地拉伸或压缩 picture。如果该参数省略,则使用源高度。 
    x2, y2 可选的。均为单精度值,指示 picture 内剪贴区的坐标(x-轴和y-轴)。object 的 ScaleMode 属性决定使用的度量单位。如果该参数省略,则缺省为 0。 
    Width2 可选的。单精度值,指示 picture 内剪贴区的源宽度。object 的 ScaleMode 属性决定使用的度量单位。如果该参数省略,则使用整个源宽度。 
    Height2 可选的。 单精度值,指示 picture 内剪贴区的源高度。object 的 ScaleMode 属性决定使用的度量单位。如果该参数省略,则使用整个源高度。 
    Opcode 可选的。是长型值或仅由位图使用的代码。它用来定义在将 pictur 绘制到 object 上时对 picture 执行的位操作(例如, vbMergeCopy 或 vbSrcAnd 操作符)。关于位操作符常数的完整列表,请参阅 Visual Basic Help 文件中的 RasterOp Constants 主题。 
    在使用opcode时有一些限制。例如,如果资源是图标或图元文件,则只能使用 vbSrcCopy,而不能使用其他的opcode;并且,与图案 (或 SDK 术语中的"画笔"),如 MERGECOPY、 PATCOPY、 PATPAINT 和 PATINVERT,相交互的opcode实际上是同目标的 FillStyle 属性交互。注意   Opcode 用于将按位操作传递到位图。当传递其他图象类型时将一个值给该参数会造成“无效过程调用或参数”错误。这是设计的原因。要避免这个错误,对于除位图外的图象,将 Opcode 参数置为空。