Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
проблема с BMP
|
|||
|---|---|---|---|
|
#18+
есть хендлер, который выполняет некоторые действия с bmp файлом и потом пишет его в исходящий поток. делается это след образом: System.Drawing.Imaging.ImageFormat thisFormat = bmpTmp.RawFormat; System.IO.MemoryStream MS = new System.IO.MemoryStream(); if (thisFormat.Equals(System.Drawing.Imaging.ImageFormat.Gif)) { Response.ContentType = "image/gif"; } else if (thisFormat.Equals(System.Drawing.Imaging.ImageFormat.Png)) { Response.ContentType = "image/png"; } else if (thisFormat.Equals(System.Drawing.Imaging.ImageFormat.Bmp)) { Response.ContentType = "image/bmp"; } else { thisFormat = System.Drawing.Imaging.ImageFormat.Jpeg; Response.ContentType = "image/jpeg"; } bmpTmp.Save(MS, thisFormat);//png codec can't save to un-seekable array (see details in KnowledgeBase) byte[] buffer = MS.ToArray(); Response.OutputStream.Write(buffer, 0, buffer.Length); проблема в том, что картинка получается поганого качества: пробую перед писанием в выходной поток сохранить в файл — все отличного качества: и еще и размер ~ 12 раз меньше. Что я делаю не так?... << RSDN@Home 1.1.4 stable SR1 rev. 568>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2006, 14:59 |
|
||
|
проблема с BMP
|
|||
|---|---|---|---|
|
#18+
InterpolationMode.HighQualityBicubic; CompositingQuality.HighQuality; SmoothingMode.HighQuality; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2006, 16:21 |
|
||
|
проблема с BMP
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, <Аноним>, Вы писали: А>InterpolationMode.HighQualityBicubic; А>CompositingQuality.HighQuality; А>SmoothingMode.HighQuality; не помогло. Говорю же — сохраненный битмап хороший, плохой который в output пишется. Response.ContentType = "image/bmp"; bmpTmp.Save(MS, thisFormat);//png codec can't save to un-seekable array (see details in KnowledgeBase) byte[] buffer = MS.ToArray(); Response.OutputStream.Write(buffer, 0, buffer.Length);... << RSDN@Home 1.1.4 stable SR1 rev. 568>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2006, 16:41 |
|
||
|
проблема с BMP
|
|||
|---|---|---|---|
|
#18+
Poprobui tak //Setting High Quality Transformation newGraphics.CompositingQuality = System.Drawing.Drawing2D.CompositingQuality.HighQuality; newGraphics.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic; newGraphics.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality; newGraphics.PixelOffsetMode = System.Drawing.Drawing2D.PixelOffsetMode.HighQuality; RspCont ="image/bmp"; EncoderParameters ep = new EncoderParameters(1); ImageCodecInfo icBMP = getCodecInfo(RspCont); ep.Param[0] = new EncoderParameter(Encoder.Quality, (long) 80); imgOutput.Save(Response.OutputStream,icBMP,ep); //send the resized image to the viewer newGraphics.Dispose(); g.Dispose(); imgOutput.Dispose(); private static ImageCodecInfo getCodecInfo(string mt) ( ImageCodecInfo[] ici = ImageCodecInfo.GetImageEncoders(); int idx = 0; for (int ii = 0; ii < ici.Length; ii++) { if (ici[ii].MimeType == mt) { idx = ii; break; } } return ici[idx]; } ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2006, 15:14 |
|
||
|
проблема с BMP
|
|||
|---|---|---|---|
|
#18+
получаю A generic error occurred in GDI+. Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. Exception Details: System.Runtime.InteropServices.ExternalException: A generic error occurred in GDI+. на строчке imgOutput.Save(Response.OutputStream, icBMP, ep); :xz:... << RSDN@Home 1.1.4 stable SR1 rev. 568>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2006, 13:58 |
|
||
|
проблема с BMP
|
|||
|---|---|---|---|
|
#18+
OK Ti prav est problema no tolko s BMP Zameni imgOutput.Save(Response.OutputStream, icBMP, ep); na using(MemoryStream stream = new MemoryStream()) { imgOutput.Save(stream,icJPG,ep); stream.WriteTo(Response.OutputStream); } ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2006, 12:40 |
|
||
|
проблема с BMP
|
|||
|---|---|---|---|
|
#18+
Izvini nebolshaia netochnost Tak: using(MemoryStream stream = new MemoryStream()) { imgOutput.Save(stream,icBMP,ep); stream.WriteTo(Response.OutputStream); } ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2006, 12:41 |
|
||
|
проблема с BMP
|
|||
|---|---|---|---|
|
#18+
благодарю, то, что нужно :up:... << RSDN@Home 1.1.4 stable SR1 rev. 568>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 03:26 |
|
||
|
проблема с BMP
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, jenia, Вы писали: J>Izvini nebolshaia netochnost J>Tak: J> using(MemoryStream stream = new MemoryStream()) J> { J> imgOutput.Save(stream,icBMP,ep); J> stream.WriteTo(Response.OutputStream); J> } а уменьшить размер файла чтобы он не 500 к занимал можно? ;)... << RSDN@Home 1.1.4 stable SR1 rev. 568>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 11:58 |
|
||
|
проблема с BMP
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, parapet, Вы писали: P>а уменьшить размер файла чтобы он не 500 к занимал можно? ;) Можно, но нужно отказаться от формата BMP. 1.2.0 alpha rev. 655 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 16:39 |
|
||
|
проблема с BMP
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, Sinclair, Вы писали: S>Здравствуйте, parapet, Вы писали: P>>а уменьшить размер файла чтобы он не 500 к занимал можно? ;) S>Можно, но нужно отказаться от формата BMP. просто тот же файл, сохраненный на диск, занимает в 20 раз меньше :) А отказаться от BMP и чтобы было высокое качество — что юзать можно? ;)... << RSDN@Home 1.1.4 stable SR1 rev. 568>> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 17:44 |
|
||
|
проблема с BMP
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, parapet, Вы писали: P>А отказаться от BMP и чтобы было высокое качество — что юзать можно? ;) PNG... << RSDN@Home 1.2.0 alpha rev. 655 :: LCD Soundsystem — Disco Infiltrator >> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.11.2006, 19:04 |
|
||
|
|

start [/forum/topic.php?fid=18&msg=34161849&tid=1387174]: |
0ms |
get settings: |
6ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
37ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
33ms |
get tp. blocked users: |
1ms |
| others: | 221ms |
| total: | 322ms |

| 0 / 0 |
