|
Уменьшение размера картинок(фото товаров), уже загруженных в базу 1с | ☑ | ||
---|---|---|---|---|
0
Ar-Bus
15.05.13
✎
16:30
|
Доброго времени суток, уважаемые спецы! Предлагается если не предложить готовое решение, то хотя бы поразмышлять над такой проблемой:
конфигурация Розница, ред.2. Пользователь по незнанию или неопытности сделал значительное количество фоток товаров и, не проконсультировавшись со специалистами, загрузил эти фотки в базу 1с. В результате база выросла с 400МБ до 4,8ГБ!!! Сразу скажу, документооборот довольно скромный, т.е. размер базы зависит исключительно от кол-ва картинок. Размер каждой картинки достигает 3-4МБ. Теперь вопрос: необходима готовая программа или обработка для того, чтобы сжать эти фото внутри базы. Или обработка, которая переберет фото каждого элемента номенклатуры и сожмет его до приемлемых размеров (исходный размер -4мб, получаемый размер - около 350КБ.) Сталкивался кто-нибудь с такой задачей? Какие можете предложить способы решения данной проблемы? |
|||
1
mikecool
15.05.13
✎
16:32
|
выгрузить картинки в папку
найти прогу для ресайза обработать загрузить |
|||
2
Ranger_83
15.05.13
✎
16:32
|
FastStone
|
|||
3
samozvanec
15.05.13
✎
16:33
|
выгрузи, запомни имена, обработай, загрузи обратно
|
|||
4
Fish
15.05.13
✎
16:34
|
(0) Навскидку: ищешь прогу, которая умеет сжимать картинки из командной строки, а дальше всё просто: выгрузил, сжал, загрузил.
|
|||
5
zladenuw
15.05.13
✎
16:34
|
так у картинки же есть
Картинка (Picture) Преобразовать (Convert) |
|||
6
zladenuw
15.05.13
✎
16:34
|
||||
7
samozvanec
15.05.13
✎
16:35
|
(5) там скорее всего ДД у него
|
|||
8
Fish
15.05.13
✎
16:36
|
(5) И толку? Преобразование формата - это не изменение размера.
|
|||
9
Ar-Bus
15.05.13
✎
16:41
|
картинки загружены в формате jpg
|
|||
10
Ar-Bus
15.05.13
✎
16:46
|
ну я понял так: перебираю номенклатуру, выгружаю существующие картинки в файлы, в качестве имен файлов использую код номенклатуры. Затем выгруженные файлы сжимаю и произвожу загрузку сжатых файлов в номенклатуру, используя коды номенклатуры, записанные в именах файлов
|
|||
11
zladenuw
15.05.13
✎
16:47
|
(8) ну не знаю у меня при изменение формата изменила его размер. был 154 кб, стал 100 кб
|
|||
12
zladenuw
15.05.13
✎
16:48
|
(10) зачем выгружать еще и в файл. прочитал. а потом сжимай и записывай обратно. выгружать ненадо
|
|||
13
Ar-Bus
15.05.13
✎
16:49
|
(12) а как программно сжать картинку? Знаешь? Я вот не знаю. Поэтому сначала хочу выгрузить в файлы, затем сжать полученные фото спец.прогой, а уж затем загрузить обратно
|
|||
14
Fish
15.05.13
✎
16:52
|
(11) С какого на какой формат менял? Естественно, если ты BMP преобразуешь в JPG, то размер уменьшится. Но у ТС и так уже JPG - ему надо менять разрешение картинки, а не формат.
|
|||
15
zladenuw
15.05.13
✎
16:52
|
||||
16
zladenuw
15.05.13
✎
16:53
|
(14) я из jpg в png
|
|||
17
Утконос
15.05.13
✎
16:53
|
делов на 15 минут
выгружаешь все картинки в нужную папку сжимаешь базы проверяешь размер заходишь в папку с картнками открываешь с помощью Майкрософт Оффисе Пиктуре показать все картинки изменить картнику изменить размер -указываешь размер сохранить загружаешь в базу |
|||
18
zladenuw
15.05.13
✎
16:54
|
(13)
МассивФайловСКартинками = НайтиФайлы("c:\Картинки из моей базы\", "*.JPEG", ЛОЖЬ); Для Каждого ФайлКартинки Из МассивФайловСКартинками Цикл СтрокаGUID = Прав(ФайлКартинки.ИмяБерРасширения, 36); НовыйGUID = Новый УникальныйИдентификатор(СтрокаGUID); СпрСсылка = Справочники.ХранилищеДополнительнойИнформации.ПолучитьСсылку(НовыйGUID); СпрОбъект = СпрСсылка.ПолучитьОбъект(); ВыбранноеФото = Новый Картинка(ФайлКартинки.ПолноеИмя, Ложь); СпрОбъект.Хранилище = Новый ХранилищеЗначения(ВыбранноеФото, Новый СжатиеДанных()); СпрОбъект.Записать(); КонецЦикла; Хотя можно и без сохранения. копируешь картинку. у тебя уже пример есть и сохраняешь ее уже сжатую |
|||
19
Ar-Bus
15.05.13
✎
17:35
|
(13) темная голова, одним словом! Подскажите, как записать картинку в файл? У меня есть реквизит номенклатуры "ФайлКартинки", тип-СправочникСсылка.НоменклатураПрисоединенныеФайлы
Как правильно использовать данный метод Записать(): ВыбраннаяКартинка.Записать("c:\temp\"+ИмяКартинки.Имя+"."+Строка(ВыбраннаяКартинка.Формат())); Если файлКартинки получаю как объект, то ругается, что слишком много фактических параметров на метод Записать() |
|||
20
Ar-Bus
15.05.13
✎
17:45
|
ВыбраннаяКартинка.Записать("c:\temp\"+ИмяКартинки.Имя+"."+Строка(ВыбраннаяКартинка.Формат()));
Какой должен быть тип у ВыбраннаяКартинка??? |
|||
21
zladenuw
15.05.13
✎
17:52
|
Картинка = Новый Картинка("C:\1.jpg");
Картинка2 = Картинка.Преобразовать(ФорматКартинки.PNG); Картинка2.Записать("C:\2.PNG"); |
|||
22
5 Элемент
15.05.13
✎
17:56
|
||||
23
Злопчинский
16.05.13
✎
03:15
|
хм.. нахрена в базе картиник размером в 350Кб..? Только если печатать в полный лист А4.
у меня обычный размеркартинки 310-на-340 пикселей, от 7 до 15 кб. хватает чтобы внятно разглядеть на экране и впихнуть в эксель в строку с товаром. |
|||
24
Ar-Bus
16.05.13
✎
11:58
|
(22) картинки в файлы сохранил, сжал до нужных размеров. Как теперь загрузить назад в базу сжатые файлы?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |