소스 검색

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 4 년 전
부모
커밋
504b8ef4dc

+ 4
- 1
src/parameters/parameters.js 파일 보기

@@ -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 파일 보기

@@ -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 파일 보기

@@ -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 파일 보기

@@ -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 파일 보기

@@ -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 파일 보기

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

+ 17
- 0
src/transformations/layout-table-transformation/landscape-transformation.js 파일 보기

@@ -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 파일 보기

@@ -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;

Loading…
취소
저장