powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Graphics в WebLibrary
2 сообщений из 2, страница 1 из 1
Graphics в WebLibrary
    #33999344
Аноним
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
для формирования картинки которая потом отображается в ImageButton использую
Graphics с помощью которого рисую Bitmap через Handler передаётся в ImageButton.

Bitmap.Save() сохраняет картинку такого же качества что и отображается в ImageButton
(я думал проблема браузера).

Качество получаемой картинки не очень хорошее — грубые линии апроксимация цветов 256-цветной палитрой... как заставить отображать нормальный полноцветный битмап?

Antialiasing не помогает.
...
Рейтинг: 0 / 0
Graphics в WebLibrary
    #33999505
kpumuk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, <Аноним>, Вы писали:

А>для формирования картинки которая потом отображается в ImageButton использую
А>Graphics с помощью которого рисую Bitmap через Handler передаётся в ImageButton.

А>Bitmap.Save() сохраняет картинку такого же качества что и отображается в ImageButton
А>(я думал проблема браузера).

А>Качество получаемой картинки не очень хорошее — грубые линии апроксимация цветов 256-цветной палитрой... как заставить отображать нормальный полноцветный битмап?

А>Antialiasing не помогает.

Для начала, если ты сохраняешь в JPEG, то цветов там 256, не больше.
Если JPEG или PNG — проверь, что ты делаешь примерно так:

using (Bitmap targetImage = new Bitmap(targetWidth, targetHeight, PixelFormat.Format24bppRgb))
{
    // set transform parameters 
    using (Graphics g = Graphics.FromImage(targetImage))
    {
        g.CompositingQuality = CompositingQuality.HighQuality;
        g.SmoothingMode = SmoothingMode.HighQuality;
        g.InterpolationMode = InterpolationMode.HighQualityBicubic;
        // Some processing
    }
    // save target image as JPEG with given quality
    SaveJpegImage(targetImage, targetImagePath, 90);
}

/// <summary>
/// Save JPEG file with given quality.
/// </summary>
/// <param name="image">Source image.</param>
/// <param name="targetImagePath">Target image file path.</param>
/// <param name="quality">Quality in percent.</param>
public static void SaveJpegImage(Image image, string targetImagePath, long quality)
{
    Encoder qualityEncoder = Encoder.Quality;
    EncoderParameter qualityParameter = new EncoderParameter(qualityEncoder, quality);
    // Add the quality parameter to the list
    EncoderParameters codecParams = new EncoderParameters(1);
    codecParams.Param[0] = qualityParameter;
    image.Save(targetImagePath, GetEncoderInfo(ImageFormat.Jpeg), codecParams);
}... << RSDN@Home 1.2.0 alpha rev. 655>>
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Graphics в WebLibrary
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]