|
|
|
JPEGImage
|
|||
|---|---|---|---|
|
#18+
Всем привет ! Проблема такова. BCB 5, класс TJPEGImage. При попытке записи в файл выдается JPEG error #34. Поискал в инете, люди сталкивались, но решения не нашел. Видел рекомендации не использовать этот класс для работы с большими картинками. Так же рекомендуют использовать сторонние библиотеки, например, от интела, но она платная. Нашел бесплатную, от puntoexe, но скомпилить что-нибудь даже самое простенькое не удается, ей VC++ надо :)). Править библиотеку - легче удавиться. Кто-нибудь еще сталкивался с задачами записи JPG-картинок ? Какие библиотеки есть для бильдера (дельфи) ? PS: если ничего найти не удастся, придется самому писать , ну или глубоко ковырять исходники TJPEGImage ..... Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2005, 09:23 |
|
||
|
JPEGImage
|
|||
|---|---|---|---|
|
#18+
V Delphi mne thasto prihodilosj dobovljatj modulj 'jpeg' c nim vsjo rabotalo normaljno. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2005, 11:36 |
|
||
|
JPEGImage
|
|||
|---|---|---|---|
|
#18+
Код, которым работаете с JPEG, не покажете? Обычно причина все-таки в нем, а не в классе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2005, 12:57 |
|
||
|
JPEGImage
|
|||
|---|---|---|---|
|
#18+
Код показать могу, но проблема не в коде, точно, я уже написал, точно такую же проблему встречали люди и раньше. Поэкспериментировав, выяснил, точнее, с большой долей вероятности предположил, что борландовский jpeg не может сохранить файл больше мегабайта. Код: plaintext 1. 2. 3. 4. B_Load - это Graphics::TBitmap *B_Load; кстати, можно и без JPG_Save->Compress(); потому как, получив вышеназванную ошибку, отладчиком исходил все, выяснил, что Compress вызывается в SaveToFile, если не был вызван ранее. PS: в дельфийном форуме проскочила ссылка на FreeImage библиотеку, скачал, щас разбираюсь, сижу Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2005, 13:29 |
|
||
|
JPEGImage
|
|||
|---|---|---|---|
|
#18+
Ошибка вылетает в методе Compress Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2005, 13:34 |
|
||
|
JPEGImage
|
|||
|---|---|---|---|
|
#18+
Вот это откатало без проблем (Image1 грузился с файла CIMG.BMP в 14500кб, сохранялся в файл 123.JPG 2553кб. Щас в билдере попробую. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2005, 13:46 |
|
||
|
JPEGImage
|
|||
|---|---|---|---|
|
#18+
... а это действительно выкинуло JPEG Error #36 (Билдер 5) Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2005, 13:59 |
|
||
|
JPEGImage
|
|||
|---|---|---|---|
|
#18+
Кстати, на delphikingdom видел вопрос/ответ именно на тему ошибки #36, там было написано, что такая проблема есть, когда сохраняемая картинка от 1 до 2 Мб, попробуй сохранить так, чтобы было меньше 2 Мб Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2005, 13:59 |
|
||
|
JPEGImage
|
|||
|---|---|---|---|
|
#18+
Похоже надо сказать большое спасибо борману, я попробовал искусственно увеличить картинку, в 2 раза по обоим измерениям, в итоге файл сохранился без ошибок, его размер 4.7 Мб Вобщем, проблема есть от 1 до 2 Мб Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2005, 14:04 |
|
||
|
JPEGImage
|
|||
|---|---|---|---|
|
#18+
М.б.. лажу скажу, но CompressionQuality и без вызова Compress отрабатывает сжатие, но, насколько я понимаю. только при сохранении. Метод Compress применяется для сжатия JPEGa, который обрабатывается в памяти. Повторюсь, уверенности у меня нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2005, 14:13 |
|
||
|
JPEGImage
|
|||
|---|---|---|---|
|
#18+
Вобщем, перефразирую вопрос: как избежать ошибки 36 при сохранении jpeg-картинки в файл размером от 1 до 2 Мб ? Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2005, 14:15 |
|
||
|
JPEGImage
|
|||
|---|---|---|---|
|
#18+
1) В Дельфи7 эспериментировал: - 14мб bmp -> 0.1, 0.5, 1.2, 1.3, 1.8, 2.5mb jpg - 1.8mb jpg -> 1.8, 1.5, 1.3mb jpg Проблем нет. 2) В Билдере5 проверил - действительно, метод Compress вызывает ошибку при размере от 1 до 2мб. Отсюда варианты: а) а зачем, собственно, использовать Compress? Он все равно корректно отрабатывается при сохранении в файл после задания CompressionQuality. Если нужно потом загрузить именно сжатую и с потерей качества картинку - то LoadFromFile. а) работать через Дельфи-библиотеку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2005, 14:28 |
|
||
|
JPEGImage
|
|||
|---|---|---|---|
|
#18+
rrrrrrrrrr Код: plaintext 1. 2. 3. 4. Если CompressionQuality поставить 96%, то файл получанеся примерно 900к - сохраняет нормально. Вобщем, исходников TJPEGImage я не нашел, придется видимо ковырять FreeImage Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2005, 14:48 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=33286190&tid=2032736]: |
0ms |
get settings: |
11ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
60ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
49ms |
get tp. blocked users: |
1ms |
| others: | 247ms |
| total: | 403ms |

| 0 / 0 |
