|
@@ -7,6 +7,7 @@ let JV = require('../rpt_component/jpc_value_define');
|
|
|
let pdf = require('pdfkit');
|
|
|
let jpcCmnHelper = require('../rpt_component/helper/jpc_helper_common');
|
|
|
let SCREEN_DPI = jpcCmnHelper.getScreenDPI();
|
|
|
+let fontUtil = require('./rpt_font_util');
|
|
|
|
|
|
module.exports = {
|
|
|
exportSvgStr: function (pagesData, offsetX, offsetY) {
|
|
@@ -109,6 +110,9 @@ function buildText(destRst, cell, font, control, offsetX, offsetY, adjustY, pdf_
|
|
|
let orgFontHeight = parseInt(font[JV.FONT_PROPS[JV.FONT_PROP_IDX_HEIGHT]]);
|
|
|
let fontWeight = (font[JV.FONT_PROPS[JV.FONT_PROP_IDX_BOLD]] === 'T')?"bold":"normal";
|
|
|
let fontStyle = (font[JV.FONT_PROPS[JV.FONT_PROP_IDX_ITALIC]] === 'T')?"italic":"normal";
|
|
|
+ let dftFontBold = font[JV.FONT_PROPS[3]];
|
|
|
+ let dftFontItalic = font[JV.FONT_PROPS[4]];
|
|
|
+ let fontFile = __dirname + '/pdf_base_files/' + fontUtil.getActualFont(font[JV.FONT_PROPS[0]], (dftFontBold === 'T'), (dftFontItalic === 'T')) + '.ttf';
|
|
|
let left = parseInt(cell[JV.PROP_AREA][JV.PROP_LEFT]) + offsetX + 0.5,
|
|
|
right = parseInt(cell[JV.PROP_AREA][JV.PROP_RIGHT]) + offsetX + 0.5,
|
|
|
top = parseInt(cell[JV.PROP_AREA][JV.PROP_TOP]) + offsetY + adjustY,
|
|
@@ -142,15 +146,7 @@ function buildText(destRst, cell, font, control, offsetX, offsetY, adjustY, pdf_
|
|
|
for (let vidx = 0; vidx < values.length; vidx++) {
|
|
|
//check whether need to adjust the font size
|
|
|
let dftFontHeight = orgFontHeight;
|
|
|
- let dftFontBold = font[JV.FONT_PROPS[3]];
|
|
|
- let dftFontItalic = font[JV.FONT_PROPS[4]];
|
|
|
- if (dftFontBold && dftFontBold === 'T') {
|
|
|
- pdf_doc.font(__dirname+'/pdf_base_files/hwxsb.ttf');
|
|
|
- }else if(dftFontItalic && dftFontItalic === 'T'){
|
|
|
- pdf_doc.font(__dirname+'/pdf_base_files/Smart-italic.ttf');
|
|
|
- }else {
|
|
|
- pdf_doc.font(__dirname+'/pdf_base_files/Smart.ttf');
|
|
|
- }
|
|
|
+ pdf_doc.font(fontFile);
|
|
|
pdf_doc.fontSize(dftFontHeight);
|
|
|
while ((right - left) <= pdf_doc.widthOfString(values[vidx])) {
|
|
|
if (dftFontHeight > 6) {
|