ソースを参照

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;

読み込み中…
キャンセル
保存