Esiste un'API che può essere utilizzata per generare le anteprime di una pagina Web in C#? Non voglio usare siti Web di terze parti come preferisco renderli da solo.API C# per creare una miniatura della pagina web
risposta
C'è uno program on CodeProject che potrebbe corrispondere al conto ... è un'app "console" (in realtà un'app nascosta di WinForms) che utilizza il controllo WebBrowser.
ho giocato intorno con esso un po 'indietro e funziona abbastanza bene
Ecco un esempio di come farlo utilizzando GTK e Geko motore (Firefox) : http://tirania.org/blog/archive/2004/Jun-14.html
Si dovrebbe essere in grado di fare lo stesso utilizzando Internet Explorer e WindowsForms se si preferisce.
LE: È necessario utilizzare un motore di rendering esistente come (Geko di Firefox, o Webkit o Internet Explorer) anziché un parser html in quanto ciò consentirà di acquisire la pagina così com'è, con CSS, Flash, Java, ecc.
Io uso l'interfaccia C# di WebShot e lo System.Graphics API per generare le miniature.
Per un approccio rapido e sporco, è possibile creare un'istanza di controllo del browser IE e chiamare il metodo DrawToBitmap. TUTTAVIA, questo metodo non è strettamente inteso per il consumo pubblico. Ma è accessibile e funziona. Non lo userei comunque in produzione.
Re: Winforms e IE, è passato molto tempo da quando l'ho provato (quindi potrebbero aver cambiato le cose) ma prima era impossibile rendere un controllo del browser su una bitmap. –