Подтвердить что ты не робот

Конвертировать tiff в формат jpg

У меня есть изображение tiff с двумя страницами. когда я конвертирую файл в формат jpg, я потерял две страницы. Есть ли способ поместить два изображения в файл tiff в один файл jpg. Из-за слишком больших файлов TIFI я должен уменьшить их размеры.Есть ли какой-либо способ уменьшить размер файлов tiff программно? Это также может быть решением для моей проблемы.

4b9b3361

Ответ 1

Поскольку TIFF может содержать несколько фреймов, но JPG не может, вам нужно преобразовать каждый отдельный фрейм в JPG.

Взято из Образцы окна Windows Dev:

public static string[] ConvertTiffToJpeg(string fileName) 
{ 
        using (Image imageFile = Image.FromFile(fileName)) 
        { 
            FrameDimension frameDimensions = new FrameDimension( 
                imageFile.FrameDimensionsList[0]); 

            // Gets the number of pages from the tiff image (if multipage) 
            int frameNum = imageFile.GetFrameCount(frameDimensions); 
            string[] jpegPaths = new string[frameNum]; 

            for (int frame = 0; frame < frameNum; frame++) 
            { 
                // Selects one frame at a time and save as jpeg. 
                imageFile.SelectActiveFrame(frameDimensions, frame); 
                using (Bitmap bmp = new Bitmap(imageFile)) 
                { 
                    jpegPaths[frame] = String.Format("{0}\\{1}{2}.jpg",  
                        Path.GetDirectoryName(fileName), 
                        Path.GetFileNameWithoutExtension(fileName),  
                        frame); 
                    bmp.Save(jpegPaths[frame], ImageFormat.Jpeg); 
                } 
            } 

            return jpegPaths; 
        } 
} 

Ответ 2

using System.Drawing;
using System.Drawing.Imaging;

Bitmap bm=Bitmap.FromFile("photo.tif");
bm.Save("photo.jpg",ImageFormat.Jpeg);

Ответ 3

Мы столкнулись с некоторыми проблемами при преобразовании файлов TIF в JPEG, поскольку формат TIF поддерживает некоторые типы сжатий, которые не поддерживаются в бесплатных наборах инструментов. Я искал в Интернете и пытался использовать некоторые коммерческие инструменты, но большинство из них трудно реализовать со многими ограничениями. Инструментарий, который привлек мое внимание, это руководство, потому что оно поддерживает загрузку и сохранение многих форматов файлов (включая изображения TIF с различными сжатиями). Мы использовали этот инструментарий для преобразования наших изображений в формат JPEG. Дополнительную информацию вы можете найти на следующей странице: http://support.leadtools.com/CS/forums/8925/ShowPost.aspx

Обратите внимание, что вы можете конвертировать любой код VB.Net в С# с помощью этого бесплатного конвертера кода: http://www.developerfusion.com/tools/convert/vb-to-csharp/