46 / 20 / 5
Регистрация: 29.12.2015
Сообщений: 1,814
1
.NET 4.x

Быстрая попиксельная замена нескольких цветов у картинки и остальная работа с графикой

07.08.2020, 16:20. Показов 4237. Ответов 61
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте.
Подскажите как быстро делать замену нескольких цветов у картинки + накладывание картинки на картинку или отрисовка в нужных позициях. И также маштабирование Для точности нужно использовать циклы по пиксельно или както по другому но нужно заменять только при полном совпадении.
Но мне нужен быстрые способы. Стандартные методы делают это медленно. OpenGL да, но я вот тока не знаю как в нем работать. Там для меня трудная система коррдинат по Float системе. Да и плюс может есть чтото полегче

Короче надеюсь есть те кто ответят. Уроки, примеры хоть что

И так. Нужны 3 вещи.

1. Накладывание одной картинки на другую.
2. Отрисовка нескольких картинок в нужных позициях. Именно что не 1 картинка а несколько.
3. Замена массива цветов (Предположим 10 - 15 цветов) в картинки. Тоесть есть массив с исходными цветами а есть на которые нужно менять.
4. Изменение маштаба картинки / картинок

Первые 2 по сути как 1 идет просто в 1 случае используеться 0 координата.

И повторюсь. Интересуют быстрая реализация на уровне реализации игр но это не игра а утилита. Ну короче быстро это делать.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.08.2020, 16:20
Ответы с готовыми решениями:

Быстрая работа с графикой
Добрый день. интересует способ быстрого выведения множества пикселей на экран. мне не нужны...

Попиксельная обработка картинки средствами VBA
Доброго всем времени суток. Проблемка: Есть графический файл. Чтоб не распылятся об различиях...

Есть н цветов разных видов. Составьте все возможные сочетания букетов из всех этих цветов. Количество цветов и их названия вводит пользователь
Есть n цветов разных видов. Составьте все возможные сочетания букетов из всех этих цветов....

Различие цветов однотонной картинки
Проблема такая background задан png картинкой, а снизу на after полоска такого же цвета, но просто...

61
46 / 20 / 5
Регистрация: 29.12.2015
Сообщений: 1,814
10.08.2020, 12:31  [ТС] 41
Author24 — интернет-сервис помощи студентам

Не по теме:

Еще вопросик. А как добавить клдасс формы в Net Core. Чет не могу найти.



Добавлено через 2 минуты

Не по теме:

Понятно. В библиотеку классов теперь форму нельзя просто так засунуть.

0
Эксперт .NET
6451 / 4053 / 1598
Регистрация: 09.05.2015
Сообщений: 9,481
10.08.2020, 13:56 42
Цитата Сообщение от Alexandr_7 Посмотреть сообщение
Понятно. В библиотеку классов теперь форму нельзя просто так засунуть.
Чтобы это работало нужно в файле проекта библиотеки изменить Project Sdk на Microsoft.NET.Sdk.WindowsDesktop и добавить тэг UseWindowsForms, чтобы файл проекта выглядел примерно так:
XML
1
2
3
4
5
6
7
8
9
10
11
12
<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop">
 
  <PropertyGroup>
    <TargetFramework>net5.0</TargetFramework>
    <UseWindowsForms>true</UseWindowsForms>
  </PropertyGroup>
 
  <ItemGroup>
    <Compile Update="Form1.cs" />
  </ItemGroup>
 
</Project>
0
46 / 20 / 5
Регистрация: 29.12.2015
Сообщений: 1,814
10.08.2020, 14:15  [ТС] 43
Так мне нужен именно библетеака а не экзешник.Библиотека но с формами.

Добавлено через 4 минуты
Попробовал. Все норм. Спасибо.
0
Эксперт .NET
6451 / 4053 / 1598
Регистрация: 09.05.2015
Сообщений: 9,481
11.08.2020, 11:41 44
Цитата Сообщение от Alexandr_7 Посмотреть сообщение
Понятно. В библиотеку классов теперь форму нельзя просто так засунуть.
Цитата Сообщение от Someone007 Посмотреть сообщение
Чтобы это работало нужно в файле проекта библиотеки изменить Project Sdk на Microsoft.NET.Sdk.WindowsDesktop и добавить тэг UseWindowsForms, чтобы файл проекта выглядел примерно так
Microsoft обещает добавить шаблон Windows Forms Class Library в .NET 5.0 RC1, тем самым решив данную проблему без необходимости вручную редактировать файл проекта.
0
46 / 20 / 5
Регистрация: 29.12.2015
Сообщений: 1,814
12.08.2020, 23:38  [ТС] 45
Я использую 3.1. Но на сколько знаю 5.0 уже вышла. И давно.
Что посоветуете юзать для быстрой отрисовки картинки в нужных позициях. Естественно с прозрачностью формат png.
0
46 / 20 / 5
Регистрация: 29.12.2015
Сообщений: 1,814
13.08.2020, 14:18  [ТС] 46
Может ко ответит?
0
Эксперт .NET
6451 / 4053 / 1598
Регистрация: 09.05.2015
Сообщений: 9,481
13.08.2020, 15:40 47
Куда отрисовывать то?
0
Эксперт .NET
12061 / 8369 / 1280
Регистрация: 21.01.2016
Сообщений: 31,559
13.08.2020, 15:47 48
Цитата Сообщение от Alexandr_7 Посмотреть сообщение
Я использую 3.1. Но на сколько знаю 5.0 уже вышла. И давно.
У вас машина времени сломалась? У нас тут 5.0 выходит только осенью. Или вы preview считаете за "вышла"?
0
46 / 20 / 5
Регистрация: 29.12.2015
Сообщений: 1,814
13.08.2020, 19:35  [ТС] 49
Цитата Сообщение от Usaga Посмотреть сообщение
У вас машина времени сломалась? У нас тут 5.0 выходит только осенью. Или вы preview считаете за "вышла"?
Ну ошибся немного. Щас глянул и действительно нету.
Цитата Сообщение от Someone007 Посмотреть сообщение
Куда отрисовывать то?
Отрисовывать на отдельный объект Bitmap или типо того но нужно отрисовывать каждый Bitmap быстро. Потом все отрисованное будет сразу выводится в picturebox
0
Alexandr_7
15.08.2020, 23:37  [ТС]
  #50

Не по теме:

Так. Не доволен этим NET Core точнее его конструктором очень сильно тормози и зачастую падает
И кто блин мне посоветовал джелать на NET Core. Если там чтото писать то конструктор в топку идет но не такой вариант меня не устраивает.

0
Пора на C++?
370 / 264 / 99
Регистрация: 10.04.2020
Сообщений: 1,275
15.08.2020, 23:58 51
Alexandr_7, так пишите на фреймворке. Всё равно формы только под винду.
0
Эксперт .NET
12061 / 8369 / 1280
Регистрация: 21.01.2016
Сообщений: 31,559
17.08.2020, 07:57 52
Alexandr_7, так пишите на старом добром .NET Framework или используйте WPF, на его дизайнер в Core вроде бы жалоб нету.
0
46 / 20 / 5
Регистрация: 29.12.2015
Сообщений: 1,814
17.08.2020, 08:37  [ТС] 53
Наверное прийдется на .NET Framework С WPF не дружу. Да и монитор хоть и 1920 x 1080 но все равно маловат для конструктора WPF ибо там удобней использовать разделение экрана и часть работы выполнять в XAML
0
Эксперт .NET
12061 / 8369 / 1280
Регистрация: 21.01.2016
Сообщений: 31,559
17.08.2020, 09:01 54
Цитата Сообщение от Alexandr_7 Посмотреть сообщение
Да и монитор хоть и 1920 x 1080 но все равно маловат для конструктора WPF
Странно. А у меня всё прекрасно помещалось на одном мониторе.
0
46 / 20 / 5
Регистрация: 29.12.2015
Сообщений: 1,814
17.08.2020, 09:38  [ТС] 55
Цитата Сообщение от Usaga Посмотреть сообщение
Странно. А у меня всё прекрасно помещалось на одном мониторе.
Не. Если чисто конструктор без разделения то норм но вот если разделять его вот так:
Быстрая попиксельная замена нескольких цветов у картинки и остальная работа с графикой

Для кого как но мне лично такой конструктор не удобным кажется а работать чисто на конструкторе без XML в разы неудобно так как много чего удобнее написать через код чем искать это в свойствах элемента
0
Эксперт .NET
12061 / 8369 / 1280
Регистрация: 21.01.2016
Сообщений: 31,559
17.08.2020, 10:07 56
Alexandr_7, меня вполне устраивает. И моих коллег тоже. Если что, то там и масштабирование есть. Можно и форму уменьшить, чтобы влезло больше и текст XAML'я. Кому прямо сильно надо, могут второй монитор подключить.
0
Эксперт .NET
6451 / 4053 / 1598
Регистрация: 09.05.2015
Сообщений: 9,481
17.08.2020, 10:12 57
Вы можете использовать дизайнер WinForms от .NET Framework и при этом собирать приложение под .NET Core, создав дополнительный проект и добавив в него ссылки (Add As Link) на нужные формы, контролы и т.д. из .NET Core проекта.
Можно даже сделать наоборот, добавить ссылки на формы из .NET Framework проекта в .NET Core проект.
0
46 / 20 / 5
Регистрация: 29.12.2015
Сообщений: 1,814
17.08.2020, 11:16  [ТС] 58
Цитата Сообщение от Someone007 Посмотреть сообщение
Вы можете использовать дизайнер WinForms от .NET Framework и при этом собирать приложение под .NET Core, создав дополнительный проект и добавив в него ссылки (Add As Link) на нужные формы, контролы и т.д. из .NET Core проекта.
Можно даже сделать наоборот, добавить ссылки на формы из .NET Framework проекта в .NET Core проект.
Ну если вы тока раскажите как это сделать. Вообще конструктор NET Framework 4.7.2 работает быстро и идеальный вариант похоже.
0
Эксперт .NET
6451 / 4053 / 1598
Регистрация: 09.05.2015
Сообщений: 9,481
17.08.2020, 13:47 59
Лучший ответ Сообщение было отмечено Alexandr_7 как решение

Решение

Создаете в решении дополнительный проект нужного типа (например если у вас формы в .NET Core проекте, то создаете к нему в пару проект WinForms .NET Framework). Удаляете пустую форму из созданного проекта, и затем через Add -> Existing Item добавляете в него всё файлы, при этом нужно на кнопке Add выбрать из выпадающего списка Add As Link. Дизайнер соответственно открываете из .NET Framework проекта, все изменения автоматически будут появляться и в .NET Core проекте, т.к. файлы добавлены как ссылка.

Аналогично можно сделать если у вас .NET Framework проект и из него нужно сделать .NET Core...

Должно получиться что-то типа:
Вложения
Тип файла: zip WindowsFormsApp7.zip (11.5 Кб, 1 просмотров)
1
311 / 271 / 118
Регистрация: 05.06.2013
Сообщений: 868
17.08.2020, 13:59 60
Всю тему не читал, но для себя быстрое решение по обработки изображений я нашёл когда-то тут.
0
17.08.2020, 13:59
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.08.2020, 13:59
Помогаю со студенческими работами здесь

Уменьшить количество цветов картинки!
Добрые люди, как можно решить задачу! во всем интернете только одна страница с трезвым ответом,...

Обрезка списка цветов из картинки
День добрый. Стоит следующая задача, есть картинка, в ней кроме whitespace нужно удалить еще 215...

Замена цветов в картинке
Сразу извиняюсь за столь банальный вопрос. Суть в следующем: имеется файл формата .png в котором...

Замена цветов на картинке
Здравствуйте. Вот код покраски сейчасный: void SetPaletteExample(string aNewPalette) { ...

Замена цветов избражения
Как изменить цвета изображения на наиболее схожие с ними цвета из массива?

удалить один из цветов (пикселей) с картинки
теперь возник другой вопрос.....как мне удалить один из цветов или один из пикселей с картинки,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
60
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru