diff --git a/apps/OpenSign/src/components/pdf/Placeholder.js b/apps/OpenSign/src/components/pdf/Placeholder.js index 2ea536599..c401d51cd 100644 --- a/apps/OpenSign/src/components/pdf/Placeholder.js +++ b/apps/OpenSign/src/components/pdf/Placeholder.js @@ -651,7 +651,7 @@ function Placeholder(props) { const fontSize = (size || 12) * containerScale * props.scale; //isMinHeight to set text box minimum height if (isMinHeight) { - return fontSize * 1.5 + "px"; + return fontSize * 1.2 + "px"; } else { return fontSize + "px"; } diff --git a/apps/OpenSign/src/constant/Utils.js b/apps/OpenSign/src/constant/Utils.js index 06ee5a760..5e2435128 100644 --- a/apps/OpenSign/src/constant/Utils.js +++ b/apps/OpenSign/src/constant/Utils.js @@ -465,27 +465,27 @@ export const defaultWidthHeight = (type) => { case "checkbox": return { width: 15, height: 15 }; case textInputWidget: - return { width: 150, height: 25 }; + return { width: 150, height: 13 }; case "dropdown": return { width: 120, height: 22 }; case "initials": return { width: 50, height: 50 }; case "name": - return { width: 150, height: 25 }; + return { width: 150, height: 13 }; case "company": - return { width: 150, height: 25 }; + return { width: 150, height: 13 }; case "job title": - return { width: 150, height: 25 }; + return { width: 150, height: 13 }; case "date": return { width: 100, height: 20 }; case "image": return { width: 70, height: 70 }; case "email": - return { width: 150, height: 20 }; + return { width: 150, height: 13 }; case radioButtonWidget: return { width: 5, height: 10 }; case textWidget: - return { width: 150, height: 25 }; + return { width: 150, height: 13 }; default: return { width: 150, height: 60 }; } @@ -1013,7 +1013,7 @@ export const calculateInitialWidthHeight = (widgetData) => { const intialText = widgetData; const span = document.createElement("span"); span.textContent = intialText; - span.style.font = `14px`; // here put your text size and font family + span.style.font = `12px`; // here put your text size and font family span.style.display = "hidden"; document.body.appendChild(span); const width = span.offsetWidth; @@ -1303,12 +1303,6 @@ export const changeImageWH = async (base64Image) => { }); }; -//function to calculate font size of text area widgets -const calculateFontSize = (position) => { - const fontSize = position?.options?.fontSize || 12; - return fontSize; -}; - const getWidgetsFontColor = (type) => { switch (type) { case "red": @@ -1324,14 +1318,7 @@ const getWidgetsFontColor = (type) => { } }; //function for embed multiple signature using pdf-lib -export const multiSignEmbed = async ( - widgets, - pdfDoc, - signyourself, - scale, - pdfOriginalWH, - containerWH -) => { +export const multiSignEmbed = async (widgets, pdfDoc, signyourself, scale) => { // `fontBytes` is used to embed custom font in pdf const fontBytes = await fileasbytes( "https://cdn.opensignlabs.com/webfonts/times.ttf" @@ -1341,11 +1328,6 @@ export const multiSignEmbed = async ( let hasError = false; for (let item of widgets) { if (hasError) break; // Stop the outer loop if an error occurred - const containerScale = getContainerScale( - pdfOriginalWH, - item?.pageNumber, - containerWH - ); const typeExist = item.pos.some((data) => data?.type); let updateItem; @@ -1432,7 +1414,17 @@ export const multiSignEmbed = async ( return y; } } else { - return resizePos; + const WidgetsTypeTextExist = [ + textWidget, + textInputWidget, + "name", + "company", + "job title", + "date", + "email" + ].includes(position.type); + const yPosition = WidgetsTypeTextExist ? resizePos + 6 : resizePos; + return yPosition; } }; const color = position?.options?.fontColor; @@ -1508,7 +1500,7 @@ export const multiSignEmbed = async ( }); } } else if (widgetTypeExist) { - const fontSize = calculateFontSize(position); + const fontSize = position?.options?.fontSize || 12; parseInt(fontSize); let textContent; if (position?.options?.response) { @@ -1541,7 +1533,6 @@ export const multiSignEmbed = async ( lines.push(currentLine.trim()); return lines; }; - // Function to break text into lines based on when user go next line on press enter button const breakTextIntoLines = (textContent, width) => { const lines = []; @@ -1562,7 +1553,6 @@ export const multiSignEmbed = async ( return lines; }; - //check if text content have `\n` string it means user press enter to go next line and handle condition //else auto adjust text content according to container width const lines = isNewOnEnterLineExist @@ -1589,7 +1579,6 @@ export const multiSignEmbed = async ( } } else if (position.type === "dropdown") { const fontsize = parseInt(position?.options?.fontSize) || 12; - const dropdownRandomId = "dropdown" + randomId(); const dropdown = form.createDropdown(dropdownRandomId); dropdown.addOptions(position?.options?.values); @@ -1688,7 +1677,7 @@ export const multiSignEmbed = async ( } if (!hasError) { const pdfBytes = await pdfDoc.saveAsBase64({ useObjectStreams: false }); - // console.log("pdf", pdfBytes); + //console.log("pdf", pdfBytes); return pdfBytes; } else { return { diff --git a/apps/OpenSign/src/pages/PdfRequestFiles.js b/apps/OpenSign/src/pages/PdfRequestFiles.js index 0e0748d3f..d327a2371 100644 --- a/apps/OpenSign/src/pages/PdfRequestFiles.js +++ b/apps/OpenSign/src/pages/PdfRequestFiles.js @@ -924,9 +924,7 @@ function PdfRequestFiles(props) { widgets, pdfDoc, isSignYourSelfFlow, - scale, - pdfOriginalWH, - containerWH + scale ); // console.log("pdfte", pdfBytes); //get ExistUserPtr object id of user class to get tenantDetails diff --git a/apps/OpenSign/src/pages/PlaceHolderSign.js b/apps/OpenSign/src/pages/PlaceHolderSign.js index c35a24c82..3e671e512 100644 --- a/apps/OpenSign/src/pages/PlaceHolderSign.js +++ b/apps/OpenSign/src/pages/PlaceHolderSign.js @@ -814,9 +814,7 @@ function PlaceHolderSign() { placeholder, pdfDoc, isSignYourSelfFlow, - scale, - pdfOriginalWH, - containerWH + scale ); const pdfUrl = await convertBase64ToFile(pdfDetails[0].Name, pdfBase64); const tenantId = localStorage.getItem("TenantId"); diff --git a/apps/OpenSign/src/pages/SignyourselfPdf.js b/apps/OpenSign/src/pages/SignyourselfPdf.js index ec4acfbdf..54930292a 100644 --- a/apps/OpenSign/src/pages/SignyourselfPdf.js +++ b/apps/OpenSign/src/pages/SignyourselfPdf.js @@ -457,9 +457,7 @@ function SignYourSelf() { const getWidth = widgetTypeExist ? calculateInitialWidthHeight(widgetValue).getWidth : defaultWidthHeight(dragTypeValue).width; - const getHeight = widgetTypeExist - ? calculateInitialWidthHeight(widgetValue).getHeight - : defaultWidthHeight(dragTypeValue).height; + const getHeight = defaultWidthHeight(dragTypeValue).height; dropObj = { xPosition: getXPosition / (containerScale * scale), yPosition: getYPosition / (containerScale * scale), @@ -661,9 +659,7 @@ function SignYourSelf() { xyPostion, pdfDoc, isSignYourSelfFlow, - scale, - pdfOriginalWH, - containerWH + scale ); // console.log("pdf", pdfBytes); //function for call to embed signature in pdf and get digital signature pdf