捕獲和轉換Web的工具

將網頁和HTML轉換為PDF

Perl API

GrabzIt的Perl API 提供以下功能,以使創建PDF屏幕截圖以及將HTML直接轉換為PDF盡可能容易 int過分的 int你的應用 但是,在開始之前,請記住 URLToPDF, HTMLToPDF or FileToPDF 方法 Save or SaveTo 必須調用方法來實際創建PDF。

基本選項

網頁轉換後 into以PDF格式捕獲整個網頁,這可能會導致PDF文檔包含許多頁面。 只需一個參數即可轉換網頁 intpdf文檔或 將HTML轉換為PDF 如以下示例所示。

$grabzIt->URLToPDF("https://www.tesla.com");
# Then call the Save or SaveTo method
$grabzIt->HTMLToPDF("<html><body><h1>Hello World!</h1></body></html>");
# Then call the Save or SaveTo method
$grabzIt->FileToPDF("example.html");
# Then call the Save or SaveTo method

自訂識別碼

您可以將自定義標識符傳遞給 PDF 方法,如下所示,然後將該值返回到您的GrabzIt Perl處理程序。 例如,該自定義標識符可以是數據庫標識符,從而允許將屏幕截圖與特定數據庫記錄相關聯。

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

$options = GrabzItPDFOptions->new();
$options->customId("123456");

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

$options = GrabzItPDFOptions->new();
$options->customId("123456");

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

$options = GrabzItPDFOptions->new();
$options->customId("123456");

$grabzIt->FileToPDF("example.html", $options);
# Then call the Save method
$grabzIt->Save("http://www.example.com/handler.pl");

頁眉和頁腳

創建PDF屏幕截圖時,您可以要求您應用特定的 模板 到生成的PDF。 該模板必須是 saved並會指定頁眉和頁腳的內容以及任何特殊變量。 在下面的示例代碼中,用戶正在使用其名為“我的模板”的模板。

如果頁眉或頁腳分別沒有足夠大的頂部或底部邊距,則它將不會出現在PDF中。 在下面的示例中,我們將頂部和底部邊距設置為20以提供足夠的空間。

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

$options = GrabzItPDFOptions->new();
$options->marginTop(20);
$options->marginBottom(20);
$options->templateId("my template");

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

$options = GrabzItPDFOptions->new();
$options->marginTop(20);
$options->marginBottom(20);
$options->templateId("my template");

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

$options = GrabzItPDFOptions->new();
$options->marginTop(20);
$options->marginBottom(20);
$options->templateId("my template");

$grabzIt->FileToPDF("example.html", $options);
# Then call the Save or SaveTo method
$grabzIt->SaveTo("result.pdf");

將HTML元素轉換為PDF

如果只想直接轉換div或span等HTML元素 int您可以使用GrabzIt的Perl庫獲得PDF文檔。 您必須通過 CSS選擇器 您希望轉換為HTML元素的 targetElement 方法。

...
<span id="Article">
<p>This is the content I am interested in.</p>
<img src="myimage.jpg">
</span>
...

在此示例中,我們希望捕獲跨度中ID為的所有內容 Article,因此我們將其傳遞給GrabzIt,如下所示。

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

$options = GrabzItPDFOptions->new();
$options->targetElement("#Article");

$grabzIt->URLToPDF("http://www.bbc.co.uk/news", $options);
# Then call the Save or SaveTo method
$grabzIt->SaveTo("result.pdf");

定位HTML元素時如何裁剪PDF 使用這些技術進行控制.