Angular Common - Object Structures - PdfCell
An object that configures export to PDF settings in a DataGrid cell.
import { Cell } from "devextreme/pdf_exporter"
The customDrawCell and customizeCell functions use this object.
app.component.html
app.component.ts
app.module.ts
- <dx-button ...
- (onClick)="exportGrid($event)">
- </dx-button>
- <dx-data-grid ... >
- <!-- ... -->
- </dx-data-grid>
- import { Component } from '@angular/core';
- import { exportDataGrid as exportDataGridToPdf } from 'devextreme/pdf_exporter';
- import { jsPDF } from 'jspdf';
- import 'jspdf-autotable';
- @Component({
- selector: 'app-root',
- templateUrl: './app.component.html',
- styleUrls: ['./app.component.css']
- })
- export class AppComponent {
- @ViewChild(DxDataGridComponent, { static: false }) dataGrid: DxDataGridComponent;
- exportGrid() {
- const doc = new jsPDF();
- exportDataGridToPdf({
- jsPDFDocument: doc,
- component: this.dataGrid.instance,
- customizeCell: function(options) {
- const { gridCell, pdfCell } = options;
- if(gridCell.rowType === 'data') {
- pdfCell.font = { size: 20 };
- }
- }
- }).then(() => {
- doc.save('Customers.pdf');
- })
- }
- }
- import { BrowserModule } from '@angular/platform-browser';
- import { NgModule } from '@angular/core';
- import { AppComponent } from './app.component';
- import { DxDataGridModule, DxButtonModule } from 'devextreme-angular';
- @NgModule({
- declarations: [
- AppComponent
- ],
- imports: [
- BrowserModule,
- DxDataGridModule,
- DxButtonModule
- ],
- providers: [ ],
- bootstrap: [AppComponent]
- })
- export class AppModule { }
borderWidth
Type:
Default Value: 0.5
Uses the measure units that are specified in the constructor of the jsPDFDocument object.
drawBottomBorder
Type:
app.component.html
app.component.ts
app.module.ts
- <dx-button ...
- (onClick)="exportGrid($event)">
- </dx-button>
- <dx-data-grid ... >
- <!-- ... -->
- </dx-data-grid>
- import { Component } from '@angular/core';
- import { exportDataGrid as exportDataGridToPdf } from 'devextreme/pdf_exporter';
- import { jsPDF } from 'jspdf';
- @Component({
- selector: 'app-root',
- templateUrl: './app.component.html',
- styleUrls: ['./app.component.css']
- })
- export class AppComponent {
- @ViewChild(DxDataGridComponent, { static: false }) dataGrid: DxDataGridComponent;
- exportGrid() {
- const doc = new jsPDF();
- exportDataGridToPdf({
- jsPDFDocument: doc,
- component: this.dataGrid.instance,
- customizeCell: function(options) {
- const { gridCell, pdfCell } = options;
- if(gridCell.rowType === 'data') {
- pdfCell.drawBottomBorder = false;
- }
- }
- }).then(() => {
- doc.save('Customers.pdf');
- })
- }
- }
- import { BrowserModule } from '@angular/platform-browser';
- import { NgModule } from '@angular/core';
- import { AppComponent } from './app.component';
- import { DxDataGridModule, DxButtonModule } from 'devextreme-angular';
- @NgModule({
- declarations: [
- AppComponent
- ],
- imports: [
- BrowserModule,
- DxDataGridModule,
- DxButtonModule
- ],
- providers: [ ],
- bootstrap: [AppComponent]
- })
- export class AppModule { }
drawLeftBorder
Type:
app.component.html
app.component.ts
app.module.ts
- <dx-button ...
- (onClick)="exportGrid($event)">
- </dx-button>
- <dx-data-grid ... >
- <!-- ... -->
- </dx-data-grid>
- import { Component } from '@angular/core';
- import { exportDataGrid as exportDataGridToPdf } from 'devextreme/pdf_exporter';
- import { jsPDF } from 'jspdf';
- @Component({
- selector: 'app-root',
- templateUrl: './app.component.html',
- styleUrls: ['./app.component.css']
- })
- export class AppComponent {
- @ViewChild(DxDataGridComponent, { static: false }) dataGrid: DxDataGridComponent;
- exportGrid() {
- const doc = new jsPDF();
- exportDataGridToPdf({
- jsPDFDocument: doc,
- component: this.dataGrid.instance,
- customizeCell: function(options) {
- const { gridCell, pdfCell } = options;
- if(gridCell.rowType === 'data') {
- pdfCell.drawLeftBorder = false;
- }
- }
- }).then(() => {
- doc.save('Customers.pdf');
- })
- }
- }
- import { BrowserModule } from '@angular/platform-browser';
- import { NgModule } from '@angular/core';
- import { AppComponent } from './app.component';
- import { DxDataGridModule, DxButtonModule } from 'devextreme-angular';
- @NgModule({
- declarations: [
- AppComponent
- ],
- imports: [
- BrowserModule,
- DxDataGridModule,
- DxButtonModule
- ],
- providers: [ ],
- bootstrap: [AppComponent]
- })
- export class AppModule { }
drawRightBorder
Type:
app.component.html
app.component.ts
app.module.ts
- <dx-button ...
- (onClick)="exportGrid($event)">
- </dx-button>
- <dx-data-grid ... >
- <!-- ... -->
- </dx-data-grid>
- import { Component } from '@angular/core';
- import { exportDataGrid as exportDataGridToPdf } from 'devextreme/pdf_exporter';
- import { jsPDF } from 'jspdf';
- @Component({
- selector: 'app-root',
- templateUrl: './app.component.html',
- styleUrls: ['./app.component.css']
- })
- export class AppComponent {
- @ViewChild(DxDataGridComponent, { static: false }) dataGrid: DxDataGridComponent;
- exportGrid() {
- const doc = new jsPDF();
- exportDataGridToPdf({
- jsPDFDocument: doc,
- component: this.dataGrid.instance,
- customizeCell: function(options) {
- const { gridCell, pdfCell } = options;
- if(gridCell.rowType === 'data') {
- pdfCell.drawRightBorder = false;
- }
- }
- }).then(() => {
- doc.save('Customers.pdf');
- })
- }
- }
- import { BrowserModule } from '@angular/platform-browser';
- import { NgModule } from '@angular/core';
- import { AppComponent } from './app.component';
- import { DxDataGridModule, DxButtonModule } from 'devextreme-angular';
- @NgModule({
- declarations: [
- AppComponent
- ],
- imports: [
- BrowserModule,
- DxDataGridModule,
- DxButtonModule
- ],
- providers: [ ],
- bootstrap: [AppComponent]
- })
- export class AppModule { }
drawTopBorder
Type:
app.component.html
app.component.ts
app.module.ts
- <dx-button ...
- (onClick)="exportGrid($event)">
- </dx-button>
- <dx-data-grid ... >
- <!-- ... -->
- </dx-data-grid>
- import { Component } from '@angular/core';
- import { exportDataGrid as exportDataGridToPdf } from 'devextreme/pdf_exporter';
- import { jsPDF } from 'jspdf';
- @Component({
- selector: 'app-root',
- templateUrl: './app.component.html',
- styleUrls: ['./app.component.css']
- })
- export class AppComponent {
- @ViewChild(DxDataGridComponent, { static: false }) dataGrid: DxDataGridComponent;
- exportGrid() {
- const doc = new jsPDF();
- exportDataGridToPdf({
- jsPDFDocument: doc,
- component: this.dataGrid.instance,
- customizeCell: function(options) {
- const { gridCell, pdfCell } = options;
- if(gridCell.rowType === 'data') {
- pdfCell.drawTopBorder = false;
- }
- }
- }).then(() => {
- doc.save('Customers.pdf');
- })
- }
- }
- import { BrowserModule } from '@angular/platform-browser';
- import { NgModule } from '@angular/core';
- import { AppComponent } from './app.component';
- import { DxDataGridModule, DxButtonModule } from 'devextreme-angular';
- @NgModule({
- declarations: [
- AppComponent
- ],
- imports: [
- BrowserModule,
- DxDataGridModule,
- DxButtonModule
- ],
- providers: [ ],
- bootstrap: [AppComponent]
- })
- export class AppModule { }
font
Type:
app.component.html
app.component.ts
app.module.ts
- <dx-button ...
- (onClick)="exportGrid($event)">
- </dx-button>
- <dx-data-grid ... >
- <!-- ... -->
- </dx-data-grid>
- import { Component } from '@angular/core';
- import { exportDataGrid as exportDataGridToPdf } from 'devextreme/pdf_exporter';
- import { jsPDF } from 'jspdf';
- @Component({
- selector: 'app-root',
- templateUrl: './app.component.html',
- styleUrls: ['./app.component.css']
- })
- export class AppComponent {
- @ViewChild(DxDataGridComponent, { static: false }) dataGrid: DxDataGridComponent;
- exportGrid() {
- const doc = new jsPDF();
- exportDataGridToPdf({
- jsPDFDocument: doc,
- component: this.dataGrid.instance,
- customizeCell: function(options) {
- const { gridCell, pdfCell } = options;
- if(gridCell.rowType === 'data') {
- pdfCell.font = { size: 20, style: 'bold', name: 'Arial' };
- }
- }
- }).then(() => {
- doc.save('Customers.pdf');
- })
- }
- }
- import { BrowserModule } from '@angular/platform-browser';
- import { NgModule } from '@angular/core';
- import { AppComponent } from './app.component';
- import { DxDataGridModule, DxButtonModule } from 'devextreme-angular';
- @NgModule({
- declarations: [
- AppComponent
- ],
- imports: [
- BrowserModule,
- DxDataGridModule,
- DxButtonModule
- ],
- providers: [ ],
- bootstrap: [AppComponent]
- })
- export class AppModule { }
horizontalAlign
Type:
Accepted Values: 'left' | 'center' | 'right'
The default alignment of the content depends on the dataType.
dataType | alignment |
---|---|
'number' | 'right' |
'boolean' | 'center' |
'string' | 'left' |
'date' | 'left' |
'datetime' | 'left' |
padding
Type:
Uses the measure units which are specified in the constructor of the jsPDFDocument object.
app.component.html
app.component.ts
app.module.ts
- <dx-button ...
- (onClick)="exportGrid($event)">
- </dx-button>
- <dx-data-grid ... >
- <!-- ... -->
- </dx-data-grid>
- import { Component } from '@angular/core';
- import { exportDataGrid as exportDataGridToPdf } from 'devextreme/pdf_exporter';
- import { jsPDF } from 'jspdf';
- @Component({
- selector: 'app-root',
- templateUrl: './app.component.html',
- styleUrls: ['./app.component.css']
- })
- export class AppComponent {
- @ViewChild(DxDataGridComponent, { static: false }) dataGrid: DxDataGridComponent;
- exportGrid() {
- const doc = new jsPDF();
- exportDataGridToPdf({
- jsPDFDocument: doc,
- component: this.dataGrid.instance,
- customizeCell: function(options) {
- const { gridCell, pdfCell } = options;
- if(gridCell.rowType === 'data') {
- pdfCell.padding = { top: 10, right: 10, bottom: 10, left: 10 };
- }
- }
- }).then(() => {
- doc.save('Customers.pdf');
- })
- }
- }
- import { BrowserModule } from '@angular/platform-browser';
- import { NgModule } from '@angular/core';
- import { AppComponent } from './app.component';
- import { DxDataGridModule, DxButtonModule } from 'devextreme-angular';
- @NgModule({
- declarations: [
- AppComponent
- ],
- imports: [
- BrowserModule,
- DxDataGridModule,
- DxButtonModule
- ],
- providers: [ ],
- bootstrap: [AppComponent]
- })
- export class AppModule { }
wordWrapEnabled
Type:
The default value depends on the value of the DataGrid's wordWrapEnabled property.
Feel free to share topic-related thoughts here.
If you have technical questions, please create a support ticket in the DevExpress Support Center.
Thank you for the feedback!
If you have technical questions, please create a support ticket in the DevExpress Support Center.