This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository faxtomail. See https://gitlab.nuiton.org/codelutin/faxtomail.git commit 87888f5332e04d95657cacbbb0261858afb90396 Author: jcouteau <couteau@codelutin.com> Date: Tue Oct 23 09:11:28 2018 +0200 fixes #10123 : force font-size to 1 when font-size:0 --- .../services/service/EmailServiceImpl.java | 4 + .../services/service/EmailServiceTest.java | 9 + .../faxtomail/services/service/ImageUtilTest.java | 29 ++- .../src/test/resources/emails/test10123.eml | 252 +++++++++++++++++++++ 4 files changed, 291 insertions(+), 3 deletions(-) diff --git a/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/EmailServiceImpl.java b/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/EmailServiceImpl.java index c41a64bb..5b9c275b 100644 --- a/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/EmailServiceImpl.java +++ b/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/service/EmailServiceImpl.java @@ -2353,6 +2353,10 @@ public class EmailServiceImpl extends FaxToMailServiceSupport implements EmailSe String defaultImageIfMalformedUrl = serviceContext.getApplicationConfig().getDefaultImageIfMalformedUrl(); content = FaxToMailServiceUtils.encodeImageSourcesInEmail(content, defaultImageIfMalformedUrl); + //On remplace les font-size:0 pour éviter les font-size too small + //cf #10123 + content = content.replaceAll("font-size:0", "font-size:1"); + contents.add(content); } } diff --git a/faxtomail-service/src/test/java/com/franciaflex/faxtomail/services/service/EmailServiceTest.java b/faxtomail-service/src/test/java/com/franciaflex/faxtomail/services/service/EmailServiceTest.java index 0699c5ad..4fa1a8e3 100644 --- a/faxtomail-service/src/test/java/com/franciaflex/faxtomail/services/service/EmailServiceTest.java +++ b/faxtomail-service/src/test/java/com/franciaflex/faxtomail/services/service/EmailServiceTest.java @@ -371,6 +371,15 @@ public class EmailServiceTest extends AbstractFaxToMailServiceTest { } + /** + * Test qui permet de vérifier la génération de sPDF pour les mails contenant des font-size:0 + */ + @Test + public void test10123() { + testConvertHTMLToPdf("test10123"); + + } + protected void testConvertHTMLToPdf(String emailId) { File tempDirectory = FileUtils.getTempDirectory(); diff --git a/faxtomail-service/src/test/java/com/franciaflex/faxtomail/services/service/ImageUtilTest.java b/faxtomail-service/src/test/java/com/franciaflex/faxtomail/services/service/ImageUtilTest.java index dd2d0330..105dfba9 100644 --- a/faxtomail-service/src/test/java/com/franciaflex/faxtomail/services/service/ImageUtilTest.java +++ b/faxtomail-service/src/test/java/com/franciaflex/faxtomail/services/service/ImageUtilTest.java @@ -12,17 +12,40 @@ package com.franciaflex.faxtomail.services.service; * it under the terms of the GNU General Public License as * published by the Free Software Foundation, either version 3 of the * License, or (at your option) any later version. - * + * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. - * + * * You should have received a copy of the GNU General Public * License along with this program. If not, see * <http://www.gnu.org/licenses/gpl-3.0.html>. * #L% */ -public class ImageUtilTest { +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.apache.pdfbox.pdmodel.PDDocument; +import org.apache.pdfbox.pdmodel.graphics.image.LosslessFactory; +import org.junit.Test; + +import javax.imageio.ImageIO; +import java.awt.image.BufferedImage; +import java.io.File; +import java.io.IOException; + +//class used as utility to test/debug image related problems +public class ImageUtilTest extends AbstractFaxToMailServiceTest { + + private static final Log log = LogFactory.getLog(ImageUtilTest.class); + + @Test + public void testReadImage() throws IOException { + File file = new File("src/test/resources/image/image001.png"); + BufferedImage image = ImageIO.read(file); + PDDocument document = new PDDocument(); + LosslessFactory.createFromImage(document, image); + } + } diff --git a/faxtomail-service/src/test/resources/emails/test10123.eml b/faxtomail-service/src/test/resources/emails/test10123.eml new file mode 100644 index 00000000..322be555 --- /dev/null +++ b/faxtomail-service/src/test/resources/emails/test10123.eml @@ -0,0 +1,252 @@ +Received: from S8-EXC-P02.mac-groupe.net ([fe80::9da1:47f4:5b99:92e6]) by + S8-EXC-P02.mac-groupe.net ([fe80::9da1:47f4:5b99:92e6%16]) with mapi id + 14.01.0289.001; Wed, 17 Oct 2018 10:30:28 +0200 +From: ADRIAENS Nicolas <nicolas.adriaens@france-fermetures.fr> +To: adv-adriaens <adv-adriaens@france-fermetures.fr> +Subject: Fwd: Commande. +Thread-Topic: Commande. +Thread-Index: AQHUZfBO4qaQ9bizDU2G1ApBJx4jDaUjG2/D +Date: Wed, 17 Oct 2018 08:30:27 +0000 +Message-ID: <67B61F95-BD2D-4E37-BAE3-57FCA8534C6F@france-fermetures.fr> +References: <CAKJ6bZ=zGLv-S=hd9eJb_Kes7Eb1ra3sp5gVwh+Me40b94fOew@mail.gmail.com> +In-Reply-To: <CAKJ6bZ=zGLv-S=hd9eJb_Kes7Eb1ra3sp5gVwh+Me40b94fOew@mail.gmail.com> +Accept-Language: fr-FR, en-US +Content-Language: fr-FR +X-MS-Exchange-Organization-AuthMechanism: 04 +X-MS-Exchange-Organization-AuthSource: S8-EXC-P02.mac-groupe.net +X-MS-Has-Attach: +X-MS-Exchange-Organization-SCL: -1 +X-MS-TNEF-Correlator: +Content-Type: multipart/alternative; + boundary="_000_67B61F95BD2D4E37BAE357FCA8534C6Ffrancefermeturesfr_" +MIME-Version: 1.0 + +--_000_67B61F95BD2D4E37BAE357FCA8534C6Ffrancefermeturesfr_ +Content-Type: text/plain; charset="Windows-1252" +Content-Transfer-Encoding: quoted-printable + + + +Envoy=E9 de mon iPhone + +D=E9but du message transf=E9r=E9 : + + + + Exp=E9diteur: TOUT HABITAT Menuiserie <touthabitat.m@gmail.com<mailto:to= +uthabitat.m@gmail.com>> + Date: 17 octobre 2018 =E0 10:06:16 UTC+2 + Destinataire: <nicolas.adriaens@france-fermetures.fr<mailto:nicolas.adri= +aens@france-fermetures.fr>> + Objet: Commande. + + + + <https://mailtrack.io/trace/mail/b17356f00fbc769c84d1f7e93c7b87e679d499= +c7.png?u=3D3314755> + Ref=E9rence Perrier : + + 1 porte de garage sectionnelle MIAMI ch=EAne dor=E9e ( alu ) + avec portillon sur la gauche vue int=E9rieur poussant droit. + Motoris=E9 + + H 1915 L 2170 + hauteur sous linteau 270 + =E9coin=E7on 140 droit et gauche + 2 t=E9l=E9commandes + panneau rainur=E9 woodgrain. + + Cordialement, + + + -- + + Cordialement, + + + Service menuiserie TOUT HABITAT. + + _____ + + + <https://image.noelshack.com/fichiers/2018/20/4/1526555869-touth-m.png>= + <https://image.noelshack.com/fichiers/2018/25/1/1529329028-capture-d-ecra= +n-2018-06-18-a-15-36-18.png> <https://image.noelshack.com/fichiers/2018/26= +/2/1530017024-unknown.jpg> <https://image.noelshack.com/fichiers/2018/26/2= +/1530017018-qualibat-rge-logo.jpg> <https://image.noelshack.com/fichiers/2= +018/26/2/1530017005-garantie-decennale.png> + + TOUT HABITAT + SAS au capital de 10 000 =80 + 9 all=E9 Robert Baudoin + 71380 Chatenoy-en-bresse + =95=95Tel. Agence : 09 67 40 39 03 + + =95=95E-mail : touthabitat.m@gmail.com<mailto:wesley.lara.tc@gmail.com> + +Mailtrack <https://mailtrack.io?utm_source=3Dgmail&utm_medium=3Dsignature&u= +tm_campaign=3Dsignaturevirality6&> Sender notified by +Mailtrack<https://mailtrack.io?utm_source=3Dgmail&utm_medium=3Dsignature&ut= +m_campaign=3Dsignaturevirality6&> 17/10/18 =E0 10:00:11 + + +--_000_67B61F95BD2D4E37BAE357FCA8534C6Ffrancefermeturesfr_ +Content-Type: text/html; charset="Windows-1252" +Content-Transfer-Encoding: quoted-printable + +<html> +<head> +<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3DWindows-1= +252"> +</head> +<body dir=3D"auto"> +<br> +<br> +<div id=3D"AppleMailSignature" dir=3D"ltr">Envoy=E9 de mon iPhone</div> +<div dir=3D"ltr"><br> +D=E9but du message transf=E9r=E9 :<br> +<br> +</div> +<blockquote type=3D"cite"> +<div dir=3D"ltr"><b>Exp=E9diteur:</b> TOUT HABITAT Menuiserie <<a href= +=3D"mailto:touthabitat.m@gmail.com">touthabitat.m@gmail.com</a>><br> +<b>Date:</b> 17 octobre 2018 =E0 10:06:16 UTC+2<br> +<b>Destinataire:</b> <<a href=3D"mailto:nicolas.adriaens@france-fermetur= +es.fr">nicolas.adriaens@france-fermetures.fr</a>><br> +<b>Objet:</b> <b>Commande.</b><br> +<br> +</div> +</blockquote> +<blockquote type=3D"cite"> +<div dir=3D"ltr"> +<div dir=3D"ltr"><img width=3D"0" height=3D"0" class=3D"mailtrack-img" alt= +=3D"" style=3D"display:flex" src=3D"https://mailtrack.io/trace/mail/b17356f= +00fbc769c84d1f7e93c7b87e679d499c7.png?u=3D3314755"> +<div></div> +Ref=E9rence Perrier : +<div><br> +</div> +<div>1 porte de garage sectionnelle MIAMI ch=EAne dor=E9e ( alu )</div> +<div>avec portillon sur la gauche vue int=E9rieur poussant droit.</div> +<div>Motoris=E9 </div> +<div><br> +</div> +<div>H 1915 L 2170 </div> +<div>hauteur sous linteau 270</div> +<div>=E9coin=E7on 140 droit et gauche </div> +<div>2 t=E9l=E9commandes</div> +<div>panneau rainur=E9 woodgrain.</div> +<div><br> +</div> +<div>Cordialement,<br clear=3D"all"> +<div><br> +</div> +-- <br> +<div dir=3D"ltr" class=3D"gmail_signature" data-smartmail=3D"gmail_signatur= +e"> +<div dir=3D"ltr"> +<div> +<div dir=3D"ltr"> +<div> +<div dir=3D"ltr"> +<div> +<div dir=3D"ltr"> +<div> +<div dir=3D"ltr"> +<div> +<div><font size=3D"4">Cordialement,</font></div> +<div><font size=3D"4"><br> +</font></div> +<div><font size=3D"4">Service menuiserie TOUT HABITAT.</font></div> +<div><font size=3D"4"> </font></div> +<div dir=3D"ltr"> +<hr> +<br> +</div> +<div dir=3D"ltr"><img src=3D"https://image.noelshack.com/fichiers/2018/20/4= +/1526555869-touth-m.png" width=3D"96" height=3D"72"><img src=3D"https://ima= +ge.noelshack.com/fichiers/2018/25/1/1529329028-capture-d-ecran-2018-06-18-a= +-15-36-18.png" width=3D"200" height=3D"81" style=3D"color:rgb(0,0,0);font-f= +amily:-webkit-standard"><img src=3D"https://image.noelshack.com/fichiers/20= +18/26/2/1530017024-unknown.jpg" width=3D"96" height=3D"53" style=3D"color:r= +gb(0,0,0);font-family:-webkit-standard"><img src=3D"https://image.noelshack= +.com/fichiers/2018/26/2/1530017018-qualibat-rge-logo.jpg" width=3D"96" heig= +ht=3D"84" style=3D"color:rgb(0,0,0);font-family:-webkit-standard"><img src= +=3D"https://image.noelshack.com/fichiers/2018/26/2/1530017005-garantie-dece= +nnale.png" width=3D"96" height=3D"71"></div> +<div dir=3D"ltr"><br> +</div> +<div dir=3D"ltr"> +<div style=3D"font-size:12.8px"><font size=3D"2" color=3D"#0000ff"><b>TOUT = +HABITAT</b></font></div> +<div style=3D"font-size:12.8px"><font size=3D"2" color=3D"#0000ff"><b>SAS a= +u capital de 10 000 =80 </b></font></div> +<div style=3D"font-size:12.8px"><font size=3D"2" color=3D"#0000ff"><b>9 all= +=E9 Robert Baudoin</b></font></div> +<div style=3D"font-size:12.8px"><font size=3D"2" color=3D"#0000ff"><b>71380= + Chatenoy-en-bresse</b></font></div> +<div style=3D"font-size:12.8px"><span style=3D"margin:0px;padding:0px;borde= +r:0px currentcolor;color:rgb(128,0,128);line-height:20px;font-family:Verdan= +a,Arial,Geneva,Helvetica,sans-serif;vertical-align:baseline;background-colo= +r:rgb(245,245,245)"><font color=3D"#808080"><font face=3D"Wingdings">(<span= +> </span></font></font><font color=3D"#0000ff"><strong>Tel. + Agence</strong><span> </span>:</font></span><span style=3D"color:rgb(= +30,30,30);line-height:20px;font-family:Verdana,Arial,Geneva,Helvetica,sans-= +serif;background-color:rgb(245,245,245)"><span> </span></span><span st= +yle=3D"color:rgb(30,30,30);line-height:18px;font-family:Verdana,Arial,Genev= +a,Helvetica,sans-serif;background-color:rgb(245,245,245)">09 + 67 40 39 03</span><font size=3D"2" color=3D"#0000ff"><b><br> +</b></font></div> +<div style=3D"font-size:12.8px"><span style=3D"line-height:18px;font-family= +:Verdana,Arial,Geneva,Helvetica,sans-serif;background-color:rgb(245,245,245= +)"><span style=3D"margin:0px;padding:0px;border:0px currentcolor;line-heigh= +t:20px;vertical-align:baseline"><b><font color=3D"#808080" face=3D"Wingding= +s" style=3D"color:rgb(128,0,128)">*<span> </span></font></b><strong st= +yle=3D"color:rgb(0,0,255)">E-mail</strong><b><font color=3D"#0000ff" style= +=3D"color:rgb(128,0,128)"> :</font><font color=3D"#1e1e1e"> </fon= +t></b></span><span style=3D"color:rgb(30,30,30);line-height:20px"><a href= +=3D"mailto:wesley.lara.tc@gmail.com" target=3D"_blank">touthabitat.m@gmail.= +com</a></span></span></div> +</div> +</div> +</div> +</div> +</div> +</div> +</div> +</div> +</div> +</div> +</div> +</div> +<br> +<div class=3D"mt-signature"> +<table border=3D"0" cellpadding=3D"8" cellspacing=3D"0" style=3D"user-selec= +t: none;"> +<tbody> +<tr> +<td><a href=3D"https://mailtrack.io?utm_source=3Dgmail&utm_medium=3Dsig= +nature&utm_campaign=3Dsignaturevirality6&" class=3D"" style=3D"text= +-decoration:none"><img src=3D"https://s3.amazonaws.com/mailtrack-signature/= +sender_notified.gif" alt=3D"Mailtrack" class=3D"" width=3D"32" height=3D"32= +"> +</a></td> +<td><span style=3D"color:#777">Sender notified by</span> <br> +<a href=3D"https://mailtrack.io?utm_source=3Dgmail&utm_medium=3Dsignatu= +re&utm_campaign=3Dsignaturevirality6&" class=3D"mt-install" style= +=3D"color:#4374f7">Mailtrack</a> +<span style=3D"color:transparent;font-size:0">17/10/18 =E0 10:00:11</span> = +</td> +<td></td> +</tr> +</tbody> +</table> +</div> +</div> +</div> +</div> +</blockquote> +</body> +</html> + +--_000_67B61F95BD2D4E37BAE357FCA8534C6Ffrancefermeturesfr_-- -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.