Excel行高与像素值,列宽与像素值之间的转换,绘制Excel像素画。
private static float GetDpiX()
{try{using (Bitmap image = new Bitmap(1, 1)){using (Graphics graphics = Graphics.FromImage(image)){return graphics.DpiX;}}}catch{return 72;}
}
传入像素numPixel
int numPixel = (int)numericUpDown1.Value;
Bitmap image = ConvertToFormat(fileImage.Image, PixelFormat.Format24bppRgb);
//Bitmap image = (Bitmap)fileImage.Image;
g = pictureBox1.CreateGraphics();double rowHeight = (double)((float)numPixel * 72f / (float)GetDpiX());for (int i = 0; i < 100; i++)
{double colWidth = Math.Round((numPixel < 12 ? (numPixel / 12.00) : (1 + ((numPixel - 12) / 7.00))), 2);int _numPixel = (int)Math.Round(colWidth < 1 ? colWidth * 12.0 : 12 + (colWidth - 1) * 7.00); Console.WriteLine(string.Format($"{numPixel} {colWidth} {_numPixel}"));numPixel = numPixel + 1;//double width = (double)((float)numPixel * 72f / (float)GetDpiX());
}
打印出100个与excel里面对比
1 | 0.08 |
2 | 0.17 |
3 | 0.25 |
4 | 0.33 |
5 | 0.42 |
6 | 0.5 |
7 | 0.58 |
8 | 0.67 |
9 | 0.75 |
10 | 0.83 |
11 | 0.92 |
12 | 1 |
13 | 1.14 |
14 | 1.29 |
15 | 1.43 |
16 | 1.57 |
17 | 1.71 |
18 | 1.86 |
19 | 2 |
20 | 2.14 |
21 | 2.29 |
22 | 2.43 |
23 | 2.57 |
24 | 2.71 |
25 | 2.86 |
26 | 3 |
27 | 3.14 |
28 | 3.29 |
29 | 3.43 |
30 | 3.57 |
31 | 3.71 |
32 | 3.86 |
33 | 4 |
34 | 4.14 |
35 | 4.29 |
36 | 4.43 |
37 | 4.57 |
38 | 4.71 |
39 | 4.86 |
40 | 5 |
41 | 5.14 |
42 | 5.29 |
43 | 5.43 |
44 | 5.57 |
45 | 5.71 |
46 | 5.86 |
47 | 6 |
48 | 6.14 |
49 | 6.29 |
50 | 6.43 |
51 | 6.57 |
52 | 6.71 |
53 | 6.86 |
54 | 7 |
55 | 7.14 |
56 | 7.29 |
57 | 7.43 |
58 | 7.57 |
59 | 7.71 |
60 | 7.86 |
61 | 8 |
62 | 8.14 |
63 | 8.29 |
64 | 8.43 |
65 | 8.57 |
66 | 8.71 |
67 | 8.86 |
68 | 9 |
69 | 9.14 |
70 | 9.29 |
71 | 9.43 |
72 | 9.57 |
73 | 9.71 |
74 | 9.86 |
75 | 10 |
76 | 10.14 |
77 | 10.29 |
78 | 10.43 |
79 | 10.57 |
80 | 10.71 |
81 | 10.86 |
82 | 11 |
83 | 11.14 |
84 | 11.29 |
85 | 11.43 |
86 | 11.57 |
87 | 11.71 |
88 | 11.86 |
89 | 12 |
90 | 12.14 |
91 | 12.29 |
92 | 12.43 |
93 | 12.57 |
94 | 12.71 |
95 | 12.86 |
96 | 13 |
97 | 13.14 |
98 | 13.29 |
99 | 13.43 |
100 | 13.57 |
Excel行高与像素值,列宽与像素值之间的转换,绘制Excel像素画。相关推荐
- Excel行高、列宽怎么调整?
在日常工作中,经常会需要用到Excel表格,如果打开的Excel表格行高列宽不是我们想要的,要怎么调节到合适的大小呢? 方法一 打开Excel表格,按[Ctrl+A]快捷键,选中全部表格(或者点击表格 ...
- Excel行高列宽使用单位为磅(1cm=28.6磅)
为什么80%的码农都做不了架构师?>>> Excel行高所使用单位为磅(1cm=28.6磅),列宽使用单位为1/10英寸(既1个单位为2.54mm) 行高: 1毫米=2.768 ...
- Excel 行高列宽与图片像素的关系
文章目录 问题描述 解决方案 本人测试 参考文献 问题描述 突然发现 Excel 的行高和列宽的单位并不统一 解决方案 1英寸 = 72像素 1磅 = 1像素 Excel 行高 1单位 = 1磅 = ...
- excel制作田字格,excel行高磅,列宽1/10英寸;
打开一个excel表格,发现列宽是行高的4倍: 开始-格式中查看,发现行高14.25磅,列宽8.38*1/10英寸: 网上百度,了解1英寸=72磅: 那么列宽8.38=60.336磅: 60.336英 ...
- C# Excel 行高,列宽,合并单元格,单元格边框线,冻结
C# Excel 行高,列宽,合并单元格,单元格边框线,冻结 原文:http://hi.baidu.com/kjkj911/blog/item/0ecc3ec7855dd6d4d100600f.htm ...
- 如何通过VB合并Excel单元格以及设置Excel行高?VB创建Excel表格,合并单元格,生成图形等操作
如何通过VB合并Excel单元格以及设置Excel行高? 例如:我想把第一列的第4,5,6,7行合并...我在怎样让合并单元格里的字居中,怎样改变字体. 请不吝赐教... ============== ...
- excel 根据单元格内容自动调整列宽
excel 根据单元格内容自动调整列宽 CreateTime--2018年5月28日08:49:40 Author:Marydon 1.情景展示 单元格宽度超过了列宽 2.解决方案 第一步:同时选中A ...
- POI Excel行高设置
1.Excel行高单位概述 px是相对长度,表示pixel,像素,是屏幕上显示数据的最基本的点 pt是绝对长度,表示point,磅,是印刷行业常用单位,等于1/72英寸 DPI(或PPI),分辨率,p ...
- poi设置excel行高
poi设置excel行高其实百度到处都是,不外乎就是 HSSFRow row = sheet.getRow(rowNum); row.setHeight(height); 但是有一个行高为0的行,如果 ...
- java excel行高_Java 设置Excel自适应行高、列宽
在excel中,可通过设置自适应行高或列宽自动排版,是一种比较常用的快速调整表格整体布局的方法.设置自适应时,可考虑2种情况: 1.固定数据,设置行高.列宽自适应数据(常见的设置自适应方法) 2.固定 ...
最新文章
- BZOJ1503:[NOI2004]郁闷的出纳员——题解
- 奇异值分解(SVD) --- 几何意义2
- 集合框架源码分析——抽象类
- 获取Android手机的分辨率通过ADB命令
- oracle--导出、导入blob类型的字段
- 使用git了解代码编写过程
- Silverlight 参考: Path的Data生成归总
- string转换函数以及hnu暑期实训部分和A+B的例题
- vue树形权限菜单_Vue.js 递归组件实现树形菜单
- [ocUI日记]UIwindow和UIview
- python中while true的用法_解析Python中while true的使用
- p4n 今天与朋友沟通支付云服务普及以及跨境电子商务的光辉前景
- PHP商城源码分销奖励/绑定关系设计
- 二级c语言试题讲解,计算机二级C语言真题讲解.ppt
- Premiere Pro CC2018安装资料及安装教程
- PDMS.NET开发
- 半加器设计(结构描述法)
- C++ operator重载运算符详解
- 模拟电子技术(八)功率放大电路
- c语言around用法,around的用法知识点梳理