class TcpPdfExampleController in TCPDF 8
Hierarchy
- class \Drupal\Core\Controller\ControllerBase implements ContainerInjectionInterface uses LoggerChannelTrait, MessengerTrait, LinkGeneratorTrait, RedirectDestinationTrait, UrlGeneratorTrait, StringTranslationTrait
- class \Drupal\tcpdf_example\Controller\TcpPdfExampleController
Expanded class hierarchy of TcpPdfExampleController
File
- tcpdf_example/
src/ Controller/ TcpPdfExampleController.php, line 13 - Contains \Drupal\tcpdf_example\Controller\TcpPdfExampleController
Namespace
Drupal\tcpdf_example\ControllerView source
class TcpPdfExampleController extends ControllerBase {
public function downloadPdf($example_name) {
switch ($example_name) {
case 'simple':
$pdf = $this
->generateSimplePdf();
break;
default:
return $this
->t('No such example.');
}
// Tell the browser that this is not an HTML file to show, but a pdf file to
// download.
header('Content-Type: application/pdf');
header('Content-Length: ' . strlen($pdf));
header('Content-Disposition: attachment; filename="mydocument.pdf"');
print $pdf;
return [];
}
public function exampleContents() {
$page = [];
$page['example_pdf_link'] = [
'#title' => $this
->t('Basic pdf'),
'#type' => 'link',
'#url' => Url::fromRoute('tcpdf_example.download_pdf', array(
'example_name' => 'simple',
)),
];
return $page;
}
/**
* Generates a pdf file using TCPDF module.
*
* @return string Binary string of the generated pdf.
*/
protected function generateSimplePdf() {
// Get the content we want to convert into pdf.
$html_template = [
'#theme' => 'tcpdf_example_basic_html',
];
$html = \Drupal::service('renderer')
->render($html_template);
// Never make an instance of TCPDF or TCPDFDrupal classes manually.
// Use tcpdf_get_instance() instead.
$tcpdf = tcpdf_get_instance();
/* DrupalInitialize() is an extra method added to TCPDFDrupal that initializes
* some TCPDF variables (like font types), and makes possible to change the
* default header or footer without creating a new class.
*/
$tcpdf
->DrupalInitialize(array(
'footer' => array(
'html' => 'This is a test!! <em>Bottom of the page</em>',
),
'header' => array(
'callback' => array(
'function' => 'tcpdf_example_default_header',
// You can pass extra data to your callback.
'context' => array(
'welcome_message' => 'Hello, tcpdf example!',
),
),
),
));
// Insert the content. Note that DrupalInitialize automatically adds the first
// page to the pdf document.
$tcpdf
->writeHTML($html);
return $tcpdf
->Output('', 'S');
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
ControllerBase:: |
protected | property | The configuration factory. | |
ControllerBase:: |
protected | property | The current user service. | 1 |
ControllerBase:: |
protected | property | The entity form builder. | |
ControllerBase:: |
protected | property | The entity manager. | |
ControllerBase:: |
protected | property | The entity type manager. | |
ControllerBase:: |
protected | property | The form builder. | 2 |
ControllerBase:: |
protected | property | The key-value storage. | 1 |
ControllerBase:: |
protected | property | The language manager. | 1 |
ControllerBase:: |
protected | property | The module handler. | 2 |
ControllerBase:: |
protected | property | The state service. | |
ControllerBase:: |
protected | function | Returns the requested cache bin. | |
ControllerBase:: |
protected | function | Retrieves a configuration object. | |
ControllerBase:: |
private | function | Returns the service container. | |
ControllerBase:: |
public static | function |
Instantiates a new instance of this class. Overrides ContainerInjectionInterface:: |
40 |
ControllerBase:: |
protected | function | Returns the current user. | 1 |
ControllerBase:: |
protected | function | Retrieves the entity form builder. | |
ControllerBase:: |
protected | function | Retrieves the entity manager service. | |
ControllerBase:: |
protected | function | Retrieves the entity type manager. | |
ControllerBase:: |
protected | function | Returns the form builder service. | 2 |
ControllerBase:: |
protected | function | Returns a key/value storage collection. | 1 |
ControllerBase:: |
protected | function | Returns the language manager service. | 1 |
ControllerBase:: |
protected | function | Returns the module handler. | 2 |
ControllerBase:: |
protected | function |
Returns a redirect response object for the specified route. Overrides UrlGeneratorTrait:: |
|
ControllerBase:: |
protected | function | Returns the state storage service. | |
LinkGeneratorTrait:: |
protected | property | The link generator. | 1 |
LinkGeneratorTrait:: |
protected | function | Returns the link generator. | |
LinkGeneratorTrait:: |
protected | function | Renders a link to a route given a route name and its parameters. | |
LinkGeneratorTrait:: |
public | function | Sets the link generator service. | |
LoggerChannelTrait:: |
protected | property | The logger channel factory service. | |
LoggerChannelTrait:: |
protected | function | Gets the logger for a specific channel. | |
LoggerChannelTrait:: |
public | function | Injects the logger channel factory. | |
MessengerTrait:: |
protected | property | The messenger. | 29 |
MessengerTrait:: |
public | function | Gets the messenger. | 29 |
MessengerTrait:: |
public | function | Sets the messenger. | |
RedirectDestinationTrait:: |
protected | property | The redirect destination service. | 1 |
RedirectDestinationTrait:: |
protected | function | Prepares a 'destination' URL query parameter for use with \Drupal\Core\Url. | |
RedirectDestinationTrait:: |
protected | function | Returns the redirect destination service. | |
RedirectDestinationTrait:: |
public | function | Sets the redirect destination service. | |
StringTranslationTrait:: |
protected | property | The string translation service. | 1 |
StringTranslationTrait:: |
protected | function | Formats a string containing a count of items. | |
StringTranslationTrait:: |
protected | function | Returns the number of plurals supported by a given language. | |
StringTranslationTrait:: |
protected | function | Gets the string translation service. | |
StringTranslationTrait:: |
public | function | Sets the string translation service to use. | 2 |
StringTranslationTrait:: |
protected | function | Translates a string to the current language or to a given language. | |
TcpPdfExampleController:: |
public | function | ||
TcpPdfExampleController:: |
public | function | ||
TcpPdfExampleController:: |
protected | function | Generates a pdf file using TCPDF module. | |
UrlGeneratorTrait:: |
protected | property | The url generator. | |
UrlGeneratorTrait:: |
protected | function | Returns the URL generator service. | |
UrlGeneratorTrait:: |
public | function | Sets the URL generator service. | |
UrlGeneratorTrait:: |
protected | function | Generates a URL or path for a specific route based on the given parameters. |