我试图从画布中获取图像. PNG图像正确到位,但JPEG正在产生问题.我附上图片在这里.第一张图片是我的画布.随着PNG然后JPEG.so我想要我的JPEG图像与白色背景或我需要一个解决方案PNG到JPEG转换在JS
canvas =  $('.jSignature')[0];

            imgData = canvas.toDataURL();
            imgDatajpeg = canvas.toDataURL("image/jpeg");                   

            $(".sigCapHolder").append('<img src='+imgData+' /> ')
            $(".sigCapHolder").append('<img src='+imgDatajpeg+' /> ')

解决方法

原因

这样做的原因是画布是透明的.然而,透明度为黑色的透明Alpha通道,因此它不会显示在屏幕上.

另一边的JPEG不支持Alpha通道,因此默认的黑色将被剥去其alpha通道留下黑色背景.

你PNG支持alpha通道,因此它与canvas的工作方式兼容.

为了解决这个问题,您必须在绘制图像之前在画布上手动绘制白色背景:

var canvas =  $('.jSignature')[0];
var ctx = canvas.getContext('2d');

ctx.fillStyle = '#fff';  /// set white fill style
ctx.fillRect(0,canvas.width,canvas.height);

/// draw image and then use toDataURL() here

如何使用JavaScript将图像从PNG转换为JPEG?的更多相关文章

  1. 浅谈移动端网页图片预加载方案

    这篇文章主要介绍了浅谈移动端网页图片预加载方案 的相关资料,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

  2. ios – 如何通过编程方式为UIButtons组设置单个背景图像

    解决方法要使用选择器数组以编程方式创建按钮,您可以使用以下代码片段://定义策略

  3. iOS启动图像文件类型

    我正在开发一个iPad应用并阅读thispage表示发布图像必须是PNG格式,但在他们的iOS人工指南中,/uploads/20230807/dfd8683904f6d24601aef1a1128c8fa9.png,而不是“必须”.我想使用.jpg格式作为我的发布图像,因为我在.png中的发布图像大小仅为2mb,而.jpg格式只有90kb.谢谢解决方法您需要在Info.plist中指定UILaunhImageFile字段设置此信息将使系统查找Default.jpg及其所有变体而不是.png例如,我正在编写

  4. ios – 删除自定义标签栏上的行

    我制作了一个自定义标签栏,其中一个延伸到栏外.有一条线与中心标签栏重叠.无论如何我可以摆脱这个或隐藏吗?要做到这一点,我只需设置标签栏图像:知道如何隐藏线路吗?谢谢解决方法如果我正确理解你的问题,问题是坐标栏顶部的1-2英寸像素阴影.如果是这种情况,您可以像导航栏一样删除阴影.只需启用剪辑即可.

  5. ios – 无法编辑屏幕截图,performChanges阻止失败

    我正在开发一个允许用户使用PhotoKit编辑照片的应用程序.我之前将编辑过的照片以JPEG格式保存到磁盘.我想避免转换为JPEG,并已实施修改,以便这样做.它适用于使用相机拍摄的照片,但如果您尝试编辑屏幕截图,PHPhotoLibrary.sharedPhotoLibrary().performChanges块将失败并记录操作无法完成.(可可错误-1.).我不确定为什么这会导致performCh

  6. ios – UIBarButtonItem更改播放/暂停按钮的图像

    如果我们两个人为什么不工作感到困惑,我认为这是Swift2/Xcode7beta的变化这样做:希望有所帮助!

  7. ios – 使用UIPasteBoard复制图像(Swift)

    我最近看到了这个项目,用户可以从自定义键盘上点击GIF,他们会看到一个“复制”的工具包.我有一个问题:>如何在产品GIF-Tutorial中重现此工具提示?任何人都可以给我一些示例代码来使用.我理解如何使用UIPasteboard及其功能,但是当我在这个函数中输入UTI类型“public.png”时,我似乎无法使它工作:解决方法尝试使用此代码:你可以找到这个如何工作here!希望这可以帮助

  8. ios – 一个项目中不同目标的不同Default.png文件

    我正在尝试在我的项目中设置第二个目标,但是当我将Default*.png文件拖动到目标的LaunchImages部分时,它会告诉我要从我的原始目标覆盖Default.png.我们如何为不同的目标添加不同的启动图像?在您回答之前,请谅解我不是在寻找如何将不同的一般文件或图像包含在不同的目标.我明白,当我将它们拖到目标窗格的“启动映像”部分时,我正在处理关于Default.png启动映像的问题.解决方法在每个项目的info.plist中,您将创建一个指向启动映像的UILaunchImageFile项.

  9. ios – libpng错误:CgBI:未处理的关键块xcode 7.3

    切换到Xcode7.3,并在同一个项目上运行项目后,我得到以下错误–我已将项目目标的构建设置中的压缩PNG文件设置为NO.我清理并重建了项目,但仍然没有工作,并给出了上述错误.欢迎提出任何解决上述问题的建议/帮助.提前致谢.解决方法除了在项目目标的构建设置中关闭压缩PNG文件标志.我还关闭了另一个标志,即从PNG文件中删除纹理元数据.这样做,解决了问题libpng错误:CgBI:Xcode7.3中

  10. ios – 将许多图像添加到xcodes资产目录 – 如何管理命名以及每个1x,2x,3x?

    我有一个应用程序,我想在xcode的资产目录中添加许多图像.添加1x图像很简单,我只需要拖动第一个文件夹.然而,要添加2x和3x图像,我似乎需要手动拖动每个图像,我宁愿不这样做.每个图像的3种不同尺寸都是相同的,只有不同的尺寸.反正有自动化这个过程吗?

随机推荐

  1. js中‘!.’是什么意思

  2. Vue如何指定不编译的文件夹和favicon.ico

    这篇文章主要介绍了Vue如何指定不编译的文件夹和favicon.ico,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

  3. 基于JavaScript编写一个图片转PDF转换器

    本文为大家介绍了一个简单的 JavaScript 项目,可以将图片转换为 PDF 文件。你可以从本地选择任何一张图片,只需点击一下即可将其转换为 PDF 文件,感兴趣的可以动手尝试一下

  4. jquery点赞功能实现代码 点个赞吧!

    点赞功能很多地方都会出现,如何实现爱心点赞功能,这篇文章主要为大家详细介绍了jquery点赞功能实现代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  5. AngularJs上传前预览图片的实例代码

    使用AngularJs进行开发,在项目中,经常会遇到上传图片后,需在一旁预览图片内容,怎么实现这样的功能呢?今天小编给大家分享AugularJs上传前预览图片的实现代码,需要的朋友参考下吧

  6. JavaScript面向对象编程入门教程

    这篇文章主要介绍了JavaScript面向对象编程的相关概念,例如类、对象、属性、方法等面向对象的术语,并以实例讲解各种术语的使用,非常好的一篇面向对象入门教程,其它语言也可以参考哦

  7. jQuery中的通配符选择器使用总结

    通配符在控制input标签时相当好用,这里简单进行了jQuery中的通配符选择器使用总结,需要的朋友可以参考下

  8. javascript 动态调整图片尺寸实现代码

    在自己的网站上更新文章时一个比较常见的问题是:文章插图太宽,使整个网页都变形了。如果对每个插图都先进行缩放再插入的话,太麻烦了。

  9. jquery ajaxfileupload异步上传插件

    这篇文章主要为大家详细介绍了jquery ajaxfileupload异步上传插件,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

  10. React学习之受控组件与数据共享实例分析

    这篇文章主要介绍了React学习之受控组件与数据共享,结合实例形式分析了React受控组件与组件间数据共享相关原理与使用技巧,需要的朋友可以参考下

返回
顶部