用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. 9个使用前必须再三小心的Linux命令

      Linux shell/terminal 命令非常强大,即使一个简单的命令就可能导致文件夹.文件或者路径文件夹等被删除.在一些情况下,Linux 甚至不会询问你而直接执行命令,导致你丢失各种数据信 ...

  2. 文件I/O(不带缓冲)之原子操作

    一.添写至一个文件 考虑一个进程,它要将数据添加到一个文件尾端.早期的UNIX系统并不支持open的O_APPEND选项,所以程序被编写成下列形式: ) < ) /* position to E ...

  3. C#_mvc_ajax_return data

    假设cshtml文件中是这样的: <script type="text/javascript"> $(document).ready(function(){ $(&qu ...

  4. com.ulitis.www

    package com.ulitis.www; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io ...

  5. Apache中 RewriteRule 规则参数介绍

    Apache中 RewriteRule 规则参数介绍 摘要: Apache模块 mod_rewrite 提供了一个基于正则表达式分析器的重写引擎来实时重写URL请求.它支持每个完整规则可以拥有不限数量 ...

  6. show status详解

    Aborted_clients 某种原因客户程序不能正常关闭连接而导致失败的连接的数量.没有正常关闭 Aborted_connects 指出试图连接到MYSQL的失败的次数.这种情况在客户尝试用错误的 ...

  7. Javascript中new

    // 加不加new结果都一样 var obj = new Function('var temp = 100;this.temp = 200;return temp + this.temp;'); al ...

  8. 关于Eclipse中配置产品启动的插件

    比较省事的是白哥给我一个配置文件(EE_CONF_TEST.launch),使用的方法白哥推荐我新建一个普通的java项目,然后拷贝到这个项目中. 拷贝到项目中之后在Run Configuration ...

  9. golang 依赖控制反转(IoC)

    主流开发语言,为了达到项目间的低耦合,都会借助IoC框架来实现.即抽象和实现分离,使用抽象层,不用关心这些抽象层的具体实现:抽象层的实现,可以独立实现.现在比较流行的领域驱动设计(ddd),为了达到将 ...

  10. 过滤网页中HTML代码的ASP函数

    Function LoseHtml(ContentStr) Dim ClsTempLoseStr,regEx ClsTempLoseStr = Cstr(ContentStr) Set regEx = ...