Я написал фрагмент кода, чтобы открыть файл изображения (JPEG), добавив в него текст и сохранил его в другом файле.Сохранение файла изображения после добавления текста
Это выглядит следующим образом:
Image sourceImage = Image.FromFile(fileName);
Graphics grp = Graphics.FromImage(sourceImage);
grp.DrawString(...);
Bitmap bmp = new Bitmap(sourceImage);
bmp.Save(newFileName, ImageFormat.Jpeg);
Это прекрасно работает, и файл был успешно сохранен с текстом добавленным к нему.
Однако исходный файл составляет около 1,5 МБ, а новый файл составляет около 480 КБ. Когда я просматриваю детали каждого файла, я вижу, что размеры аналогичны, но исходный файл имеет разрешение 180 точек на дюйм, а новый - 96. Исходное изображение также имеет представление цвета (sRGB) и сжатые бит/пиксель (4), в то время как новое изображение не содержит этих деталей.
Может ли это быть причиной различий в размере файла?
Может ли кто-нибудь подумать о том, как я могу сохранить новый файл с точным размером, а не с более компактным файлом?
Большое спасибо,
Elad
Я не думаю, что исходное изображение является файлом JPEG. Вы можете попробовать открыть его с помощью блокнота и посмотреть, есть ли строка JPEG в самом начале всего текстового содержимого. Я думаю, это BMP. –