объект WebBrowser.DrawtoBitmap () генерирует пустые изображения для нескольких сайтов последовательно



Я использую WebBrowser.DrawtoBitmap () в моем asp.net страница выполняется в отдельном потоке STA для захвата веб-страниц в виде изображения. Но я обнаружил, что получаю пустые изображения для нескольких сайтов последовательно. Я знаю, что этот метод не поддерживается "официально", но было бы неплохо, если бы кто-то мог предоставить мне любую причину или обойти эту проблему с пустыми изображениями.

621   3  

3 ответов:

DrawToBitmap имеет ограничения и не всегда работает так, как ожидалось. Попробуйте вместо этого работать с собственным GDI+

Вот Пример

Эту проблему можно решить, сосредоточив внимание на элементе управления, чтобы он правильно рисовал.

Это был бы вариант, но элемент управления должен быть видимым: WebBrowser.DrawToBitmap() или другие методы?

Насколько я слышал, проблема заключается в том, что ее исправляют, когда вы нажимаете webbrowsercontrol. Поэтому выполнение этой программы должно решить проблему:)

Я не проверял это, но теоретически я думаю, что его можно запустить в windows-форме в asp.net приложение. Ссылка на систему.окна.формы и к рисованию, затем используйте приложение.запуск в отдельном потоке. Примечание: Я на своем телефоне, поэтому я не могу проверить его, но он может действительно работать.

Ты не бьешь по страницам вспышкой?

Я должен был сделать это, чтобы заставить мой WebBrowser контроль работать:

using System;
using System.Windows.Forms;

public class WebBrowserEx : WebBrowser
{
   public WebBrowserEx()
   {
   }

   protected override void WndProc(ref Message m)
   {
      switch (m.Msg)
      {
         case 0x021:
         case 0x201:
         case 0x204:
         case 0x207:
             base.DefWndProc(ref m);
             return;
      }
      base.WndProc(ref m);
   }
}
Я серьезно понятия не имею, что я делал, я просто нашел его где-то, и он должен был включить вспышку. Но я думаю, что с тех пор у меня не было особых проблем с этим.

Я использую его для создания скриншотов. Я запускаю его в отдельном потоке STA (как служба windows-ничего не видно).

Comments

    Ничего не найдено.