wkhtmltopdf / wkhtmltopdf

Convert HTML to PDF using Webkit (QtWebKit)
https://wkhtmltopdf.org
GNU Lesser General Public License v3.0
14k stars 1.83k forks source link

Image size limit? #2389

Closed abengardino closed 9 years ago

abengardino commented 9 years ago

Hi all, I've been trying to generate PDFs out of my HTML file but there seems to be some kind of problem when I include images above 200px wide. This seems odd, but have you experienced this before? And if so, is there anything I can do to workaround this?

I'm using the latest version available - wkhtmltox-0.12.2.2_msvc2013-win64

Any comments will be appreciated. Thanks!

ashkulz commented 9 years ago

Without a minimal, reproducible test case as requested in the support page this issue cannot be investigated further.

abengardino commented 9 years ago

vivanco_imagen vivanco_encabezado

Okay, can you try with those ones? Here's the markup:

<!DOCTYPE html>
<html lang="en-US">
    <head>
        <meta charset="utf-8">
        <style>
            .italic { font-style: italic; }
        </style>
        <title>Presupuesto</title>
    </head>
    <body style="font-family:Calibri,'Droid Sans',Arial; font-size: 1.15em; ">

        <table border="0" align="center" width="80%">
            <tr>
                <td><p>Texto de preview</p></td>
            </tr>
        </table>

        <div style="text-align:center; width: 100%;">
    <img src="http://localhost/vivanco/public/files/h_20150529_162718.jpg" style="min-width: 50%; max-width: 100%;"></div>
<br/>

<table align="center" width="90%" cellspacing="0" cellpadding="5px" style="border-collapse: collapse;">
    <tr>
        <td width="20%" style="border: 1px solid crimson;"><span style="font-weight:bold;">Nombre:</span></td>
        <td width="30%" style="border: 1px solid crimson;">Prueba mĂșltiples subitems</td>
        <td width="5%">&nbsp;</td>
        <td rowspan="3" style="font-weight:bold; text-align: center; border-top: 3px solid crimson; font-size: 3em;">
            29/05/2015      </td>
    </tr>
    <tr>
        <td style="border: 1px solid crimson;"><span style="font-weight:bold;">Tel&eacute;fono:</span></td>
        <td style="border: 1px solid crimson;">123</td>
        <td>&nbsp;</td>
    </tr>
    <tr>
        <td style="border: 1px solid crimson;"><span style="font-weight:bold;">Mail:</span></td>
        <td style="border: 1px solid crimson;"></td>
        <td>&nbsp;</td>
    </tr>
    <tr>
        <td style="border: 1px solid crimson;"><span style="font-weight:bold;">Fecha evento:</span></td>
        <td style="border: 1px solid crimson;">30/05/2015</td>
        <td>&nbsp;</td>
        <td rowspan="2" style="font-weight:bold; text-align: center; border-top: 3px solid crimson; font-size: 1.5em;">Presupuesto Presupuesto Informal</td>
    </tr>
    <tr>
        <td style="border: 1px solid crimson;"><span style="font-weight:bold;">Comensales base:</span></td>
        <td style="border: 1px solid crimson;">15</td>
        <td>&nbsp;</td>
    </tr>
    <tr>
        <td style="border: 1px solid crimson;"><span style="font-weight:bold;">Tipo evento:</span></td>
        <td style="border: 1px solid crimson;">Presupuesto Informal</td>
        <td>&nbsp;</td>
        <td rowspan="2" style="padding-left: 15px; border-top: 3px solid crimson; border-bottom: 3px solid crimson;">
            <div style="font-weight: bold;">Anibal test</div>
            <div>Organizador de eventos</div>
            <div>123-456-789</div>
        </td>
    </tr>
    <tr>
        <td style="border: 1px solid crimson;"><span style="font-weight:bold;">Horario:</span></td>
        <td style="border: 1px solid crimson;">21:10 hs.</td>
        <td>&nbsp;</td>
    </tr>
</table>
<br/>
<table align="center" border="1" width="90%" cellspacing="0" cellpadding="5px" rules="groups">
    <tr>
        <td style="border: 1px solid crimson; background-color: lightcoral; color: white;"><span style="font-weight:bold; font-style:italic; font-size: 1.5em;">Notas</span></td>
    </tr>
            <tr style="border: 1px solid crimson;">
                            <td>&nbsp;</td>
                    </tr>
            <tr style="border: 1px solid crimson;">
                            <td style="background-color: mistyrose;">&nbsp;</td>
                    </tr>
            <tr style="border: 1px solid crimson;">
                            <td>&nbsp;</td>
                    </tr>
            <tr style="border: 1px solid crimson;">
                            <td style="background-color: mistyrose;">&nbsp;</td>
                    </tr>
            <tr style="border: 1px solid crimson;">
                            <td>&nbsp;</td>
                    </tr>
            <tr style="border: 1px solid crimson;">
                            <td style="background-color: mistyrose;">&nbsp;</td>
                    </tr>
    </table>
<hr style="page-break-after: always; color: white; border: 1px solid white;" />     
        <div style="text-align:center;">
                            <img src="http://localhost/vivanco/public/files/h_20150529_162718.jpg" style="min-width: 50%; max-width: 100%;">                <br/>
                                        <img src="http://localhost/vivanco/public/files/i_20150529_162718.png" style="min-width: 50%; max-width: 100%;">                <br/>
                    </div>
        <br/>

        <table border="0" align="center" width="80%">

            <tr>
                <td colspan="2">

                <div>
                    De mi consideraci&oacute;n:
        Muchas gracias por tenernos en cuenta para un momento tan especial como lo es su evento, por medio de la presente hacemos llegar la cotizaci&oacute;n solicitada para la cena a realizarse en el sal&oacute;n de Vivanco con exclusividad. Cualquier duda o modificaci&oacute;n estamos a tu entera disposici&oacute;n.
                </div>
                <br/>

                <div>
                    Prueba subitems             </div>
                <br/>

                <div>
                                                                        <div>
                                <div style="font-weight:bold; font-style:italic;">Recepci&oacute;n:</div>
                                <div></div>
                                <ul>
                        <li>
                Bocaditos Fr&iacute;os:             <ul>
                        <li>
                Pinchos capresse                            </li>
                                <li>
                Mini bruschettas con r&uacute;cula, jam&oacute;n crudo y tomates secos                          </li>
                                <li>
                Trencitas con jam&oacute;n crudo y lechuga                          </li>
                                <li>
                Bollitos de manteca con semillas de amapola rellenos con lomo, huevo y tomate                           </li>
                                <li>
                Scones de parmesano con queso crema, ciboulette y salm&oacute;n ahumado                         </li>
                                <li>
                Pan de nuez con queso crema y chutney de manzanas                           </li>
                                <li>
                Bocaditos de cebolla caramelizada                           </li>
                </ul>
            </li>
                                <li>
                Bocaditos Calientes:                <ul>
                        <li>
                Empanaditas de carne recubiertas con s&eacute;samo crocante                         </li>
                                <li>
                Bocaditos de hojaldre rellenos con ricota y espinaca                            </li>
                                <li>
                Tart&iacute;n de mix de hongos                          </li>
                                <li>
                Tempura de langostinos con salsa de miel y maracuy&aacute;                          </li>
                </ul>
            </li>
                            </ul>
                            </div>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            <div>
                                <div style="font-weight:bold; font-style:italic;">Entrada:</div>
                                <div>ofrecemos tres alternativas para que elija la de su preferencia, o bien, pueda combinar los ingredientes para obtener una &uacute;nica opci&oacute;n </div>
                                <ul>
                        <li>
                Bruschetta en pan de campo con jam&oacute;n crudo, olivas negras, alcaparras y tomate acompa&ntilde;ada con mezclum de hojas verdes                         </li>
                                <li>
                Ensalada alemana (cebolla, mayonesa y papas), acompa&ntilde;ada de arrollado de pollo y mezclum de hojas verdes con tomatitos cherry                            </li>
                                <li>
                Rodajas de jam&oacute;n crudo, acompa&ntilde;ado de flan acaramelado de choclo y ensalada hawaiana compuesta de choclo, zanahoria, arvejas, chauchas y kanikama aderezada con crema                         </li>
                </ul>
                            </div>
                                                                                                                                                                                                                                    <div>
                                <div style="font-weight:bold; font-style:italic;">Plato principal:</div>
                                <div>le ofrecemos tres alternativas para que elija la de su preferencia. La idea es tener un plato com&uacute;n para todos los comensales y preparar los pedidos especiales que haga falta, ejemplo platos vegetarianos, cel&iacute;acos, light, etc.</div>
                                <ul>
                        <li>
                Carr&eacute; de cerdo con salsa barbacoa y pur&eacute; de batatas con frutos rojos salteados en cas&iacute;s                            </li>
                                <li>
                Creps de lomo y salvia con salsa crema de champagne y ciboulette                            </li>
                                <li>
                Pechuga de pollo con salsa suave de quesos, mix de vegetales salteados a la manteca y milhojas de papas                         </li>
                </ul>
                            </div>
                                                                                                                                                                                                                                    <div>
                                <div style="font-weight:bold; font-style:italic;">Men&uacute; Infantil:</div>
                                <div></div>
                                <ul>
                        <li>
                Pechuguitas de pollo a la milanesa acompa&ntilde;ado de papas noisette                          </li>
                </ul>
                            </div>
                                                                                                                                            <div>
                                <div style="font-weight:bold; font-style:italic;">Men&uacute; para adultos:</div>
                                <div></div>
                                <ul>
                        <li>
                Entrada :               <ul>
                        <li>
                Ensalada alemana (Cebolla, mayonesa y papas), acompa&ntilde;ado de arollado de pollo y mezclum de hojas verdes con tomatitos cherry.                            </li>
                                <li>
                Rodajas de jam&oacute;n crudo, acompa&ntilde;ado de flan acaramelado de choclo y ensalada hawaiana compuesta de choclo, zanahoria, arvejas, chauchas y kanikama aderezada con crema                         </li>
                                <li>
                Bruschetta en pan de campo con jam&oacute;n crudo, olivas negras, alcaparras y tomate acompa&ntilde;ada con mezclum de hojas verdes                         </li>
                </ul>
            </li>
                                <li>
                Plato principal:                <ul>
                        <li>
                Carr&eacute; de cerdo con salsa barbacoa y pur&eacute; de batatas con frutos rojos salteados en cas&iacute;s                            </li>
                                <li>
                Creps de lomo y salvia con salsa crema de champagne y ciboulette                            </li>
                                <li>
                Pechuga de pollo con salsa suave de quesos, mix de vegetales salteados a la manteca y milhojas de papas                         </li>
                                <li>
                ADICIONAL                           </li>
                </ul>
            </li>
                                <li>
                Postre :                <ul>
                        <li>
                Borrachito de lim&oacute;n con helado de chocolate y zestes de naranja                          </li>
                                <li>
                Brownie tibio con helado de crema americana y salsa de chocolate                            </li>
                                <li>
                Bomb&oacute;n escoc&eacute;s con brochette de frutas y alm&iacute;bar de albahaca y menta                           </li>
                </ul>
            </li>
                </ul>
                            </div>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            <div>
                                <div style="font-weight:bold; font-style:italic;">Postre:</div>
                                <div>Ponemos a su disposici&oacute;n tres opciones para que elija la de su preferencia</div>
                                <ul>
                        <li>
                Borrachito de lim&oacute;n con helado de chocolate y zestes de naranja                          </li>
                                <li>
                Brownie tibio con helado de crema americana y salsa de chocolate                            </li>
                                <li>
                Bomb&oacute;n escoc&eacute;s con brochette de frutas y alm&iacute;bar de albahaca y menta                           </li>
                </ul>
                            </div>
                                                                                                                                                                                                                                    <div>
                                <div style="font-weight:bold; font-style:italic;">Mesa de Dulces y Caf&eacute;</div>
                                <div>Se armar&aacute; una isla de cafeter&iacute;a con variedades de t&eacute;s, caf&eacute; y leche. La misma se servir&aacute; junto con la mesa de dulces, seg&uacute;n la variedad de postres descripta a continuaci&oacute;n:</div>
                                <ul>
                        <li>
                Flan casero                         </li>
                                <li>
                Cheese Cake con frutos rojos                            </li>
                                <li>
                Rogel                           </li>
                                <li>
                Creps con salsa tibia de dulce de leche                         </li>
                                <li>
                Torta h&uacute;meda de chocolate                            </li>
                                <li>
                Delicia de manzanas (base de flan casero con manzanas acarameladas)                         </li>
                                <li>
                Helado de varios sabores                            </li>
                                <li>
                Torta dos texturas de chocolate                         </li>
                                <li>
                Espejo de frutas fileteadas                         </li>
                                <li>
                Cocktail de frutas                          </li>
                </ul>
                            </div>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <div>
                                <div style="font-weight:bold; font-style:italic;">En el Brindis</div>
                                <div></div>
                                <ul>
                        <li>
                Copa de Champagne                           </li>
                                <li>
                Torta Alusiva:              <ul>
                        <li>
                Chiffon de vainilla relleno con dulce de leche, merenguitos y mousse de chocolate recubierto de merengue italiano                           </li>
                                <li>
                Brownie con dulce de leche y merengue italiano                          </li>
                </ul>
            </li>
                </ul>
                            </div>
                                                                                                                                                                                                                                                                                <div>
                                <div style="font-weight:bold; font-style:italic;">Bebidas a servir:</div>
                                <div>todas son de consumo libre, la bebida alcoh&oacute;licas es solo para mayores de 18 a&ntilde;os.</div>
                                <ul>
                        <li>
                Agua mineral con y sin gas                          </li>
                                <li>
                Gaseosas l&iacute;nea Coca-Cola                         </li>
                                <li>
                Jugo de naranjas                            </li>
                                <li>
                Vino &quot;Omnium&quot; Malbec y Chardonnay                         </li>
                                <li>
                Vino &quot;Alma Mora&quot; Malbec y Chradonnay                          </li>
                                <li>
                Cerveza &quot;Stella Artois&quot;                           </li>
                                <li>
                Fernet con Coca-Cola                            </li>
                                <li>
                Gancia Batido                           </li>
                                <li>
                Campari con jugo de naranjas                            </li>
                                <li>
                Daikiry de Frutilla                         </li>
                                <li>
                Daikiry de Durazno                          </li>
                                <li>
                Caipirinha                          </li>
                                <li>
                Caipiroska                          </li>
                </ul>
                            </div>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        </div>
                <br/>

                <div style="page-break-inside: avoid; text-align:center; font-size:1.25em; padding:20px; border:1px dotted gray;">
                                            <div>
                            <span style="font-weight:bold;">Valor unitario comensales Adultos:</span> $10                       </div>
                                            <div>
                            <span style="font-weight:bold;">Valor unitario comensales Menores de 10 a&ntilde;os:</span> $5                      </div>
                                    </div>
                <br/>

                <div>
                    &bull;  La cantidad de comensales deber&aacute; ser confirmada 5 d&iacute;as antes del evento. 
&bull;  Si desea modificar el men&uacute; en alg&uacute;n aspecto o composici&oacute;n del plato, puede solicitarlo y nos ocuparemos de acercarle opciones que satisfagan su pedido.
&bull;  Una vez confirmado el evento deber&aacute; se&ntilde;arse la fecha para su reserva y acordar m&eacute;todo de pago. El valor presupuestado no incluye IVA.
&bull;  Los valores cotizados ser&aacute;n ajustados en un 3,5% mensual hasta la fecha de pago. En caso de ir realizando adelantos parciales los mismos deber&aacute;n corresponder a un n&uacute;mero entero de cubiertos por el precio unitario actualizado a la fecha de pago de cada adelanto, sobre los cuales no se efectuaran nuevos ajustes.
&bull;  Menores de 2 a&ntilde;os sin cargo, menores hasta 10 a&ntilde;os abonan el 60 % de la cotizaci&oacute;n de un adulto.
&bull;  El servicio de pantalla y v&iacute;deo cuenta con un reproductor de DVD y en todo caso una Pc para reproducir formatos AVI o MPG2.
&bull;  No se realizan por nuestra cuenta trabajos de edici&oacute;n y conversi&oacute;n de formatos. Preferentemente entregar los mismos 48hs antes del evento, por si hay que generar alguna modificaci&oacute;n a la calidad del v&iacute;deo, sonido o formato.
&bull;  Si el cliente desea traer cotill&oacute;n, est&aacute; prohibido papel picado, fuegos artificiales, espuma y serpentina en aerosol.
&bull;  Los costos del impuesto SADAIC Y AADICAPIF corren por cuenta del cliente, alcanzan los $ 3800,00 aproximadamente.  
&bull;  La playa de estacionamiento para los invitados tendr&aacute; costo por estad&iacute;a de un valor aproximado a los $ 100,00 por auto.
&bull;  Los valores de la presente cotizaci&oacute;n se calcularon para la base de comensales solicitada, en caso de reducirse dicho n&uacute;mero, el valor presupuestado podr&iacute;a sufrir modificaciones.
&bull;  Solicitamos un dep&oacute;sito de garant&iacute;a de $3000.00, se solicita para cubrir los posibles da&ntilde;os que pudiesen verificarse durante el evento. Ser&aacute; devuelto una vez finalizado el servicio en proporci&oacute;n a los gastos de reparaci&oacute;n o sustituci&oacute;n de material en caso de posibles da&ntilde;os.
&bull;  El presente presupuesto tiene validez por 20 d&iacute;as.
                </div>

                </td>
            </tr>
        </table>
    </body>
</html>