用Powshell 脚本批量完成,代码比较简单,出生日期,图片我都没有改,图片用于测试,附件

cls;
$path = Split-Path -Parent $MyInvocation.MyCommand.Definition
$file=Get-Content "$path\测试账户" -Encoding UTF8
foreach( $line in $file)
{#中间空白不是空格,是制表符,数据是从excel直接拷出来的。
$line1=$line.Replace("    ",",").Split(',')

$name=$line1[5];
$sex=$line1[1];
$address=$line1[3].Replace(" ","");
$idcard=$line1[4];
$before=11;#主要是怕地址太长,所以要换行
$address_new=$null;
if($address.Length -gt $before)
{
$address_new=$address.Substring(0,$before),$address.Substring($before);
}else
{
$address_new=$address," ";
}

$bmp=[System.Drawing.Image]::FromFile("$path\idcard.jpg");
$graph=[System.Drawing.Graphics]::FromImage($bmp);
$pen=New-Object System.Drawing.Pen([System.Drawing.Color]::Red,15);
$fontlen=[System.Drawing.FontFamily]::Families.Length

#字体用的是方正雅黑,他在我的系统编号就是206。
$FZHei=New-Object System.Drawing.Font([System.Drawing.FontFamily]::Families[206],13,[System.Drawing.FontStyle]::Bold);
#for( $i=0;$i -lt $fontlen;$i++)
#{
#$font=[System.Drawing.FontFamily]::Families[$i]
#"$i==$font";
#}
$brush=New-Object System.Drawing.SolidBrush([System.Drawing.Color]::FromArgb(60,60,60))
#$graph.DrawLine($pen,0,0,10,10);
$graph.DrawString($name,$FZHei,$brush,82,40);
$graph.DrawString($sex,$FZHei,$brush,88,70);
for( $i=0;$i -lt $address_new.Length;$i++)
{
$graph.DrawString($address_new[$i],$FZHei,$brush,82,130+20*$i);
}
$graph.DrawString($idcard,$FZHei,$brush,150,205);
$graph.DrawString($address,$FZHei,$brush,162,485);
$bmp.Save("$path\idcard\$name.jpg");
$graph.Dispose();
}

原文本数据

13888539170 女 34 重庆市 市辖区 巴南区 50011319800529686X 龙帜晗
13888537828 女 30 山西省 太原市 娄烦县 140123198409220162 贺晓乐
13888537967 女 27 广西壮族自治区 451400198704290329 吕香巧
13888532773 女 39 广东省 韶关市 浈江区 440204197512024082 凤峥
13888532067 女 48 江苏省 南通市 如东县 320623196603079184 苗巧蕊
13888535046 女 28 湖北省 孝感市 孝南区 420902198606107782 苍艳楠
13888537332 男 41 安徽省 34172119730517189X 水绍晨
13888534093 男 49 广东省 珠海市 440404196502218517 柏圣熙
13888531560 男 45 山东省 青岛市 胶州市 370281196908211255 张可意
13888535791 女 45 新疆维吾尔自治区 阿克苏地区 库车县 652923196909186307 章贝
15262307251 女 24 青海省 玉树藏族自治州 囊谦县 632725199008288308 昌从冬
15262303484 女 37 内蒙古自治区 150902197709154143 奚幼霜
15262304003 男 52 安徽省 淮南市 市辖区 34040119620903787X 罗子童
15262309793 男 35 西藏自治区 阿里地区 普兰县 542521197905106853 庞星嘉
15262309006 男 52 河北省 邯郸市 大名县 130425196207246178 元辰琳
15262309914 女 47 福建省 泉州市 安溪县 350524196710095581 卜冬莲
15262306546 女 39 北京市 县 县 110200197511107327 何绍晨
15262307855 男 53 吉林省 吉林市 昌邑区 220202196110230555 任辰琳
15262304166 女 47 河北省 唐山市 路北区 130203196709292861 张千雁
15262301737 男 38 云南省 红河哈尼族彝族自治州 石屏县 532525197604137051 卜心
15862306882 男 53 内蒙古自治区 阿拉善盟 阿拉善左旗 152921196105214279 范韩一
15862308148 女 46 广西壮族自治区 南宁市 450109196802065820 劳冷荷
15862305941 女 41 广西壮族自治区 钦州市 钦州市 450700197305230207 伍南霜
15862306848 男 38 黑龙江省 黑河市 逊克县 231123197603120913 傅玄庚
15862304978 男 49 黑龙江省 231225196508057817 褚悦
15862302882 女 27 陕西省 渭南市 蒲城县 61052619870612332X 殷璋
15862309865 女 39 河南省 商丘市 永城市 411481197503010462 浦若薇
15862301603 男 38 广东省 深圳市 龙岗区 440307197602254353 萧志强
15862302632 女 28 山东省 济宁市 曲阜市 370881198611071767 於幼荷

简单的powershell 批量生成身份证复印件的更多相关文章

  1. 通过java来批量生成身份证号

    通过java来批量生成身份证号,方便来测试程序. package com.diyvc.controller.user; import java.util.Calendar; import java.u ...

  2. powershell 批量生成文件

    缘由 由于现在替省厅工作,年底了要向地市收很多文件,哪些地市已报,哪些没报,需要一目了然. 我的处理方式是收什么文件就针对该文件新建一个目录,然后在该目录下为所有地市建一个占位文件. 等收到项某市的材 ...

  3. 使用powershell批量添加Qt的文件(生成pro)

    想使用QtCreator作为编辑器编辑keil或者IAR的工程,需要生成.pro文件,于是使用powershell批量处理. 源码如下: $incPath = dir -filter "*. ...

  4. 用python批量生成简单的xml文档

    最近生成训练数据时,给一批无效的背景图片生成对应的xml文档,我用python写了一个简单的批量生成xml文档的demo,遇见了意外的小问题,记录一下. 报错问题为:ImportError: No m ...

  5. Django项目:CRM(客户关系管理系统)--67--57PerfectCRM实现admin批量生成上课记录

    #admin.py # ————————01PerfectCRM基本配置ADMIN———————— from django.contrib import admin # Register your m ...

  6. 将表里的数据批量生成INSERT语句的存储过程 增强版

    将表里的数据批量生成INSERT语句的存储过程 增强版 有时候,我们需要将某个表里的数据全部或者根据查询条件导出来,迁移到另一个相同结构的库中 目前SQL Server里面是没有相关的工具根据查询条件 ...

  7. C# 利用WORD模板和标签(bookmark) 批量生成WORD

    前言: 由于对C#操作WORD不熟悉,也就留下这么一篇水文,别吐糟...=_=||| 利用Microsoft.Office.Interop.Word (2003版也就11版)——因为部分客户端还是用O ...

  8. 【转】- 使用T4模板批量生成代码

    前言 之前在 “使用T4模板生成代码 - 初探” 文章简单的使用了T4模板的生成功能,但对于一个模板生成多个实例文件,如何实现这个方式呢?无意发现一个解决方案 “MultipleOutputHelpe ...

  9. 黄聪:如何使用CodeSmith批量生成代码(转:http://www.cnblogs.com/huangcong/archive/2010/06/14/1758201.html)

    先看看CodeSmith的工作原理: 简单的说:CodeSmith首先会去数据库获取数据库的结构,如各个表的名称,表的字段,表间的关系等等,之后再根据用户自定义好的模板文件,用数据库结构中的关键字替代 ...

随机推荐

  1. MySQL 中的两种临时表

    来源:阿里云RDS - 数据库内核组 链接:http://mysql.taobao.org/monthly/2016/06/07/ 外部临时表 通过CREATE TEMPORARY TABLE 创建的 ...

  2. 迷你template

    JavaScript Micro-Templatinghttp://ejohn.org/blog/javascript-micro-templating/   //Simple JavaScript ...

  3. C++如何用system命令获取文件夹下所有文件名

    http://www.cplusplus.com/reference/cstdlib/system/ http://bbs.csdn.net/topics/30068943 #include < ...

  4. 文件和目录之link、unlink、remove和rename函数

    任何一个文件可以有多个目录项指向其i节点.创建一个指向现有文件的链接的方法是使用link函数. #include <unistd.h> int link( const char *exis ...

  5. Tomcat 配置 Probe 监控

    转至:http://9771104.blog.163.com/blog/static/19446622009811112836524/ 手上接触Tomcat的项目越来越多,虽说tomcat的manag ...

  6. iOS利用代理实现界面跳转

    引入代理类头文件和要跳转到的界面头文件 -(void)aaa { //可以插入动画 LYXViewControllor * view = [LYXViewControllor new]; LYXDel ...

  7. Google, FaceBook, Amazon 加州求职记 (转)

    http://blog.csdn.net/ithomer/article/details/8774006 http://www.myvisajobs.com 一年多前,出于显而易见的原因,下定决心肉身 ...

  8. C# 重新改变数组的长度

    重新改变数组的长度 System.Array.Resize(ref FieldName, j);

  9. javascript 获取下一个节点

    下一个节点: nextElementSibling 上一个节点 previousElementSibling <div> <select onchange="alert(t ...

  10. Unity3D之Ugui 制作弹框

    创建一个UI控件. 这里通过按钮的点击取控制弹框的显示或者隐藏.给按钮Button绑定一个脚本. 将Panel初始化设置为隐藏.就可以实现了. using UnityEngine; using Sys ...