내 시나리오에서 나는 다른 위치에 두 tiff 이미지C#을 사용하여 두 tiff 이미지 병합 .net
c:/temp/img1.tiff
및 x:/temp/img2.tiff
말한다.
이 이미지를 단일 이미지로 병합해야합니다.
은 몇 가지 아이디어/코드를 제안합니다.
감사합니다.Dev
내 시나리오에서 나는 다른 위치에 두 tiff 이미지C#을 사용하여 두 tiff 이미지 병합 .net
c:/temp/img1.tiff
및 x:/temp/img2.tiff
말한다.
이 이미지를 단일 이미지로 병합해야합니다.
은 몇 가지 아이디어/코드를 제안합니다.
감사합니다.Dev
이미지를 "병합"하기위한 몇 가지 방법이 될 수 있습니다. 여기에 의사의 부부의 :
var NewImage = new Image();
ForEach (curPixel in img1)
{
var newColor = new Color();
newColor.RGB = (Pixel.Color.RGB + img2.PixelAt(curPixel.Location).Color.RGB)/2
NewImage.PixelAt(curPixel.Location) = new Pixel(newColor);
}
///OR
int objCounter = 0;
ForEach (curPixel in Image)
{
if(objCounter % 2 == 0){
NewImage.PixelAt(curPixel.Location) = img1.PixelAt(curPixel.Location);
} else {
NewImage.PixelAt(curPixel.Location) = img2.PixelAt(curPixel.Location);
}
}
그냥 프레임 워크 클래스를 사용하여이 작업을 수행하려면, 당신은 기본적으로이 작업을 수행 :
Image.FromFile
을 사용하십시오.Encoder.SaveFlag
와 첫 페이지 = EncoderValue.MultiFrame
Bitmap.SaveAdd
를 사용 Encoder.SaveFlag
= EncoderValue.FrameDimensionPage
의 인코더 매개 변수를 사용하여 동일한 파일에 대한 이후의 각 페이지() :
ImageCodecInfo tiff = null;
foreach (ImageCodecInfo codec in ImageCodecInfo.GetImageEncoders())
{
if (codec.MimeType == "image/tiff")
{
tiff = codec;
break;
}
}
Encoder encoder = Encoder.SaveFlag;
EncoderParameters parameters = new EncoderParamters(1);
parameters.Param[0] = new EncoderParameter(encoder, (long)EncoderValue.MultiFrame);
bitmap1.Save(newFileName, tiff, parameters);
parameters.Param[0] = new EncoderParameter(encoder, (long)EncoderValue.FrameDimensionPage);
bitmap2.SaveAdd(newFileName, tiff, paramters);
parameters.Param[0] = new EncoderParameter(encoder, (long)EncoderValue.Flush);
bitmap2.SaveAdd(parameters);
나는 또한 내 회사가 오래 전에 툴킷을 구입하기로 결정했다고 덧붙였다. 이 경우에는 관리되지 않는 GDI를 사용하는 LEADTools를 사용합니다. GDI +는 프레임 워크에서 가장 빠르게 수행되는 부분이 아니므로 코드가 지루합니다. 귀하의 예산 제약에 따라, 당신은 그것에 대해 조사하고 싶을 것입니다. –
'Image'클래스에는 문자열을 사용하는 'SaveAdd'메서드가 없습니다. –
병합 방법은 무엇입니까? 수평/수직으로 합류 하는가? –
나는 하나씩 (수직으로) 합류해야한다. – Dev
http://stackoverflow.com/questions/398388/convert-bitmaps-to-one-multipage-tiff-image-in-net-2-0 –