canvas放大后,移动canvas使其在屏幕中央

通过拖拽鼠标画方框的方式放大

### 下面是对x轴方向的代码my $canvasx = xxxxx;  ## canvas画布的x方向长度
my $canvas_point_x0 = $canvas->canvasx(x0);  ## view window的(x0,y0)点处画布上的x坐标
my $canvas_point_x1 = $canvas->canvasx(x1);  ## view window的(x1,y1)点处画布上的x坐标
my ($xoff_1, $xoff_2) = Tkx::SplitList($canvas->m_xview());  ## 返回画布的偏移量,0-1的小数值my $xoff_ratio = abs($canvas_point_x0 - $canvas_point_x1) / $canvasx;  ## 计算画布放大后需要移动的长度占用总长度的比例,
$xoff_1 += $xoff_ratio;  ##  把计算的比例与原偏移量相加##  执行图形区域放大的代码
##  调整滚动条参数 scrollregion 的代码
...
......
...$canvas->m_xview("moveto", $xoff_1); ## 移动画布,把刚刚放大部分置于view window中心。

tk/tkx canvas区域放大的代码相关推荐

  1. canvas整体放大_【HTML5】Canvas 实现放大镜效果

    图片放大镜 效果 原理 首先选择图片的一块区域,然后将这块区域放大,然后再绘制到原先的图片上,保证两块区域的中心点一致, 如下图所示: 初始化 获得 canvas 和 image 对象,这里使用 标签 ...

  2. canvas图形放大缩小鼠标拖拽

    canvas图形放大缩小鼠标拖拽 在网上找的都是放大缩小,或者鼠标拖拽,没有两者都满足的 一开始我天真的以为两个合并就可以了,但其实当鼠标松开和点击的时候,坐标原点是会变的,就是每次拖拽都是清除之前, ...

  3. 利用MSER算法提取图像区域(车牌区域)的OpenCV代码~

    图像处理开发需求.图像处理接私活挣零花钱,请加微信/QQ 2487872782 图像处理开发资料.图像处理技术交流请加QQ群,群号 271891601 我的博客中前面已经写了两种方法来实现车牌区域的提 ...

  4. C# 图片缩放放大剪切代码

    asp.net C#图片缩放放大剪切代码 本人在网上找了很多资料,整合了下..分享上来 ~ net c#图片缩放放大剪切代码 using system; using system.collection ...

  5. php怎么自定义设置打印区域,JavaScript_jQuery实现区域打印功能代码详解,使用CSS控制打印样式,需要设 - phpStudy...

    jQuery实现区域打印功能代码详解 使用CSS控制打印样式,需要设置样式media="print",并且将页面中不需要打印的元素的样式display属性设置为none.如DEMO ...

  6. ggforce|绘制区域轮廓-区域放大-寻找你的“onepiece”

    ggforce是ggplot2的扩展包,"擅长"于根据数据绘制轮廓以及区域放大.先将整体分为几个重要的"版图",然后根据"线索"重点放大后在 ...

  7. python批处理将图片进行放大实例代码

    最近处理一些规格不一的照片,需要修改成指定尺寸便于打印,本篇文章主要给大伙介绍关于Python批量处理将图片进行放大的相关资料,文中通过实例代码介绍的非常详细,需要的伙伴们可以参考下. python批 ...

  8. pycharm编辑器如何用鼠标滚轮随时放大缩小代码

    pycharm编辑器如何用鼠标滚轮随时放大缩小代码 我们用pycharm的时候发现不能快捷的像其他编辑器那样用鼠标滚轮随时放大缩小代码,这是因为你还没有设置,下面我们就来设置一下. 1.放大代码设置 ...

  9. 基于HTML5canvars的小游戏,利用HTML5实现Canvas激流勇进小游戏代码

    特效描述:利用HTML5实现 Canvas 激流勇进 小游戏代码.利用HTML5实现Canvas激流勇进小游戏代码 代码结构 1. 引入JS 2. HTML代码 进入游戏 游戏玩法:使用左键.右键和上 ...

最新文章

  1. 高性能集群软件Keepalived的介绍以及安装与配置
  2. MavenSelenium测试自动化教程
  3. ue查找多个关键字_聊聊数据库GROUP BY关键字的那些事
  4. 交叉编译Open***-2.4.3
  5. 分享10 比较非常实用的 Docker技巧,欢迎收藏!
  6. java多线程原子操作_Java 多线程 - 原子操作CAS
  7. 教你玩转CSS Position(定位)
  8. mysql5.6与mysql5.5不同
  9. 信息学奥赛一本通 1048:有一门课不及格的学生 | OpenJudge NOI 1.4 10
  10. linux 路由器_为什么我要建立自己的自制Linux路由器
  11. FLEX APIs、Libs、Components
  12. matlab三相系统电阻折算,基于MATLAB三相异步电动机调压调速系统方案.doc
  13. java中类初始化_java中类和对象的初始化
  14. 服务器虚拟化税收编码,服务器主机税收分类
  15. HGDB单机问题解决—致命错误:已保留的连接位置为执行非复制请求的超级用户预留
  16. access注入及工具使用
  17. c# 标准正太分布函数_Excel里面标准正态分布函数NORMSDIST()在C#里的算法以及科学计数法转换为正常数值...
  18. UltraVNC 使用方法详细说明
  19. 揭秘全美第一黑客组织Anonymous(匿名者)的装备库
  20. vulntarget-b靶场详细通关记录

热门文章

  1. 10月11日科技联播:美股暴跌引全球股市崩盘;腾讯跌出全球市值前十
  2. Meta拟裁撤Instagram伦敦员工 其余人将调往美国---转自百度新闻|财联社
  3. 开源项目学习-V部落
  4. 阿里云服务器受攻击总结
  5. 读白帽子讲WEB安全,摘要
  6. 转载:联想小新进入BIOS方法
  7. 股票交易接口dll代码分享
  8. 2020 第十一届蓝桥杯大赛软件类省赛第二场 C/C++ 大学 B 组 完整题面和题解
  9. 大数据开发超高频面试题!大厂面试必看!包含Hadoop、zookeeper、Hive、flume、kafka、Hbase、flink、spark、数仓等
  10. Appium从环境搭建到测试脚本编写(四)