RichTextbox - как изменить фон изображения Ive paste - PullRequest
0 голосов
/ 04 апреля 2019

См. Пример ниже - я попробовал все (включая редактирование изображения и изменение цвета bg с прозрачного на белый), но фон изображения все еще отображается серым.

Кто-нибудь знает, как это исправить?

Example

- РЕДАКТИРОВАТЬ -

Вот мой код:

Clipboard.SetImage(Properties.Resources.smile);
richTextBox1.Paste();

Я вижу, что у других людей есть похожая проблема: Фон изображения после вставки в RichTextBox

Я также попробовал решение, упомянутое там

Ответы [ 2 ]

1 голос
/ 04 апреля 2019

Проблема не в вашем изображении, а в том, что richTextBox не может обрабатывать прозрачность изображения. Так что вы должны рассмотреть возможность использования другого элемента управления или сделать фон такого же цвета, как richTextBox, надеюсь, это поможет

0 голосов
/ 04 апреля 2019

Я только что решил, преобразовав * .png в * .jpg (bmp и tiff тоже сработали)

Большое спасибо всем, кто пытался помочь.Я думаю, что проблема с прозрачным фоном изображения, поэтому преобразование помогло.В моем случае мне не требовалась прозрачность, я просто хотел не видеть рамку вокруг

РЕДАКТИРОВАТЬ

Я нашел решение здесь: https://stackoverflow.com/a/27318979/77273

(заменитьпрозрачный цвет по указанному)

Мой новый код теперь выглядит следующим образом:

Clipboard.SetImage( Transparent2Color (Properties.Resources.angry, Color.White)  );
richTextBox1.Paste();

EDIT-2

Я только что обнаружил, почему серый фонпоказывается, даже если я отредактировал изображение и заменил прозрачный фон на белый .... (На самом деле это привело меня к неправильному направлению)

  • Я только что заменил img в ресурсах, используя то же имя
  • оказалось, что VS каким-то образом «кеширует» старую версию картинки
  • она начала работать, когда я использовал другое имя или удалил файл из ресурсов и скопировал его снова

Надеюсь, это поможет кому-то, ктоиспытывает аналогичные проблемы.

...