
import fs from 'fs'
import Anvil from '@anvilco/anvil'
const exampleData = {
  title: 'Example HTML to PDF',
  type: 'html',
  data: {
    html: `<h1 class='header-one'>What is Lorem Ipsum?</h1> <p>Lorem Ipsum has been the industry's standard dummy text ever since the <strong>1500s</strong>, when an unknown printer took a galley of type and scrambled it to make a type specimen book.</p>`,
    css: `body { font-size: 14px; color: #171717; } .header-one { text-decoration: underline; }`,
  },
}
const { statusCode, data, errors } = await anvilClient.generatePDF(exampleData)
console.log('Finished! Status code:', statusCode) // => 200, 400, 404, etc
const outputFilepath = path.join(__dirname, '..', 'output', 'generate-html-output.pdf')
fs.writeFileSync(outputFilepath, data, { encoding: null })
console.log('Generated PDF saved to:', outputFilepath)import fs from 'fs'
import Anvil from '@anvilco/anvil'
const exampleData = {
  title: 'Example HTML to PDF',
  type: 'html',
  data: {
    html: `<h1 class='header-one'>What is Lorem Ipsum?</h1> <p>Lorem Ipsum has been the industry's standard dummy text ever since the <strong>1500s</strong>, when an unknown printer took a galley of type and scrambled it to make a type specimen book.</p>`,
    css: `body { font-size: 14px; color: #171717; } .header-one { text-decoration: underline; }`,
  },
}
const anvilClient = new Anvil({ apiKey })
const { statusCode, data } = await anvilClient.generatePDF(exampleData)
console.log('Making HTML PDF generation request...')
console.log('Finished! Status code:', statusCode) // => 200, 400, 404, etc
// `data` will be the filled PDF binary data. It is important that the
// data is saved with no encoding! Otherwise the PDF file will be corrupt.
fs.writeFileSync(outputFilepath, data, { encoding: null })
console.log('Generated PDF saved to:', outputFilepath)class GenerateHtmlToPdf : RunnableBaseExample
{
    private GeneratePdf GetPayload()
    {
        return new GeneratePdf()
        {
            Title = "Example HTML to PDF",
            Type = "html",
            Data = new GeneratePdfHtml()
            {
                Html = @"<h1 class='header-one'>What is Lorem Ipsum?</h1> <p>Lorem Ipsum has been the industry's standard dummy text ever since the <strong>1500s</strong>, when an unknown printer took a galley of type and scrambled it to make a type specimen book.</p>",
                Css = @"body { font-size: 14px; color: #171717; } .header-one { text-decoration: underline; }",
            },
        };
    }
    public override async Task Run(string apiKey)
    {
        var payload = GetPayload();
        var client = new RestClient(apiKey);
        var wasWritten = await client.GeneratePdf(payload, "./output/generate-html-output.pdf");
    }
}public class PDFGenerateSimpleExample {
  public static void main(String[] args) {
    ObjectMapper mapper = new ObjectMapper();
    ObjectNode payload = mapper.createObjectNode();
    payload.put("html", "<h1 class='header-one'>What is Lorem Ipsum?</h1> <p> Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the <strong>1500s</strong>, when an unknown printer took a galley of type and scrambled it to make a type specimen book. </p>");
    payload.put("css", "body { font-size: 14px; color: #171717; } .header-one { text-decoration: underline; }");
    // your Anvil API_KEY
    RestClient client = new RestClient(API_KEY);
    HttpResponse<byte[]> response = client.generatePdf(mapper.writeValueAsString(payload));
    Files.write(Paths.get("output/generate-html-output.pdf"), response.body());
    System.out.println("Fill PDF finished");
  }
}def get_data():
  return {
    "title": "Example HTML to PDF",
    "type": "html",
    "data": {
      "html": "<h1 class='header-one'>What is Lorem Ipsum?</h1> <p>Lorem Ipsum has been the industry's standard dummy text ever since the <strong>1500s</strong>, when an unknown printer took a galley of type and scrambled it to make a type specimen book.</p>",
      "css": "body { font-size: 14px; color: #171717; } .header-one { text-decoration: underline; }"
    },
  }
def generate_html_pdf():
  anvil = Anvil(api_key=API_KEY)
  payload = get_data()
  print("Making HTML PDF generation request...")
  res = anvil.generate_pdf(payload)
  # Write the bytes to disk
  with open(FILE_OUTPUT, "wb") as f:
      f.write(res)
  print("Finished!")Anvil is more than a PDF tool. We specialize in helping product teams build custom paperwork solutions using these building blocks: PDF services, E-signatures, and Webforms.
Anvil Workflows tie all these building blocks together, automating your paperwork and saving your team time and resources.

Anvil uses digital certificates, specifically the industry-standard Public Key Infrastructure (PKI) framework, for identity verification in document signing. This involves creating a pair of certificates – public and private. Read more