How to add text and images to PDF in PowerShell with Web API

This code in PowerShell shows how to add text and images to PDF with this how to tutorial

Every ByteScout tool contains example PowerShell source codes that you can find here or in the folder with installed ByteScout product. Web API: the flexible Web API that includes full set of functions from e-signature requests to data extraction, OCR, images recognition, pdf splitting and pdf splitting. Can also generate barcodes and read barcodes from images, scans and pdf. It can add text and images to PDF in PowerShell.

This code snippet below for Web API works best when you need to quickly add text and images to PDF in your PowerShell application. Follow the instructions from the scratch to work and copy the PowerShell code. You can use these PowerShell sample examples in one or many applications.

Trial version of Web API can be downloaded for free from our website. It also includes source code samples for PowerShell and other programming languages.

On-demand (REST Web API) version:
 Web API (on-demand version)

On-premise offline SDK for Windows:
 60 Day Free Trial (on-premise)


# The authentication key (API Key). # Get your own by registering at $API_KEY = "***********************************" # Direct URL of source PDF file. $SourceFileUrl = "" #Comma-separated list of page indices (or ranges) to process. Leave empty for all pages. Example: '0,2-5,7-'. $Pages = "" # PDF document password. Leave empty for unprotected documents. $Password = "" # Destination PDF file name $DestinationFile = "./result.pdf" # Image params $Type = "image" $X = 400 $Y = 20 $Width = 119 $Height = 32 $ImageUrl = "" $resultFileName = [System.IO.Path]::GetFileName($DestinationFile) # * Add image * # Prepare request to `PDF Edit` API endpoint $query = "" # Prepare request body (will be auto-converted to JSON by Invoke-RestMethod) # See documentation: $body = @{ "name" = $resultFileName "password" = $Password "pages" = $Pages "url" = $SourceFileUrl "type" = $Type "x" = $X "y" = $Y "width" = $Width "height" = $Height "urlimage" = $ImageUrl } | ConvertTo-Json try { # Execute request $response = Invoke-WebRequest -Method Post -Headers @{ "x-api-key" = $API_KEY; "Content-Type" = "application/json" } -Body $body -Uri $query $jsonResponse = $response.Content | ConvertFrom-Json if ($jsonResponse.error -eq $false) { # Get URL of generated barcode image file $resultFileUrl = $jsonResponse.url # Download output file Invoke-WebRequest -Uri $resultFileUrl -OutFile $DestinationFile Write-Host "Generated PDF saved to '$($DestinationFile)' file." } else { # Display service reported error Write-Host $jsonResponse.message } } catch { # Display request error Write-Host $_.Exception }


@echo off powershell -NoProfile -ExecutionPolicy Bypass -Command "& .\AddImagesToExistingPDF.ps1" echo Script finished with errorlevel=%errorlevel% pause



Get 60 Day Free Trial

See also:


Get Your API Key

See also:

Related Samples: