所以这是我的情况,以及我提出的解决问题的解决方案.我创建了一个包含TinyMCE的应用程序,允许用户创建用于发布的HTML内容.用户可以在其标记中包含图像,并拖动/调整影响IMG标记中最终宽度/高度属性的图像.这一切都很棒,用户可以包含图像并将它们调整大小/重新定位到所需的外观.但是一个大问题是我现在向客户端发送一个(可能)更大的图像,只是让浏览器将图像调整为请求的宽度/高度属性.所有带宽和丢失的加载时间....
所以我的解决方案是预处理我的用户标记内容,扫描所有IMG标记并解析出Height/Width/Src属性.然后将每个img的SRC标记设置为phpThumb请求,并将解析后的Height/Width传递到缩略图URL.这将创建缩小尺寸的图像(以CPU和缓存为代价优化带宽).您对此解决方案有何看法?我已经看过其他帖子,人们使用mod_rewrite做类似的事情,但我想影响页面服务上的内容,而不是在收到图片请求时操纵它们.....对这个设计的任何想法?
我需要一些精细细节的帮助,因为我的正则表达式技能需要一些工作,但我的时间很短,并承诺尽快支付我的技术知识债务.为了使正则表达式更容易,我可以肯定一些事情.只有需要此处理的img标签才会有一个width =""height =""属性(使用双引号和较低的套接文本,但我认为如果TinyMCE更改,匹配文本不区分大小写会更好)
所以正则表达式只匹配必要的Img标签,也许还有另外三个正则表达式来提取src,宽度和高度?
感谢大家.
我怎么这样做?我看了phpThumb.php并设置了以下内容,所以我不知道为什么我在我的演示页面上收到错误
ini_set('display_errors', 1);
error_reporting(E_ALL);
Run Code Online (Sandbox Code Playgroud) 我无法让Chrome在DOM加载后识别图像宽度或高度.Image通过phpThumb脚本(调整图像大小)动态加载.如果我拿走动态网址并将其替换为图片的直接网址我没有任何问题,一切都可以在Chrome中运行但是使用动态网址时,Chrome似乎无法计算图片的宽度或高度.
有人对此有经验吗?它正在努力.
有问题的代码是:
var theImage = new Image();
theImage.src = $image.attr('src');
var imgwidth = theImage.width;
var imgheight = theImage.height;
Run Code Online (Sandbox Code Playgroud)
其中imgwidth = 0; 对于chrome,但IE,Firefox都报告了正确的大小.
我正在使用 PHPThumb来调整图像的朗读时间.它工作正常,但它在PNG图像上添加黑色背景.我怎么能解决这个问题?我的道路是
phpThumb/phpThumb.php?src={imagepath}&w=95&h=92
Run Code Online (Sandbox Code Playgroud) 我正在开发一个项目,需要在网站的不同部分使用各种尺寸的用户图片.要提供的图像是各种尺寸的主要图像的缩略图,例如35×35像素,50×50像素和100×100像素.我想让用户只上传一张图片.
我使用PHP和Apache作为webserver.该网站最初的访问量估计约为40万,并且可能会显着增加.我的问题是:
我应该将图片调整为我需要的各种尺寸,同时在上传时保留原件吗?或者我应该只在需要和显示时调整图片大小(使用类似于phpThumb的东西)?
请我想知道这是更好的性能和速度智慧和资源管理明智的,考虑到交通的水平,并有可能在给定的时间是高达100网站上的并发用户.
我不知道如何用phpThumb类生成缩略图,带有文件路径的数组.然后将每个图像的结果保存在其他路径上,但名称相同.
谢谢你们 ;)
编辑:我的代码是这样的:
echo "A iniciar gerador de miniaturas para a área de cliente: \n";
include $wincli['files']['phpThumbClass'];
$files = file_list($wincli['dirs']['logos']);
$phpThumb = new phpThumb();
foreach( $files as $file ) {
echo " # A converter o ficheiro '".basename($file)."' : ";
if(is_file($file)){
$phpThumb->setSourceFilename($file);
$phpThumb->setParameter('w', 880);
$phpThumb->setParameter('h', 241);
$phpThumb->setParameter('q', 90);
$phpThumb->setParameter('zc', 1);
$outputFilename = $wincli['dirs']['logosthumbs'].$file;
if($phpThumb->GenerateThumbnail()){
if($phpThumb->RenderToFile($outputFilename)){
echo "OK \n";
}else{
echo "Falhou (Ao guardar no ficheiro)\n";
}
}else{
echo "Falhou (Ao gerar miniatura)\n";
}
}else{
echo "Falhou (Ficheiro inexistente)\n";
} …
Run Code Online (Sandbox Code Playgroud) 我想在我的视图层使用phpThumb(http://phpthumb.sourceforge.net/)来自动调整一些图像的大小.
将phpThumb集成到CodeIgniter架构中的推荐方法是什么?有没有人这样做过,发现你更喜欢一种集成方法而不是另一种方法?
我基本上是在寻找使用phpThumb作为帮助器/库/ as-is代码等的意见.