пользовательский контроль v / s пользовательский элемент управления для просмотра изображений - PullRequest
2 голосов
/ 10 мая 2011

Я хотел бы создать просмотрщик изображений.Я не знаю с чего начать.Не могли бы вы дать мне несколько советов для начала.

У меня в голове есть следующая мысль:

  • Создайте пользовательский элемент управления, переопределите событие рисования.Используйте свойства для чтения, переворачивания, поворота и масштабирования изображений
  • Создайте пользовательский элемент управления с панелью внутри, установите фон для изображения, в то время как я установил открытое свойство read.Реализуйте свойства для поворота, отражения, масштабирования

Ответы [ 3 ]

1 голос
/ 15 мая 2011

Сначала вы должны изучить GDI +, эта книга (GDI + Программирование на C #) очень хороша для
Изучение GDI + после прочтения. Вы можете создать просмотрщик изображений.

1 голос
/ 15 мая 2011

Я предлагаю вам использовать WPF вместо winforms
Zoom, пример панорамирования с использованием WPF: http://blogs.windowsclient.net/joeyw/archive/2009/06/02/pan-and-zoom-updated.aspx
В этой теме приведены примеры кодов вращения и т. Д .:

Эта тема представляет собой введение в презентация Microsoft Windows Компонент для создания изображений. WPF Imaging позволяет разработчикам отображать, преобразовывать и форматировать изображения.

Эта тема содержит следующее разделы.

WPF Imaging Component
WPF Image Formats
Displaying Images in WPF
Image Metadata
Codec Extensibility
Related Topics
0 голосов
/ 10 мая 2011

Существует множество способов показать изображение. PictureBox напоминает то, что вы уже предлагали (http://msdn.microsoft.com/en-us/library/system.windows.forms.picturebox.aspx).

Когда дело доходит до редактирования, вам следует избегать GetPixel () и SetPixel (), которые выходят за рамки медленных, и вместо этого получить доступ к битам либо с помощью указателей с помощью ключевого слова unsafe, либо с помощью класса Маршалла.

Используйте метод LockBits () вашего растрового изображения, чтобы получить объект BitmapData, и веселье начнется!

Дополнительная литература:

http://msdn.microsoft.com/en-us/library/system.runtime.interopservices.marshal.aspx

http://www.bobpowell.net/lockingbits.htm

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...