Tools zum Erfassen und Konvertieren des Webs

Machen Sie Website-Screenshots oder verwandeln Sie HTML in Bilder in Java

Java API

Erstellen Sie perfekte Screenshots von Websites oder konvertieren Sie HTML direkt in Bilder, indem Sie die folgenden Funktionen von verwenden GrabzIt's Java API. Bevor Sie jedoch anfangen, denken Sie daran, dass nach dem Aufruf der URLToImage, HTMLToImage or FileToImage Methoden der Save or SaveTo Methode muss aufgerufen werden, um den Screenshot zu machen.

Grundlegende Optionen

Nur ein Parameter ist erforderlich, um einen Screenshot von einer Webseite oder zu machen HTML konvertieren into ein Bild Datei. Wie im folgenden Beispiel gezeigt.

grabzIt.URLToImage("https://www.tesla.com");
//Then call the Save or SaveTo method
grabzIt.HTMLToImage("<html><body><h1>Hello World!</h1></body></html>");
//Then call the Save or SaveTo method
grabzIt.FileToImage("example.html");
//Then call the Save or SaveTo method

Bild-Screenshot-Formate

Die Java-API von GrabzIt kann Screenshots in verschiedenen Formaten aufnehmen, darunter JPG, PNG, WEBP, BMP (8-Bit, 16-Bit, 24-Bit oder 32-Bit) und TIFF. Das Standardformat für Bild-Screenshots ist JPG. Unter diesen Umständen ist die Qualität eines JPEG-Bilds für einige Apps möglicherweise nicht gut genug. Für Screenshots wird das PNG-Format empfohlen, da es ein ausgewogenes Verhältnis zwischen Qualität und Dateigröße bietet. Das folgende Beispiel zeigt einen Screenshot, der im PNG-Format aufgenommen wurde.

GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");

ImageOptions options = new ImageOptions();
options.setFormat(ImageFormat.PNG);

grabzIt.URLToImage("https://www.tesla.com", options);
//Then call the Save or SaveTo method
grabzIt.SaveTo("result.png");
GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");

ImageOptions options = new ImageOptions();
options.setFormat(ImageFormat.PNG);

grabzIt.HTMLToImage("<html><body><h1>Hello World!</h1></body></html>", options);
//Then call the Save or SaveTo method
grabzIt.SaveTo("result.png");
GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");

ImageOptions options = new ImageOptions();
options.setFormat(ImageFormat.PNG);

grabzIt.FileToImage("example.html", options);
//Then call the Save or SaveTo method
grabzIt.SaveTo("result.png");

Browsergröße

Die Browsergröße bezieht sich auf die Größe des Browserfensters, das beim Aufnehmen des Screenshots verwendet wird. In den meisten Fällen muss dies nicht festgelegt werden, da die Standard-Browsergröße für fast alle Aufgaben ausreicht. Übergeben Sie zum Einstellen der Browsergröße einen Wert an setBrowserWidth und setBrowserHeight Methoden der ImageOptions Klasse.

Bildgröße ändern

Das Ändern der Bildgröße ist einfach, ohne dass das Bild verzerrt wird, ist jedoch etwas schwieriger. Um den gesamten Vorgang zu vereinfachen, empfehlen wir, dies zu verwenden einfacher Bildmaßrechner.

Wenn Sie die Breite und Höhe des Bilds auf eine Größe erhöhen möchten, die größer als die Breite und Höhe des Browsers ist (standardmäßig 1366 x 728 Pixel), müssen auch die Breite und Höhe des Browsers entsprechend erhöht werden.

Benutzerdefinierte Kennung

Sie können der einen benutzerdefinierten Bezeichner übergeben Image Bei den folgenden Methoden wird dieser Wert an Ihren GrabzIt Java-Handler zurückgegeben. Diese benutzerdefinierte Kennung kann beispielsweise eine Datenbankkennung sein, mit der ein Screenshot einem bestimmten Datenbankeintrag zugeordnet werden kann.

GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");

ImageOptions options = new ImageOptions();
options.setCustomId("123456");

grabzIt.URLToImage("https://www.tesla.com", options);
//Then call the Save method
grabzIt.Save("http://www.example.com/handler");
GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");

ImageOptions options = new ImageOptions();
options.setCustomId("123456");

grabzIt.HTMLToImage("<html><body><h1>Hello World!</h1></body></html>", options);
//Then call the Save method
grabzIt.Save("http://www.example.com/handler");
GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");

ImageOptions options = new ImageOptions();
options.setCustomId("123456");

grabzIt.FileToImage("example.html", options);
//Then call the Save method
grabzIt.Save("http://www.example.com/handler");

Screenshot in voller Länge

GrabzIt ermöglicht es Ihnen, einen Screenshot in voller Länge einer gesamten Webseite zu machen, um dies zu tun, müssen Sie ein -1 an das übergeben setBrowserHeight Methode. Um sicherzustellen, dass das Bild der Größe des Browsers entspricht, übergeben Sie ein -1 an das setHeight und setWidth Methoden.

GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");

ImageOptions options = new ImageOptions();
options.setBrowserHeight(-1);
options.setWidth(-1);
options.setHeight(-1);

grabzIt.URLToImage("https://www.tesla.com", options);
//Then call the Save or SaveTo method
grabzIt.SaveTo("result.jpg");
GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");

ImageOptions options = new ImageOptions();
options.setBrowserHeight(-1);
options.setWidth(-1);
options.setHeight(-1);

grabzIt.HTMLToImage("<html><body><h1>Hello World!</h1></body></html>", options);
//Then call the Save or SaveTo method
grabzIt.SaveTo("result.jpg");
GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");

ImageOptions options = new ImageOptions();
options.setBrowserHeight(-1);
options.setWidth(-1);
options.setHeight(-1);

grabzIt.FileToImage("example.html", options);
//Then call the Save or SaveTo method
grabzIt.SaveTo("result.jpg");

Sie können auch Miniaturansichten zurückgeben, die nicht zugeschnitten sind. Beachten Sie jedoch, dass dies zu großen Bildern führen kann. Übergeben Sie dazu ein -1 an das setHeight und / oder setWidth Methoden. Alle Dimensionen, die mit -1 übergeben werden, werden nicht beschnitten.

GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");

ImageOptions options = new ImageOptions();
options.setWidth(-1);
options.setHeight(-1);

grabzIt.URLToImage("https://www.tesla.com", options);
//Then call the Save or SaveTo method
grabzIt.SaveTo("result.jpg");
GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");

ImageOptions options = new ImageOptions();
options.setWidth(-1);
options.setHeight(-1);

grabzIt.HTMLToImage("<html><body><h1>Hello World!</h1></body></html>", options);
//Then call the Save or SaveTo method
grabzIt.SaveTo("result.jpg");
GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");

ImageOptions options = new ImageOptions();
options.setWidth(-1);
options.setHeight(-1);

grabzIt.FileToImage("example.html", options);
//Then call the Save or SaveTo method
grabzIt.SaveTo("result.jpg");
Beachten Sie, dass es keine Browser-Breite in voller Länge gibt!

Wenn Sie diese speziellen Werte verwenden, können Sie einen Screenshot erstellen, der eine Vollversion der gesamten Webseite ist, wenn Sie dies wünschen!

Machen Sie einen Screenshot eines Seitenelements

Mit GrabzIt können Sie einen Screenshot eines beliebigen HTML-Elements erstellen, sofern es eine ID oder ein Klassenattribut hat, z. B. a div or span Tag und erfassen Sie den gesamten Inhalt. Dazu muss das HTML-Element, das Sie scannen möchten, als a angegeben werden CSS-Selektor.

...
<div id="features">
	<img src="http://www.example.com/football.jpg"/><h3>Local Team Loses</h3>
</div>
...

Im folgenden Beispiel wird die div mit der ID "features" erfasst und als 250 x 250px JPEG-Bild ausgegeben.

GrabzItClient grabzIt = new GrabzItClient("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
ImageOptions options = new ImageOptions();
options.setWidth(250);
options.setHeight(250);
options.setFormat(ImageFormat.JPG);
options.setTargetElement("#features");

grabzIt.URLToImage("http://www.bbc.co.uk/news", options);
//Then call the Save or SaveTo method
grabzIt.SaveTo("result.jpg");

Das nächste Beispiel erfasst erneut das Div "Features", gibt jedoch dieses Mal ein JPEG-Bild aus, das genau die gleiche Größe wie das Div hat.

GrabzItClient grabzIt = new GrabzItClient("Sign in to view your Application Key", "Sign in to view your Application Secret");

// The -1 indicates that image should not be cropped
ImageOptions options = new ImageOptions();
options.setWidth(-1);
options.setHeight(-1);
options.setBrowserHeight(-1);
options.setFormat(ImageFormat.JPG);
options.setTargetElement("#features");

grabzIt.URLToImage("http://www.bbc.co.uk/news", options);
//Then call the Save or SaveTo method
grabzIt.SaveTo("result.jpg");