调整画布图像大小

2024-02-25

我正在尝试上传图像并将它们放入不同大小的盒子中......为了让您了解该应用程序的功能:人们上传图像并将它们打印到海报上。

例如,我们的海报尺寸为 8" x 10"(活动区域),完整尺寸为 9.5" x 11.5",由于最小 DPI 为 100,我们通常将 8x10 乘以 100 = 800x1000。

这是一张图片,说明我有一张原始图片(https://i.stack.imgur.com/pFcY7.jpg https://i.stack.imgur.com/pFcY7.jpg)并需要它根据不同的尺寸进行适配。

我可能需要澄清一下,所以如果需要的话可以提问。

Thanks.


Canvas 的 context.drawImage 有一个版本,允许您在将图像绘制到画布时缩放图像。

如果您不成比例地调整大小(就像在示例中所做的那样),一些调整大小的图像将从画布上脱落。然后你的小猫看起来会扭曲(在你的例子中:垂直拉伸)

此示例代码仅使用宽度按比例调整大小。这样你的小猫就不会被拉伸。

// calculate how much to scale the resulting image

var originalWidth=16;
var originalHeight=20;
var desiredWidth=20;
var scalingFactor = desiredWidth/originalWidth;

// scale the original size proportionally

var newWidth=originalWidth*scalingFactor;
var newHeight=originalHeight*scalingFactor;

// resize the canvas to fit the desired image size
// Note: canvas is a reference to your html canvas element

canvas.width=newWidth;
canvas.height=newHeight;


// Draw the image to the canvas
// This version of drawImage allows you to scale the original image
// while you are drawing it to the canvas.

context.drawImage(
    originalImage,
    0,0,originalWidth,originalHeight,
    0,0,newWidth,newHeight);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

调整画布图像大小 的相关文章

  • Jackson (JSON) 当 Float 为 null 时抛出 JsonMappingException

    我正在使用 Spring 与 Jackson 和 jQuery 将表单作为对象传递 我的 pojo 包含可为 null 的浮点数 然而 当字段为空时 杰克逊会抛出异常 org codehaus jackson map JsonMapping
  • 从数组中的每个字符串值中删除公共单词

    我正在动态填充一个数组 该数组基于所有id页面上的 svideo tags 我怎样才能删除这个词dog从每个数组项的值 这是到目前为止填充的数组 我只需要删除这个词dog对于每个数组项 var players new Array video
  • 使用 jQuery 和 iFrame 下载文件

    我有以下代码来下载 csv file ajax url urlString contentType application json charset utf 8 dataType json cache false success funct
  • ASP.Net MVC:如何在 CSS 文件中使用 razor 变量

    根据我的场景 我需要存储这个路径 img 产品 pngrazor 变量中的图像 后来我想在 CSS 文件中使用该 razor 变量 下面的css代码在css文件中 test background url img product png no
  • 所选项目的值[重复]

    这个问题在这里已经有答案了 我正在使用一个
  • Bootstrap Html 列宽度太大

    var parentDiv document getElementById cc var statementDiv document createElement div var statementName document createEl
  • 使用 jQuery 更改 iFrame 的 HTML?

    有没有办法使用 jQuery 操作来自同一域的 iframe 的 HTML 谢谢您的帮助 您必须解析 iframe 内容 frameid contents find div html My html 更多这里 http api jquery
  • jquery和IE提交,ajaxForm不工作

    我有一个表格
  • 当放置在 css 中时,为什么 Firefox 无法读取带有空格的图像路径?

    例如 CSS 中类似这样的规则 div something background image url http i2 photobucket com albums y24 5609903697 Beyond Birthday BB39 jp
  • 我怎样才能知道哪个元素从js触发了事件?

    我有这样的事情 eventFire dblclick function EventHandler dblclickListener 我想要EventHandler监听双击事件 我想要EventHandler知道页面中的哪个元素触发此事件 我
  • Mousemove视差效果移动div的位置

    我正在尝试创建轻微的视差效果 我不确定它是否真的构成视差 但这是一个类似的想法 其中有四层 当鼠标移动时 它们以略有不同的速率移动 我找到了一个很好的例子 它提供了与我想要的类似的东西 http jsfiddle net X7UwG 2 h
  • Opera Mobile 不允许 jQuery 点击

    我一直在测试基础 CSS 框架 并且非常喜欢该框架提供的自定义表单元素 我建了一个页面 http eventgrapple com home 测试框架 它运行良好谷歌浏览器 http en wikipedia org wiki Google
  • 元素上的 jQuery touchSwipe 事件阻止滚动

    我有一些清单div元素垂直排序 使用jQuery TouchSwipe 插件 https github com mattbryson TouchSwipe Jquery Plugin添加了滑动事件来捕获左右滑动 想法是通过向左或向右滑动来从
  • 自动换行在 IE 中不起作用

    自动换行如下 The Breakage of Too Long Words div break word width 690px word wrap break word 确实包装了下表的单词 但它也使表格保持拉伸 我在表的这一部分中使用了
  • 选项:选择不工作 jquery 1.9

    下列 select option contains fish attr selected true 在 jQuery 1 9 以下的任何版本中都可以很好地工作 但在 jQuery 1 9 中根本不起作用 我一直在寻找有关任何更改的任何文档
  • 解密Javascript源代码[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我已经编写了一段 JavaScrip
  • JavaScript 将 NULL 转换为 0

    我正在使用 jQuery 来获取元素的高度 但如果该元素不存在 以下代码将返回 NULL height menu li active ul height returns integer or null 这是一种跨浏览器安全的方法 可以使用以
  • 打印html时在页面上打印页码

    我读过很多关于打印页码的网站 但当我尝试打印它时 我仍然无法让它显示在我的 html 页面上 所以 CSS 代码如下 page margin 10 top center font family sans serif font weight
  • 在 Div 的两个顶角创建一个三角形,用边框划分

    通过遵循以下问题和答案 我能够在 div 的右上角获得一个三角形 Div 中的右上角三角形 https stackoverflow com questions 18531959 how to create triangle shape in
  • jquery .slideToggle() 水平替代方案?

    SlideToggle 正是我想要的 只是我希望幻灯片是水平的 我现在有一个水平隐藏 显示和点击动画 但我想要切换选项 这样 当我单击活动链接时 它将播放反向动画并隐藏自身 最好的方法是什么 您可以使用animate方法 element a

随机推荐

  • 开发可以处理 HTTPS 连接的代理 servlet

    我开发了一个 Java servlet 它可以代理来自浏览器的 HTTP 请求 我在代理 HTTPS 请求时遇到问题 该 servlet 似乎没有从浏览器接收任何 HTTPS 请求 经过进一步调查 我注意到 HTTP 请求似乎以简单的 GE
  • 如何在Oracle SQL Developer中创建用户

    我是 Oracle sql Developer 3 1 07 42 的新手 刚刚将其安装在我的计算机上 我想建立一个新的连接 但它需要一个我不知道的用户名和密码 我已经用谷歌搜索很多天了 并且了解到有一些命令可以创建用户 但我不知道应该在哪
  • ng-bootstrap ngbDropdown 不起作用 Angular 4

    ng 下拉菜单不起作用 注 我遵循了答案here https stackoverflow com questions 43111633 ng bootstrap ngbdropdown not working in angular 4并将
  • Livereload 在 gulp 中不起作用

    我使用了 gulp webapp 来自 yeoman 的生成器 并添加了一些其他任务 如 gulp sass 和 gulp coffee 但现在 Livereload 没有启动 我需要看到这样的东西 gulp Live reload ser
  • 如何正确捕获 Aero/DWM 上的特定窗口

    背景资料 我编写了这个 MFC 应用程序并使用了很长时间 当用户按下 Print Screen Alt Print Screen 键时 它几乎会自动将屏幕截图保存到硬盘 我一直推迟使用任何与 Aero 相关的东西 直到现在我已经使用 Win
  • Django 缩进错误

    我是 Django 新手 正在教程中尝试这段代码 但现在我无法运行我的程序 因为出现以下错误 IndentationError at unexpected indent D django workspace django bookmarks
  • geb.driver.DriverCreationException:无法从回调创建驱动程序

    我正在设置一些 Geb 测试 但收到 geb driver DriverCreationException 无法从回调创建驱动程序 错误 Geb 将尝试启动测试浏览器窗口 但一旦启动 我的任何测试都不会运行 并且出现上述错误 我刚刚将 Fi
  • Volley JsonObjectRequest Post 请求不起作用

    我正在使用 android Volley 来发出请求 所以我使用这段代码 我不明白一件事 我检查我的服务器 参数始终为空 我认为 getParams 不起作用 我应该怎么做才能解决这个问题 RequestQueue queue MyVoll
  • 单击图像时选择单选按钮

    我想在单击他的图像时选择单选按钮 但它不起作用 这是我尝试过的 ul class options list li a class mydata href img class small image preview src value id
  • 如何将自定义类保存/序列化到设置文件?

    我有一个小类 包含两个字符串 如下所示 public class ReportType private string displayName public string DisplayName get return displayName
  • 如何组合目标文件(.o)来创建iOS静态库(.a)?

    我已经编译了一个库并且有目标文件 o 现在我想使用 ar 将它们组合到静态库中 我可以做到这一点 但是当我在 iOS 项目中添加该文件时 它说该库是存档类型 而链接架构是arm7 我该如何解决这个问题 Solved ar crs libst
  • 在 Eclipse 中以编程方式调整视图大小

    我正在测试一个non e4使用 SWTBot 的 RCP 应用程序 我需要更改视图的大小 移动窗框 我尝试失败 使用 SWTBot 调整我的视图大小 没有这样的 api 使用 Eclipse 3 API 调整我的视图大小 不支持 使用底层
  • Mongomapper 数组的多对多问题

    我想从用户的任务列表中列出用户的所有任务名称 但是当我使用下面的代码时 我收到以下消息 undefined method task id for 这是我的课程 class User include MongoMapper Document
  • 共享表 - 排除未作为 UIActivityType 中的类型属性提供的选项

    我想排除Add to iCloud Drive Add to Reading List Save to Files Print来自共享表 我可以使用以下代码排除 添加到阅读列表 和 打印 选项 因为这些类型属性 https develope
  • 如何实现论坛权限

    我已经开始在 MVC 框架上用 PHP 开发论坛应用程序 并且已经到了向成员分配权限的阶段 例如 读取 写入 更新 删除 现在 我知道我可以在数据库的用户表下添加 5 列并将它们设置为 1 0 但如果我想添加其他规则 例如 MOVE 这对我
  • 如何使 tkinter 窗口在 i3 windowmanager 中浮动

    我只是在 python 中玩了一下 tkinter 但是我的 i3 平铺 窗口管理器遇到了一些 麻烦 我想创建一个浮动窗口来输入值 类似于 打开文件 对话框 这一定是可能的 因为 Gimp 也可以在 i3 中使用浮动窗口 当然 我不确定 t
  • Java 中的内联比较器与自定义比较器

    对列表进行排序时 使用内联 java Comparator 带有匿名内部类 与实现单独的自定义 Comparator 类之间是否存在性能差异 1 public class SortByErrorComparator implements C
  • 如何在同一浏览器实例中运行多个测试方法而不关闭它(C#、Selenium WebDriver NUnit)?

    我是 c 和 Selenium 的初学者 我想知道是否可以在同一浏览器实例中运行多个 TestMethod s 而无需关闭它 例如 Can Change Name And Title 完成后 我想继续 Can Change Profile
  • 如何从命令行将每两行合并为一行?

    我有一个具有以下格式的文本文件 第一行是 KEY 第二行是 VALUE KEY 4048 1736 string 3 KEY 0 1772 string 1 KEY 4192 1349 string 1 KEY 7329 2407 stri
  • 调整画布图像大小

    我正在尝试上传图像并将它们放入不同大小的盒子中 为了让您了解该应用程序的功能 人们上传图像并将它们打印到海报上 例如 我们的海报尺寸为 8 x 10 活动区域 完整尺寸为 9 5 x 11 5 由于最小 DPI 为 100 我们通常将 8x