有很多将图像编码到Base64的例子.但有没有办法通过简单地操作实际的Base64代码来改变图像的大小或分辨率?
您的Base64代码可能是:
iVBORw0KGgoAAAANSUhEUgAAAWQAAAFjCAIAAACFfObPAAAAA3NCSVQICAjb4U/gAAAgAE ...等.
是否有算法或公式允许您操作Base64字符串以更改图像的大小或更改分辨率?
在此先感谢您的帮助:)
UPDATE
我觉得因为提出这个问题而被降级,我觉得有点苛刻.谁在降级我,为什么?
我的问题是针对那些看着渐进式图像,数据处理和WebP格式的人......这是一种无损且有损的图像压缩.
我对创建Canvas元素和操作画布内容不感兴趣.我对在客户端或服务器上使用的方法感兴趣,并且可以通过http或socket通信发送.
那我为什么要降级呢?
我没有展示研究,因为我知道我已经看过了什么..为什么这没用?为什么不清楚?我觉得我被降级了,因为其他人只是没有得到它......这不是我的错.
我有一个Pug模板,它使用Bootstrap 4作为'布局'并从Express/Mongoose服务器接收数据.
我正在填充MongoDB中的表单,以便可以编辑内容.我一直在寻找方法根据mongoDB文档中的值使下拉列表"选择"一个选项.
我已经看到了从头开始构建下拉列表并将选项设置为"已选择"的方法,但是表单已经生成并且已经有一个下拉列表.我只需要将选项与mongoDB文档中的值匹配,并将选项设置为在列表中显示.
Pug模板如下:
.row
.col-sm-6
.form-group
label.control-label.requiredField(for='propertyType')
| Property Type
span.asteriskField *
.col-xs-12
select#propertyType.select.form-control.input-lg(form='addProperty', name='propertyType')
option(value='0') -- Select --
option(value='6') Home
option(value='7') Condo
option(value='10') Single Family Home
option(value='11') Town House
option(value='12') City Apartment
option(value='13') Villa
script.
var propertyType = document.getElementById('propertyType');
for (var i = 0; i < propertyType.options.length; i++) {
if (propertyType.options[i].value = #{property.typeId}) {
propertyType.options[i].selected = 'selected';
propertyType.selectedIndex = i;
break;
}
}
Run Code Online (Sandbox Code Playgroud)
如果我保持列出的代码,那么获取新值的实际选项是第一个' - 选择 - ',它的值从'0'变为'6',这是MongoDB文档中的值.
如果我更改javascript以将值#{property.TypeId}传递给'selectedIndex',如下所示:
propertyType.selectedIndex = #{property.typeId};
Run Code Online (Sandbox Code Playgroud)
然后索引的值发生变化,'selected'选项改变 - '6',但这会选择选项的第6个选项,而不选择值为'6'的选项.
下拉是唯一我无法填充的东西,所以任何帮助都将非常感激.