//打印纸尺寸,单位MM
//http://en.wikipedia.org/wiki/ISO_216
var page = function() {
var A0 = { name: "A0", width: 841, height: 1189 }; //单位MM
var B0 = { name: "B0", width: 1000, height: 1414 }; //单位MM
var C0 = { name: "C0", width: 917, height: 1297 }; //单位MM
//获取前一个规格
function getPrefixSize(name) {
var list = name.split('');
var series = list[0];
var number = parseInt(list[1]);
if (!isNaN(number) && number > 0) {
return series + (number - 1);
}
}
//获取规格的尺寸
function getSize(name) {
if (name == "C7/6") {
return { name: "C7/6", width: 81, height: 162 };
}
var list = name.split('');
var series = list[0];
var number = parseInt(list[1]);
if (isNaN(number)) {
return;
}
if (number == 0) {
if (series == "A") { return A0; }
else if (series == "B") { return B0; }
else if (series == "C") { return C0; }
}
return { name: name, width: parseInt(getSize(getPrefixSize(name)).height / 2), height: parseInt(getSize(getPrefixSize(name)).width) };
}
return {
getSize: getSize
}
} ();

用法

复制代码 代码如下:

page.getSize('A4') 

js打印纸函数代码(递归)相关推荐

  1. js打印纸函数(递归)

    代码      // 打印纸尺寸,单位MM      // http://en.wikipedia.org/wiki/ISO_216      var  page  =   function () { ...

  2. 调用c++_WebAssembly: 在C代码中调用JS的函数

    0. 前提知识点 导出C中的函数给JS调用:主要是EMSCRIPTEN_KEEPALIVE这个Emscripten环境特有的宏. #include <stdio.h>#ifndef EM_ ...

  3. Ajax异步请求(重渲染DOM元素时,如何自动调用并执行JS自定义函数【含代码】)- 案例篇

    文章目录 Ajax异步请求(重渲染DOM元素时,如何自动调用并执行JS自定义函数[含代码])- 案例篇 效果截图: 重要代码: 附:全部HTML代码: Ajax异步请求(重渲染DOM元素时,如何自动调 ...

  4. php根据日期判断星座if函数,js 日期计算星座 根据生日的月份和日期,一行代码计算星座的js小函数(转)...

    本文最后更新于2019-07-01,已超过 1年没有更新,如果文章内容.图片或者下载资源失效,请留言反馈,我会及时处理,谢谢! 温馨提示:本文共2388个字,读完预计6分钟. 摘要: 根据生日的月份和 ...

  5. php删除到回收站代码,怎么找回回收站删除的文件 php自定义函数之递归删除文件及目录...

    复制代码 代码如下: /*------------------ */ //– 递归删除文件及目录 //– 例: del_dir ('../cache/');注意:返回的/是必须的 //– $type ...

  6. php抛物线函数,js绘制抛物线代码分享

    本文主要和大家分享js绘制抛物线代码,我们先和大大家展示效果图,具体方法大家来一起看代码吧,希望能帮助到大家. 效果图: 抛物线运动效果 body { overflow: hidden; } .bol ...

  7. js 音频音乐播放封装函数代码

    js函数代码 /*** 音频到网上找* src:音频链接**/ function playSound(src){var src;var borswer = window.navigator.userA ...

  8. 2020年前端面试之JS手写代码题合集

    2020年前端面试之JS手写代码题合集 预计会有上千道题,后续慢慢补! 1.  写一个把字符串大小写切换的方法 function caseConvert(str){return str.replace ...

  9. 3. ackerman函数的递归实现算法用java语言_ackerman递归

    定义: n+1        n=0 A(m,n)={A(m-1,1) m=0 A(m-1,A(m,n-1)) n>0,m>0 #include #include using namesp ...

最新文章

  1. 为什么LINKBUTTON不能插在LTEMTEMPLATE里???
  2. 2 Oracle用户和表空间
  3. 几张旧照片,用傻瓜拍的,翻出来凑数 (续)
  4. Android IOS WebRTC 音视频开发总结(八十七)-- WebRTC中丢包重传NACK实现分析
  5. common Lisp学习笔记(十二)
  6. 解决[ERROR] [MY-013276] [Server] Failed to set datadir to ‘F:\Mysql\mysql-8.0.19-winx64\data\‘ (OS er
  7. maven 下载源码
  8. 如何成为架构师?7个关键的思考、习惯和经验
  9. 阿里投资,只为安全感
  10. java枚举比较_java枚举enum equal与==
  11. android studio 导入c,3.3、Android Studio 添加 C 和 C++ 项目
  12. 微信H5开发-采坑记
  13. 荣耀magicbook笔记本BIOS设置
  14. 搜狗输入法 linux 卸载,ubuntu彻底卸载搜狗拼音输入法
  15. Oracle EXPLAIN PLAN用法
  16. 【微信小程序】微信小程序项目开发哔哩哔哩小程序
  17. QRJDC搭建实现QQ扫码登录对接青龙对接傻妞
  18. redis-setnx-实现原理
  19. spring boot spring data 整合 redis redis keys * 出现 \xac\xed\x00\x05t\x00) 编码异常
  20. 中国不锈钢行业需求态势及发展形势展望报告(新版)2022-2027年

热门文章

  1. 拼音首字符序列来实现检索功能
  2. 搜索热词自定义多样式视图
  3. wcdma基站的重选和切换
  4. Windows批量复制文件copy命令bat批处理文件
  5. 1080ti 和 2080ti 深度学习显卡价值对比
  6. 知识图谱实体对齐3:无监督和自监督的方法
  7. win7c盘空间越来越小_C盘空间越来越小原因
  8. 常见的Linux版本
  9. 4.6宏定义之带参宏
  10. JAVA版基于netty的物联网网关