Produzca mejores capturas de pantalla de imágenes de páginas web o convierta HTML directamente a imágenes utilizando las siguientes funciones de API de Ruby de GrabzIt. Sin embargo, antes de comenzar, recuerde que después de llamar al url_to_image, html_to_image or file_to_image métodos de save or save_to Se debe llamar al método para crear la imagen.
Solo se requiere un parámetro para tomar una captura de pantalla de una página web o convertir HTML intuna imagen como se muestra en el siguiente ejemplo.
grabzItClient.url_to_image("https://www.tesla.com") # Then call the save or save_to method
grabzItClient.html_to_image("<html><body><h1>Hello World!</h1></body></html>") # Then call the save or save_to method
grabzItClient.file_to_image("example.html") # Then call the save or save_to method
La API Ruby de GrabzIt puede tomar capturas de pantalla de imágenes en varios formatos, incluidos JPG, PNG, WEBP, BMP (bit 8, bit 16, bit 24 o bit 32) y TIFF. El formato predeterminado para las capturas de pantalla de imágenes es JPG. Sin embargo, la calidad de una imagen JPG puede no ser lo suficientemente buena para algunas aplicaciones. En estas circunstancias, se recomienda el formato PNG para capturas de pantalla de imágenes, ya que proporciona un buen equilibrio entre la calidad y el tamaño del archivo. El siguiente ejemplo muestra una captura de pantalla de imagen tomada con el formato PNG.
grabzItClient = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret") options = GrabzIt::ImageOptions.new() options.format = "png" grabzItClient.url_to_image("https://www.tesla.com", options) # Then call the save or save_to method grabzItClient.save_to("result.png")
grabzItClient = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret") options = GrabzIt::ImageOptions.new() options.format = "png" grabzItClient.html_to_image("<html><body><h1>Hello World!</h1></body></html>", options) # Then call the save or save_to method grabzItClient.save_to("result.png")
grabzItClient = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret") options = GrabzIt::ImageOptions.new() options.format = "png" grabzItClient.file_to_image("example.html", options) # Then call the save or save_to method grabzItClient.save_to("result.png")
El tamaño del navegador se refiere al tamaño de la ventana del navegador que se utilizará al capturar la captura de pantalla; en la mayoría de los casos, no es necesario establecerlo, ya que el tamaño predeterminado del navegador será suficiente para la mayoría de las tareas. Para establecer el tamaño del navegador, simplemente pase un valor a browserWidth
y browserHeight
métodos de la ImageOptions clase.
Cambiar el tamaño de una imagen es fácil, hacerlo sin distorsionar la imagen es un poco más difícil. Para simplificar todo el proceso, le recomendamos que utilice este calculadora de dimensión de imagen simple.
Si desea aumentar el ancho y alto de la imagen a un tamaño mayor que el ancho y alto del navegador, que por defecto es 1366 por 728 píxeles, el ancho y la altura del navegador también deben aumentarse para que coincidan.
Puede pasar un identificador personalizado a imagen métodos como se muestra a continuación, este valor se devuelve a su controlador GrabzIt Ruby. Por ejemplo, este identificador personalizado podría ser un identificador de base de datos, lo que permite asociar una captura de pantalla con un registro de base de datos particular.
grabzItClient = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret") options = GrabzIt::ImageOptions.new() options.customId = "123456" grabzItClient.url_to_image("https://www.tesla.com", options) # Then call the save method grabzItClient.save("http://www.example.com/handler/index")
grabzItClient = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret") options = GrabzIt::ImageOptions.new() options.customId = "123456" grabzItClient.html_to_image("<html><body><h1>Hello World!</h1></body></html>", options) # Then call the save method grabzItClient.save("http://www.example.com/handler/index")
grabzItClient = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret") options = GrabzIt::ImageOptions.new() options.customId = "123456" grabzItClient.file_to_image("example.html", options) # Then call the save method grabzItClient.save("http://www.example.com/handler/index")
GrabzIt le permite tomar una captura de pantalla completa de una página web completa para hacer esto, necesita pasar un -1 al browserHeight
método. Para garantizar que la imagen coincida con el tamaño del navegador, pase un -1 al height
y width
los atributos.
grabzItClient = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret") options = GrabzIt::ImageOptions.new() options.browserHeight = -1 options.width = -1 options.height = -1 grabzItClient.url_to_image("https://www.tesla.com", options) # Then call the save or save_to method grabzItClient.save_to("result.jpg")
grabzItClient = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret") options = GrabzIt::ImageOptions.new() options.browserHeight = -1 options.width = -1 options.height = -1 grabzItClient.html_to_image("<html><body><h1>Hello World!</h1></body></html>", options) # Then call the save or save_to method grabzItClient.save_to("result.jpg")
grabzItClient = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret") options = GrabzIt::ImageOptions.new() options.browserHeight = -1 options.width = -1 options.height = -1 grabzItClient.file_to_image("example.html", options) # Then call the save or save_to method grabzItClient.save_to("result.jpg")
También puede devolver miniaturas que no estén recortadas, pero tenga en cuenta que esto puede crear imágenes grandes. Para hacer esto, pase un -1 al height
y/o width
métodos La dimensión que se pasa a -1 no se recortará.
grabzItClient = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret") options = GrabzIt::ImageOptions.new() options.width = -1 options.height = -1 grabzItClient.url_to_image("https://www.tesla.com", options) # Then call the save or save_to method grabzItClient.save_to("result.jpg")
grabzItClient = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret") options = GrabzIt::ImageOptions.new() options.width = -1 options.height = -1 grabzItClient.html_to_image("<html><body><h1>Hello World!</h1></body></html>", options) # Then call the save or save_to method grabzItClient.save_to("result.jpg")
grabzItClient = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret") options = GrabzIt::ImageOptions.new() options.width = -1 options.height = -1 grabzItClient.file_to_image("example.html", options) # Then call the save or save_to method grabzItClient.save_to("result.jpg")
¡Usar estos valores especiales significa que puede crear una captura de pantalla que sea una versión a escala completa de toda la página web si lo desea!
GrabzIt le permite tomar una captura de pantalla de un elemento HTML, como un div
or span
etiquetar y capturar todo su contenido. Para hacer esto, el elemento HTML que desea capturar debe especificarse como un Selector de CSS.
... <div id="features"> <img src="http://www.example.com/rocket.jpg"/><h3>Rocket Launch Next Week</h3> </div> ...
Para el ejemplo a continuación, seleccionaremos el div con la identificación "características" y lo enviaremos como una imagen 250 x 250px JPEG.
grabzItClient = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret") # The 250 parameters indicates that image should be sized to 250 x 250 px options = GrabzIt::ImageOptions.new() options.width = 250 options.height = 250 options.format = "jpg" options.targetElement = "#features" grabzItClient.url_to_image("http://www.bbc.co.uk/news", options) # Then call the save or save_to method grabzItClient.save_to("result.jpg")
El siguiente ejemplo toma otra captura de pantalla del div "características" pero esta vez genera una imagen JPEG que tiene el tamaño exacto del div.
grabzItClient = GrabzIt::Client.new("Sign in to view your Application Key", "Sign in to view your Application Secret") # The -1 indicates that image should not be cropped options = GrabzIt::ImageOptions.new() options.width = 250 options.height = 250 options.format = "jpg" options.targetElement = "#features" options.browserHeight = -1 grabzItClient.url_to_image("http://www.bbc.co.uk/news", options) # Then call the save or save_to method grabzItClient.save_to("result.jpg")