PhantomJS yardımıyla herhangi bir web sayfasının ekran görüntüsünü almak için rasterize.js dosyasını kullanıyoruz. C# ile ekran görüntüsü almak için öncelikle indirme adresinden PhantomJS'nin windows için olan versiyonunu indiriyoruz.



[TestMethod]
public void Rasterize()
{
Process process = new Process();
string path = @"C:\sourcedirectory\"; //phantomjs'nin kayıtlı bulunduğu dizin
process.StartInfo.FileName = path + "phantomjs.exe"; //projenizin kendi yol bilgisini giriniz
process.StartInfo.WorkingDirectory = path;
process.StartInfo.Arguments = "examples/rasterize.js http://google.com ekr.jpg"; //example dizininin bulunduğu konumun phantomjs.exe'nin bulunduğu dizinin bir alt dizini olduğuna dikkat ediniz
process.StartInfo.UseShellExecute = false;
process.StartInfo.RedirectStandardOutput = true;
process.StartInfo.RedirectStandardError = true;


process.OutputDataReceived += new DataReceivedEventHandler(OutputHandler);
process.ErrorDataReceived += new DataReceivedEventHandler(OutputHandler);

process.Start();
process.BeginOutputReadLine();
process.BeginErrorReadLine();
process.WaitForExit();
}
static void OutputHandler(object sendingProcess, DataReceivedEventArgs outLine)
{
Debug.WriteLine(outLine.Data);
}


İlgili ekran görüntüsünün genişlik ve yüksekliğini değiştirmek için rasterize.js dosyasındaki
page.viewportSize = { width: 600, height: 600 };

satırını değiştirebilirsiniz.

Yorumlar

Bu kod parçacığına henüz yorum yapılmamış.

Yorum Yaz

Yorum yazabilmek için üye olunuz veya giriş yapınız