扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
很简单的方法,貌似没有。这个需要自己写很多代码:
网站建设哪家好,找成都创新互联!专注于网页设计、网站建设、微信开发、小程序开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了昔阳免费建站欢迎大家使用!
用一个ListView控件。
判断滚动条当前所显示的图片集合,获取它们的物理路径。
用Bitmap.FromImage方法把这些图片读出来,
然后获取缩略图,
把缩略图用Graphics.DrawImage()绘制出来。
我可以提供Bitmap如何获取缩略图的方法:
''' summary必须创建一个委托并将对此委托的引用作为获取缩略图 callback 参数传递,但不使用此委托。/summary
Public Function ThumbnailCallback() As Boolean
Return False
End Function
''' summary返回Image,表示图像指定 宽 和 高 的缩略图。/summary
Public Function 获取缩略图(位图 As Bitmap, 宽 As Integer, 高 As Integer) As Image
Dim myCallback As New Image.GetThumbnailImageAbort(ThumbnailCallback)
Return 位图.GetThumbnailImage(宽, 高, myCallback, IntPtr.Zero)
End Function
新建一个Winform,拖两个图片框。图片框1在设计器中选择一个图片(尺寸在图片框容纳为佳)。如下代码测试通过:
private void button1_Click(object sender, EventArgs e)
{
Image img1 = this.pictureBox1.Image;
Image img2 = CropToCircle(img1);
this.pictureBox2.Image = img2;
}
public Image CropToCircle(Image img1)
{
Image img2 = new Bitmap(img1.Width, img1.Height,
img1.PixelFormat);
Graphics g = Graphics.FromImage(img2);
using (Brush br =
new SolidBrush(SystemColors.Control))//背景色
{
g.FillRectangle(br, 0, 0,
img2.Width, img2.Height);
}
GraphicsPath path = new GraphicsPath();
path.AddEllipse(0, 0, img2.Width, img2.Height);
g.SetClip(path);
g.DrawImage(img1, 0, 0);
return img2;
}
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
'建立新的系统进程
Dim process As New System.Diagnostics.Process()
If RadioButton1.Checked Then
'设置文件名,此处为图片的真实路径+文件名
process.StartInfo.FileName = "c:\a.bmp"
'设置进程运行参数
process.StartInfo.Arguments = "rundll32.exe shimgvw.dll"
Else
process.StartInfo.FileName = "mspaint.exe"
process.StartInfo.Arguments = "c:\a.bmp"
End If
'此项为是否使用Shell执行程序,因系统默认为true,此项也可不设,但若设置必须为true
'process.StartInfo.UseShellExecute = True
'此处可以更改进程所打开窗体的显示样式,可以不设
'process.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden
process.Start()
process.Close()
End Sub
用一个全局变量保存这个1.jpg,如变量a,你按按钮2时,可以简单的在a中插入一个"A",如a.SubString(0, a.Length-4) "A" a.SubString(a.Length-4),这样就能把例如"C:/Images/1.jpg"变成"C:/Images/1A.jpg"
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流