业务需求:读取pdf每页的长宽,然后根据国际标准,反推出pdf图纸类型

第一步:下载类库,并引入到项目中

链接:https://pan.baidu.com/s/1ud4-xhfDvi9OKolEBPwy-w&shfl=sharepset
提取码:bnfk

第二步:实现

             string path = @"C:\Users\Administrator\Desktop\图纸\WH440-C322-F01_322分段涂装预留图.pdf";
PdfReader reader = new PdfReader(path);
iTextSharp.text.Rectangle rc = reader.GetPageSize(); //pdf拿到第一页数据
float height = rc.Height; //pdf的长
float width = rc.Width;//pdf的宽
var v1 = height * 25.4 / ; //换算后真实高
var v2 = width * 25.4 / ; //换算后真实宽
int ii = (int)Math.Floor(v1);
//int iPageNum = reader.NumberOfPages; //获取pdf总页数
reader.Close(); //不关闭会一直占用pdf资源,对接下来的操作会有影响

第三步:实际图纸

反推pdf纸张大小

资料来自百度搜索,反推结果是A3值,与实际图纸大小吻合

 幅面代号有五种 分别为A0 A1 A2 A3 A4
具体尺寸如下:
A0 长X宽 1189X841mm
A1 长X宽 841X594mm
A2 长X宽 594X420mm
A3 长X宽 420X297mm
A4 长X宽 297X210mm

完整项目:

链接:https://pan.baidu.com/s/15vDkdnMOI5FODV9epNH3Rw&shfl=sharepset
提取码:6tq0

C# 获取pdf长宽,反推pdf图纸类型的更多相关文章

  1. Android中获取屏幕长宽的方法

    package com.kale.screen; import android.annotation.SuppressLint; import android.app.Activity; import ...

  2. android获取屏幕长宽的方法

    package com.kale.imageview02; import android.annotation.SuppressLint; import android.app.Activity; i ...

  3. Android获取屏幕长宽

    总结了下,我遇到的获取Android屏幕长宽的方式总共有三种.大同小异,重点在于如何获取系统中的WindowManager管理类对象,方可对数据的操作: 代码如下 /** * @return 屏幕的长 ...

  4. [转]js动态获取图片长宽尺寸

    http://blog.phpdr.net/js-get-image-size.html lightbox类效果为了让图片居中显示而使用预加载,需要等待完全加载完毕才能显示,体验不佳(如filick相 ...

  5. 转载:js动态获取图片长宽尺寸(兼容所有浏览器,速度极快)

    转自:http://blog.phpdr.net/js-get-image-size.html lightbox类效果为了让图片居中显示而使用预加载,需要等待完全加载完毕才能显示,体验不佳(如fili ...

  6. JQuery图片延迟加载插件,动态获取图片长宽尺寸

    以前的网站带宽小,没有特别多的大图,现在不同了,各种图片网站如同雨后春笋层出不穷.服务器是抗住了,但是客户端就有意见了,太多的图片必然导致页面加载缓慢,特别是有些table结构的站点更是如此.能否让图 ...

  7. 分享一个快速设置背景的js 自动获取背景图的长宽

    我来分享一个快速设置背景的js (需要jq支持!) 快速切图铺页面用---就是不需要手动输入背景图的长宽 自动获取背景图的长宽 : <div class="wrap"> ...

  8. Android必知必会-获取View坐标和长宽的时机

    如果移动端访问不佳,请访问–>Github版 背景 最近要实现一个功能,用到了一些属性动画,需要获取一些View的坐标信息,设计图如下: 这里我使用的是DialogFragment来实现的,可以 ...

  9. Wpf 获取指定字体和大小的字符的长宽

    Wpf 获取指定字体和大小的字符的长宽 运行环境:Win10 x64, NetFrameWork 4.8, 作者:乌龙哈里,日期:2019-05-09 参考: 章节: 比如一个 Consolas 字体 ...

随机推荐

  1. Day003_linux基础_系统启动过程及系统安装后优化

    Linux系统启动过程: 打开电源开关开机 BIOS自检 MBR引导 grub内核菜单选择 加载内核kernel 运行init进程,系统初始化 然后读取/etc/inittab 配置文件,当前系统所在 ...

  2. oracle用imp导入dmp文件

    oracle命令行登录 sqlplus 用户名/密码 创建用户 create user 用户 identified by 密码 ; 创建表空间 create tablespace 表空间名 dataf ...

  3. 【第十篇】easyui-datagrid排序 (转)

    本文体验datagrid的排序. □ 思路 当点击datagrid的标题,视图传递给Controller的Form Data类似这样:page=1&rows=10&sort=Custo ...

  4. 去掉Myeclipse对JS等文件的验证

    在用Myeclipse导入新工程或在写代码时,最郁闷的就是它对js,jsp,html的验证太严格了,有时会呈现一个红叉或者一个黄色的感慨号,一运行就报Cannot return from outsid ...

  5. Redis常用命令(key、string、List)

    1.Key 1.keys *   查询所有数据 2.exists key名   判断key名是否存在 3.move key名  数据库号(0-15)  移动数据key名到相应的数据库 4.expire ...

  6. Python 开发植物大战僵尸游戏

    作者:楷楷 链接:https://segmentfault.com/a/1190000019418065 开发思路 完整项目地址: https://github.com/371854496/pygam ...

  7. TLC5615

    #include <reg51.h> #include "TLC5615.c" code uchar seven_seg[] = {0xc0, 0xf9, 0xa4, ...

  8. Swoole入门到实战 打造高性能 赛事直播平台(完整版)

    Thinkphp+Swoole入门到实战打造高性能赛事直播平台 第1章 课程介绍 欢迎大家来到swoole的课程!本章主要是介绍了swoole的一些特性,以及使用场景,并且分享了swoole在其他公司 ...

  9. 001: html基础标签

    一:浏览器内核(理解) 序言: 1:web标准 主要包括结构(Structure).表现(Presentation)和行为(Behavior)三个方面. 2:常见标签 2.1:HTML head bo ...

  10. Session和Cookie的用法及区别

    1. Session.Cookie是什么 1.1 概念理解 要了解session和cookie是什么,先要了解以下几个概念. 1.1.1 无状态的HTTP协议 协议:是指计算机通信网络中两台计算机之间 ...