GraphicsNET (GraphicsVK) - внешняя компонента для работы с графическими изображениями

02.09.2010 12:43 [01.10.2010 10:48] salexdv 58 [+] [−] Перейти к комментариям (74)

Внешняя компонента для 1С: Предприятие 8.0; 1С: Предприятие 8.1; 1С: Предприятие 8.2; 1С: Бухгалтерский учет 7.7; 1С: Оперативный учет 7.7; Windows

GraphicsNET (GraphicsVK) - внешняя компонента для работы с графическими изображениями

Ежедневно приходится грузить большое количество картинок в базу данных. Чтобы автоматизировать процесс изменения размеров написал внешнюю компоненту для работы с изображениями. Хотя функционал не ограничивается одним только ресайзингом.

или посмотреть и скачать все файлы (2)

Внимание!

Переписал полностью компоненту (С#) - теперь она называется "GraphicsNET". Функционал остался прежним, но добавилась поддержка всех форматов emf,tif и появилось возможность редактировать (обрезать, масштабировать) файл формата png с сохранением прозрачности фона.

Размещен первая версия, поэтому возможны баги. При обнаружении таковых пишите - буду поправлять.

Общие сведения


GraphicsNET – внешняя компонента для работы с графическими изображениями. Может использоваться для конвертации из одного формата в другой, получения изображения из буфера обмена, изменения размера изображения, поворота (отражения), обрезки, получения размеров и добавления водяного знака.

Поддерживается работа со следующими форматами:
В режиме открытия:

  • bmp
  • jpg
  • png
  • gif
  • emf (wmf)
  • tif


В режиме сохранения:

  • bmp
  • jpg
  • png


Форматы «водяного знака»:

  • bmp
  • jpg
  • png
  • gif
  • emf (wmf)
  • tif


Описание свойств и методов


Свойства:

  • РазмерИзображения/ ImageSize – размер текущего изображения в формате "Ширина"x"Высота"(например, 300x550). Тип: Строка
  • Ширина/Width – ширина текущего изображения. Тип: Строка
  • Высота/Height – высота текущего изображения. Тип: Строка
  • ДвоичныеДанные/ BinaryData – файл в формате jpg без сжатия представленный в виде строки base64. Тип: Строка

Методы:

1) ПолучитьИзображение/GetImage – получает изображение для обработки (конвертации) из файла или буфера обмена.

Параметры:

  • ИмяФайла - имя открываемого для редактирования файла. Если имя файла пустое, то изображение берется из буфера обмена. Тип: Строка

2) ОбрезатьИзображение/CropImage – обрезает изображение на указанную величину.
Параметры:

  • Лево - количество пикселей (процентов), обрезаемых слева. Тип: Число
  • Право - количество пикселей (процентов), обрезаемых справа. Тип: Число
  • Верх - количество пикселей (процентов), обрезаемых сверху. Тип: Число
  • Низ - количество пикселей (процентов), обрезаемых снизу. Тип: Число
  • ВПроцентах – признак того, что все величины указаны в процентах. Тип: Булево (для 7.7 - 0 и 1)


3) ПовернутьИзображение/RotateImage – поворачивает (отражает) текущее изображение.

Параметры:

  • ОтразитьПоГоризонтали – признак того, что изображение необходимо отразить по горизонтали. Тип: Булево
  • ОтразитьПоВертикали - признак того, что изображение необходимо отразить по вертикали. Тип: Булево
  • Поворот – поворот изображения (-1 – на 90 градусов против часовой, 1 – на 90 градусов по часовой). Тип: Число

4) ИзменитьРазмерИзображения/ResizeImage – изменяет размер изображения.

Параметры:

  • Ширина – новая ширина для изображения. Тип: Число
  • Высота – новая высота для изображения. Тип: Число
  • Процент – процент на который изменяется размер (если число отрицательное – уменьшение изображения, если положительное - увеличение). Тип: Число
  • СохранятьПропорции – признак того, что при изменении размера необходимо сохранить пропорции ихображения Если указано, что необходимо сохранить пропорции, то методу передается только один из параметров (либо шинира, либо высота), а второй параметр принимает нулевое значение. Тип: Булево (для 7.7 - 0 и 1).

5) ДобавитьВодянойЗнак/ AddWatermark – добавляет на текущее изображение «водяной знак».
Параметры:

  • ИмяФайла – файл, который будет использоваться в качестве водяного знака. Тип: Строка
  • Позиция – позиция на текущем изображении, где необходимо разместить водяной знак. Тип: Число

Принимает следующие значения:

0 – сверху слева
1 – сверху центр
2 – сверху справа
3 – по центру
4 – снизу слева
5 – снизу центр
6 – снизу справа

  • Прозрачность – процент прозрачности накладываемого изображения. Изменяется от 0 до 100. При 100 – изображение непрозрачно. Тип: Число

6) СохранитьИзображения/SaveImage – сохраняет изображение в файл на диске.

Параметры:

  • ИмяФайла – имя файла для сохранения на диске. Тип: Строка
  • ТипФайла – формат сохраняемого файла. Тип: Число

Принимает следующие значения:

0 – bmp

1 – jpg

2 – png

  • Сжатие – степень сжатия для файлов формата jpg. Тип: Число
  • УдалятьОригинал – признак того, что необходимо удалить оригинальный файл. Требуется, например, при конвертации из одного формата в другой. Тип: Булево (для 7.7 - 0 и 1)

7) Закрыть/Close высвобождает память занимаемую текущим изображением.


Недостатки

1) Не поддерживается работа с изображениями очень большого размера (более ~ 5000x5000)



Прилагается небольшой пример работы с GraphicsNET.dll (8.2)

Для работы компоненты потребуется установленный Microsoft .NET Framework 2.0, взять его можно отсюда.

Регистрация компоненты в Windows - запустить reg.bat
Удаление информации о компоненте - запустить unreg.bat

http://shkuraev.ru

Тест GraphicsVK.dll

Тест GraphicsVK.dll

Оценка сообщества

58

Поставьте плюс, если вы рекомендуете данную публикацию к прочтению и использованию.
Плюс добавляет публикацию в Мои рекомендации.

[+] Рекомендую   [−] Не тратить время
Если рейтинг упадет до -5, то публикация автоматически скроется.