Parcourir la source

Added transform for print logo on all print pages, remove table header from all print pages and print it only at the first page

master
Safet Purkovic il y a 4 ans
Parent
révision
504b8ef4dc

+ 4
- 1
src/parameters/parameters.js Voir le fichier

@@ -14,7 +14,10 @@ const parameters = () =>
new Param("br-removetablestyles",["table"]),
new Param("br-hide",["table","p","span"]),
new Param("br-color",["h1","p","h4"]),
new Param("br-bordercolor",["table","div"])
new Param("br-bordercolor",["table","div"]),
new Param("br-headereverypage",["p","img"]),
new Param("br-headerfirstpageonly",["table"]),
new Param("br-landscapetable",["table"])
];
}


+ 20
- 0
src/transformations/header-transformations/header-every-page-transformation.css Voir le fichier

@@ -0,0 +1,20 @@
@media screen {
.header-show {
display: none;
}
}
@media print {
.header-show {
position: fixed;
z-index: 9999;
left:0;
top: 0;
margin-bottom: 300px;
}
table { page-break-after:auto }
tr { page-break-inside:avoid; page-break-after:auto }
td { page-break-inside:avoid; page-break-after:auto }
thead { page-break-inside: auto; }
/* display:table-header-group - Da bude na svakoj stranici */
tfoot { display:table-footer-group }
}

+ 17
- 0
src/transformations/header-transformations/header-every-page-transformation.js Voir le fichier

@@ -0,0 +1,17 @@
import './header-every-page-transformation.css';
import { Transform } from "../transform";
import $ from 'jquery';

export class HeaderEveryPageTransform extends Transform
{
constructor(param)
{
super(param);
}
execute(){
$(this.object).addClass('header-show');
}
rolback(){
$(this.object).removeClass('header-show');
}
}

+ 9
- 0
src/transformations/header-transformations/header-first-page-only-transformation.css Voir le fichier

@@ -0,0 +1,9 @@
@media print{

table { page-break-after:auto }
tr { page-break-inside:avoid; page-break-after:auto }
td { page-break-inside:avoid; page-break-after:auto }
thead { page-break-inside: auto; }
/* display:table-header-group */
tfoot { display:table-footer-group }
}

+ 17
- 0
src/transformations/header-transformations/header-first-page-only-transformation.js Voir le fichier

@@ -0,0 +1,17 @@
import './header-every-page-transformation.css';
import { Transform } from "../transform";
import $ from 'jquery';

export class HeaderFirstPageOnlyTransform extends Transform
{
constructor(param)
{
super(param);
}
execute(){
$(this.object).addClass('header-only-first-page');
}
rolback(){
$(this.object).removeClass('header-only-first-page');
}
}

+ 7
- 0
src/transformations/layout-table-transformation/landscape-transformation.css Voir le fichier

@@ -0,0 +1,7 @@
@media print
{
.table-landscape
{
transform: rotate(90deg);
}
}

+ 17
- 0
src/transformations/layout-table-transformation/landscape-transformation.js Voir le fichier

@@ -0,0 +1,17 @@
import './landscape-transformation.css';
import { Transform } from "../transform";
import $ from 'jquery';

export class LandscapeTableTransform extends Transform
{
constructor(param)
{
super(param);
}
execute(){
$(this.object).addClass('table-landscape');
}
rolback(){
$(this.object).removeClass('table-landscape');
}
}

+ 9
- 1
src/transforms-factory.js Voir le fichier

@@ -1,5 +1,4 @@
import { HideTransform } from "./transformations/hide-transform";
import { Transform } from "./transformations/transform";
import { ColorTransform } from "./transformations/color-transformation/color-transforamtion";
import { RemoveTableColumnTransform } from "./transformations/remove-table-column-transform";
import { RemoveTableRowTransform } from "./transformations/remove-table-row-transform";
@@ -7,6 +6,9 @@ import { ShowNumberRowsTransformation } from "./transformations/show-number-rows
import { BorderColorTransform } from "./transformations/border-color-transformation/border-color-transformation";
import { RemoveTableHeaderTransform } from "./transformations/remove-table-header-transform";
import { RemoveTableStylesTransform } from "./transformations/remove-table-styles";
import { LandscapeTableTransform } from "./transformations/layout-table-transformation/landscape-transformation";
import { HeaderEveryPageTransform } from "./transformations/header-transformations/header-every-page-transformation";
import { HeaderFirstPageOnlyTransform } from "./transformations/header-transformations/header-first-page-only-transformation";

export class TransformsFactory{
produce(code,object,selectors)
@@ -33,6 +35,12 @@ export class TransformsFactory{
return new ShowNumberRowsTransformation(param);
case "br-bordercolor":
return new BorderColorTransform(param);
case "br-landscapetable":
return new LandscapeTableTransform(param);
case "br-headereverypage":
return new HeaderEveryPageTransform(param);
case "br-headerfirstpageonly":
return new HeaderFirstPageOnlyTransform(param);
}

return null;

Chargement…
Annuler
Enregistrer