我根据这些出色的stackoverflow资源从一些HTML构建了一个word文档:
对于那些即将尝试它的人来说,为自己做一些痛苦做好准备,因为Word至少可以解释它与CSS一起使用的内容.如果你想要列,你真的需要回到使用表格来解决问题.
我一直无法正确调整图像大小 - 用户上传的图像将在此Word文档中使用,我想根据'height'属性调整大小 - 高度为50px然后相应地缩放宽度.
似乎没有关于如何在网络上的任何地方执行此操作的文档.
我还使用了一些html2canvas代码将漂亮的(基于CSS的)条形图转换为图像,然后根据优秀的http://www.kubilayerdogan.net/?p直接在word文档中使用= 304.
这个图像打印效果不好,所以我打算在运行html2canvas代码之前在屏幕上(隐藏在内存中)(使用jQuery)使源HTML更大 - 这样我就可以拥有更大的图像,我可以然后缩小尺寸并获得更高的DPI数.
首先,我了解到CSS宽度和高度对Word中的图像没有影响.同样,以下内容不起作用.
<img class="cobrandedlogo" src="' . $logourl . '" height="50px" />';
Run Code Online (Sandbox Code Playgroud)
但我已经发现,使用"点"的工作原理是这样:
<img class="cobrandedlogo" src="' . $logourl . '" height="50" />';
Run Code Online (Sandbox Code Playgroud)
但是这会产生非常拉伸的图像(当然取决于源材料).我希望它根据原始图像进行缩放.
我正在使用PHP.
我发现这篇SO文章似乎有所帮助:计算图像大小比例以调整大小
这是我一直在使用的一些代码:
jQuery代码生成div的图像,稍微修改显示的HTML并将其提交到PHP文件:
var wordreport = jQuery('#container').clone();
jQuery(wordreport).find('#stats').html('<img src="http://improvedemployees.com/assets/teamstats/' + jQuery('#imgname').val() + '" />');
jQuery(wordreport).find('.columncontainer').each(function() {
jQuery(this).children().wrapAll('<table><tr>');
});
// these were 3 columns on the screen - converted to a table and …Run Code Online (Sandbox Code Playgroud) 我试图用给定的X,Y,宽度和高度坐标裁剪原始图像.但它没有正确裁剪图像.
这是我的代码
header('Content-type: image/jpeg');
$source_x = $_POST['x'];
$source_y = $_POST['y'];
$width = $_POST['w'];
$height = $_POST['h'];
$dest = imagecreatetruecolor($width, $height);
$src = imagecreatefromjpeg('path of the orignal Image');
imagecopy($dest, $src, 30, 30, $source_x, $source_y, $width, $height);
$cropped_image = "Path where to store the cropped image";
imagejpeg($dest, $cropped_image, 100);
Run Code Online (Sandbox Code Playgroud)
使用上面的代码,我能够裁剪图像,但它不会在给定的坐标中裁剪.
任何帮助都会有用.
我想计算调整大小的图像宽度和大小.我认为可能有三种情况:
1.图像宽度超出最大宽度限制: 然后将图像宽度调整为最大宽度,并根据最大宽度限制计算高度.例如,图像宽度为2248,高度为532.宽度超过但高度较小.因此,将宽度减小到最大值1024并计算高度,大约为242.
2.图像高度超过最大高度限制: 同样,将高度调整为最大高度并相应地计算宽度.
3.高度和宽度均超过最大高度和最大宽度: 进一步处理,确定图像是垂直还是水平.如果图像是水平的,请将宽度调整为最大宽度,并根据该值计算高度.否则,如果图像是垂直或正方形,则将高度调整为最大值并根据该值计算宽度.
对于这些情况,你能看看我的代码,给你的专家意见,如果有什么好处?还是可以改进?怎么样?
PS.我昨天问了类似的问题.在我之前的问题中,我不确定逻辑应该是什么,现在我知道它应该是什么(如上所述),并且想知道它是否有任何好处.谢谢你的帮助.
<?
$max_width = 1024;
$max_height = 768;
$img = "t2.jpg";
list($original_width, $original_height) = getimagesize($img);
if (($original_width > $max_width) OR ($original_height > $max_height))
{
//original width exceeds, so reduce the original width to maximum limit.
//calculate the height according to the maximum width.
if(($original_width > $max_width) AND ($original_height <= $max_height))
{
$percent = $max_width/$original_width;
$new_width = $max_width;
$new_height = round ($original_height * $percent);
}
//image height exceeds, recudece the height …Run Code Online (Sandbox Code Playgroud) 我目前正在尝试使用PHP获取图像的宽高比.例如,使用这些值:
$thumb_width = 912;
$thumb_height = 608;
Run Code Online (Sandbox Code Playgroud)
我可以得到纵横比(16:9,3:2,2:3等).所以在这种情况下:
$ratio = '3:2';
Run Code Online (Sandbox Code Playgroud)
问题是:我不知道它的新宽度或高度.所以我不能做那样的事情:(original height / original width) x new width = new height
有任何想法吗 ?
注意:我不想调整图像大小,只需计算其宽高比和宽高比.
我正在寻找帮助/建议找到最有效的方法来调整图像的大小尽可能小使用PHP/GD,同时保留原始图像的宽高比,但确保调整大小的图像大于定义的最小宽度和身高.
例如,调整大小的图像必须具有宽度> = 400且高度> = 300但应尽可能接近这些尺寸,同时保持原始高宽比.
这样"景观"图像的理想高度为300或稍大,宽度> = 400,"肖像"图像的理想宽度为400或稍大,高度> = 300.