خودم ردیفش کردم
دوستان میتونید از این سورس برای کنار هم چیدن عکس هاتون استفاده کنید
using System;using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Collections.Generic;
namespace TestBMSVahed
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
DirectoryInfo directory = new DirectoryInfo(@"C:\Users\Public\pic");
if (directory != null)
{
FileInfo[] files = directory.GetFiles();
CombineImages(files);
}
//pictureBox1.Image = Image.FromFile(Application.StartupPath + "\\1.jpg");
}
private void CombineImages(FileInfo[] files)
{
//try
//{
//change the location to store the final image.
string finalImage = @"C:\Users\Public\pic\Create.png";
List<int> imageHeights = new List<int>();
int nIndex = 0;
int width = 0;
foreach (FileInfo file in files)
{
Image img = Image.FromFile(file.FullName);
imageHeights.Add(img.Height);
width += img.Width;
img.Dispose();
}
imageHeights.Sort();
int height = imageHeights[imageHeights.Count - 1];
Bitmap img3 = new Bitmap(width, height);
Graphics g = Graphics.FromImage(img3);
g.Clear(SystemColors.AppWorkspace);
foreach (FileInfo file in files)
{
Image img = Image.FromFile(file.FullName);
if (nIndex == 0)
{
g.DrawImage(img, new Point(0, 0));
nIndex++;
width = img.Width;
}
else
{
g.DrawImage(img, new Point(width, 0));
width += img.Width;
}
img.Dispose();
}
g.Dispose();
img3.Save(finalImage, System.Drawing.Imaging.ImageFormat.Jpeg);
img3.Dispose();
pictureBox1.Image = Image.FromFile(finalImage);
//}
//catch (Exception e)
//{
// MessageBox.Show(e.ToString());
//}
}
}
}