umanit/document-generator-bundle

此包用于驱动UmanIT开发的文档生成微服务:https://github.com/umanit/microservice-document-generator

1.0.0 2020-01-28 10:31 UTC

This package is auto-updated.

Last update: 2024-09-20 17:13:30 UTC


README

此包用于驱动UmanIT开发的文档生成微服务:https://github.com/umanit/microservice-document-generator

安装

$ composer require umanit/document-generator-bundle

该包依赖于HTTPlug来执行HTTP请求,因此您需要安装客户端实现才能使用它。例如,以下将使用HTTPlug消息工厂和Guzzle适配器。

$ composer require php-http/message php-http/guzzle6-adapter

配置

  • umanit_document_generator.base_uri:用于生成文档的API的基本URI。
  • umanit_document_generator.encryption_key:(可选)用于在调用API之前加密消息的密钥。它必须与微服务中定义的密钥匹配。

用法

仅暴露一个服务umanit_document_generator.document_generator。它提供了与微服务API通信所需的所有方法。

您可以使用URL或HTML源代码字符串生成PNG或PDF。

示例

<?php

$generator = $container->get('umanit_document_generator.document_generator');

// Get a PNG of https://www.google.fr
$image = $generator->generatePngFromUrl('https://www.google.fr');

// Get a PDF from a HTML code source
$pdf = $generator->generatePdfFromHtml('<html><body>Hello World!</body></html>');

每个方法都提供了一个额外的参数,用于指定微服务支持的其他选项,例如用于HTML生成的decode,或用于两种类型的pageOptionsscenario

数据加密

默认情况下,在调用API之前不会加密消息。如果您想启用此功能,请确保已将umanit_document_generator.encryption_key配置与微服务中的配置相同,然后在服务上调用encryptData(true)方法。可以通过调用encryptData(false)以相同的方式禁用加密。