@@ -121,18 +121,20 @@ private function signUsingVisibleElements(): string {
121121 $ param = $ this ->getJSignParam ();
122122 $ originalParam = clone $ param ;
123123 foreach ($ visibleElements as $ element ) {
124- $ param
125- ->setJSignParameters (
126- $ originalParam ->getJSignParameters () .
127- ' -pg ' . $ element ->getFileElement ()->getPage () .
128- ' -llx ' . $ element ->getFileElement ()->getLlx () .
129- ' -lly ' . $ element ->getFileElement ()->getLly () .
130- ' -urx ' . $ element ->getFileElement ()->getUrx () .
131- ' -ury ' . $ element ->getFileElement ()->getUry () .
132- ' --l2-text "" ' .
133- ' -V ' .
134- ' --bg-path ' . $ element ->getTempFile ()
135- );
124+ $ params = [
125+ '-pg ' => $ element ->getFileElement ()->getPage (),
126+ '-llx ' => $ element ->getFileElement ()->getLlx (),
127+ '-lly ' => $ element ->getFileElement ()->getLly (),
128+ '-urx ' => $ element ->getFileElement ()->getUrx (),
129+ '-ury ' => $ element ->getFileElement ()->getUry (),
130+ '--l2-text ' => $ this ->getSignatureText (),
131+ '-V ' => null ,
132+ '--bg-path ' => $ element ->getTempFile (),
133+ ];
134+ $ param ->setJSignParameters (
135+ $ originalParam ->getJSignParameters () .
136+ $ this ->listParamsToString ($ params )
137+ );
136138 $ jSignPdf ->setParam ($ param );
137139 $ signed = $ this ->signWrapper ($ jSignPdf );
138140 $ param ->setPdf ($ signed );
@@ -142,6 +144,23 @@ private function signUsingVisibleElements(): string {
142144 return '' ;
143145 }
144146
147+ public function getSignatureText (): string {
148+ $ signatureText = parent ::getSignatureText ();
149+ $ signatureText = '" ' . str_replace ('" ' , '\" ' , $ signatureText ) . '" ' ;
150+ return $ signatureText ;
151+ }
152+
153+ private function listParamsToString (array $ params ): string {
154+ $ paramString = '' ;
155+ foreach ($ params as $ flag => $ value ) {
156+ $ paramString .= ' ' . $ flag ;
157+ if ($ value !== null && $ value !== '' ) {
158+ $ paramString .= ' ' . $ value ;
159+ }
160+ }
161+ return $ paramString ;
162+ }
163+
145164 private function signWrapper (JSignPDF $ jSignPDF ): string {
146165 try {
147166 $ param = $ this ->getJSignParam ();
0 commit comments