pbreda Posted November 2, 2009 at 02:42 PM Report Share #294366 Posted November 2, 2009 at 02:42 PM Boas, gostaria de saber como fazer um screenshot de um site a partir de httpRequest/sockets, ou seja, sem o webbrowser ou similar.... Cumprimentos.... Qualquer coisa esfrega a lampada!!!Visite Banco de Software e desfrute do software disponível xD Link to comment Share on other sites More sharing options...
softklin Posted November 2, 2009 at 03:27 PM Report Share #294373 Posted November 2, 2009 at 03:27 PM Boas, antes de mais sugiro que não uses tags do género "urgente", porque além de não ir de encontro ao que diz nas regras do fórum, não vai ajudar na resolução. Quanto à dúvida, pensa bem: se tu queres ter uma representação gráfica da página, ela tem que ser mostrada nalgum lado, ou seja, fazer parsing ao HTML e mostrá-la graficamente ao utilizador. Logo, sem browser não vais lá. Mas se os websites forem bem conhecidos, podes sempre optar por serviços que te permitem devolver um screenshot da página. Para obter a imagem, vais buscar o endereço da mesma, usando a técnica que usaste para buscar da metatags (outro tópico), fazes download dela e mostras para o utilizador da forma que pretendes. Google > website screenshot Nick antigo: softclean | Tens um projeto? | Wiki P@P Ajuda a comunidade! Se encontrares algo de errado, usa a opção "Denunciar" por baixo de cada post. Link to comment Share on other sites More sharing options...
pbreda Posted November 4, 2009 at 08:04 PM Author Report Share #294745 Posted November 4, 2009 at 08:04 PM Eu tenho um exemplo em C# e é como tas a dizer eu tentei transpor mas tem bugs o código C# é o seguinte: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Drawing.Imaging; using System.Drawing.Drawing2D; using System.IO; using System.Runtime.InteropServices; namespace ScreenshotTaker { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void btnLoad_Click(object sender, EventArgs e) { webBrowser1.Navigate("http://www.geekpedia.com"); } private void btnSnap_Click(object sender, EventArgs e) { // The size of the browser window when we want to take the screenshot (and the size of the resulting bitmap) Bitmap bitmap = new Bitmap(1024, 768); Rectangle bitmapRect = new Rectangle(0, 0, 1024, 768); // This is a method of the WebBrowser control, and the most important part webBrowser1.DrawToBitmap(bitmap, bitmapRect); // Generate a thumbnail of the screenshot (optional) System.Drawing.Image origImage = bitmap; System.Drawing.Image origThumbnail = new Bitmap(120, 90, origImage.PixelFormat); Graphics oGraphic = Graphics.FromImage(origThumbnail); oGraphic.CompositingQuality = CompositingQuality.HighQuality; oGraphic.SmoothingMode = SmoothingMode.HighQuality; oGraphic.InterpolationMode = InterpolationMode.HighQualityBicubic; Rectangle oRectangle = new Rectangle(0, 0, 120, 90); oGraphic.DrawImage(origImage, oRectangle); // Save the file in PNG format origThumbnail.Save("Screenshot.png", ImageFormat.Png); origImage.Dispose(); } } } Qualquer coisa esfrega a lampada!!!Visite Banco de Software e desfrute do software disponível xD Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now