亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? svgimagemanipulator.java

?? 一套JAVA的CA證書簽發系統.
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
/************************************************************************* *                                                                       * *  EJBCA: The OpenSource Certificate Authority                          * *                                                                       * *  This software is free software; you can redistribute it and/or       * *  modify it under the terms of the GNU Lesser General Public           * *  License as published by the Free Software Foundation; either         * *  version 2.1 of the License, or any later version.                    * *                                                                       * *  See terms of license at gnu.org.                                     * *                                                                       * *************************************************************************/ package se.anatom.ejbca.hardtoken.hardtokenprofiles;import java.awt.image.BufferedImage;import java.awt.image.RenderedImage;import java.awt.print.Printable;import java.awt.print.PrinterException;import java.io.ByteArrayOutputStream;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.io.Reader;import java.text.DateFormat;import java.util.ArrayList;import java.util.Collection;import java.util.Date;import java.util.Iterator;import java.util.regex.Pattern;import javax.imageio.ImageIO;import org.apache.batik.dom.GenericText;import org.apache.batik.dom.svg.SAXSVGDocumentFactory;import org.apache.batik.dom.svg.SVGDOMImplementation;import org.apache.batik.dom.svg.SVGOMDocument;import org.apache.batik.dom.svg.SVGOMImageElement;import org.apache.batik.dom.svg.SVGOMTSpanElement;import org.apache.batik.svggen.ImageHandlerBase64Encoder;import org.apache.batik.svggen.SVGGeneratorContext;import org.apache.batik.svggen.SimpleImageHandler;import org.apache.batik.transcoder.TranscoderInput;import org.apache.batik.transcoder.TranscoderOutput;import org.apache.batik.transcoder.print.PrintTranscoder;import org.apache.batik.util.XMLResourceDescriptor;import org.w3c.dom.Document;import org.w3c.dom.Node;import org.w3c.dom.NodeList;import org.w3c.dom.svg.SVGRectElement;import org.w3c.dom.svg.SVGTextElement;import se.anatom.ejbca.ra.UserAdminData;import se.anatom.ejbca.ra.raadmin.DNFieldExtractor;/** * This is a help class used to manipulate SVG images. * It replaces all occurrenses of specified variables in the images  * with the corresponding userdata. * * @version $Id: SVGImageManipulator.java,v 1.6 2004/04/16 07:39:00 anatom Exp $ */public class SVGImageManipulator {	/**     * Availabe vairables used to replace text in a printlayout     * Variable text are case-insensitive.     */    private static final Pattern USERNAME = Pattern.compile("\\$USERNAME", Pattern.CASE_INSENSITIVE);        private static final Pattern CN       = Pattern.compile("\\$CN", Pattern.CASE_INSENSITIVE);    private static final Pattern SN       = Pattern.compile("\\$SN", Pattern.CASE_INSENSITIVE);        private static final Pattern GIVENNAME= Pattern.compile("\\$GIVENNAME", Pattern.CASE_INSENSITIVE);    private static final Pattern INITIALS = Pattern.compile("\\$INITIALS", Pattern.CASE_INSENSITIVE);    private static final Pattern SURNAME = Pattern.compile("\\$SURNAME", Pattern.CASE_INSENSITIVE);    private static final Pattern O        = Pattern.compile("\\$O", Pattern.CASE_INSENSITIVE);    private static final Pattern OU       = Pattern.compile("\\$OU", Pattern.CASE_INSENSITIVE);    private static final Pattern C        = Pattern.compile("\\$C", Pattern.CASE_INSENSITIVE);    private static final Pattern LOCATION = Pattern.compile("\\$LOCATION", Pattern.CASE_INSENSITIVE);	private static final Pattern TITLE    = Pattern.compile("\\$TITLE", Pattern.CASE_INSENSITIVE);		/**	 * Indicates the start date of the tokens validity.	 */		    private static final Pattern STARTDATE = Pattern.compile("\\$STARTDATE", Pattern.CASE_INSENSITIVE);	/**	 * Indicates the end date of the tokens validity.	 */			private static final Pattern ENDDATE   = Pattern.compile("\\$ENDDATE", Pattern.CASE_INSENSITIVE);            private static final Pattern HARDTOKENSN = Pattern.compile("\\$HARDTOKENSN", Pattern.CASE_INSENSITIVE);	private static final Pattern HARDTOKENSNWITHOUTPREFIX = Pattern.compile("\\$HARDTOKENSNWITHOUTPREFIX", Pattern.CASE_INSENSITIVE);    /**     * Constants used for pin and puk codes.          */        private static final Pattern PIN1 = Pattern.compile("\\$PIN1", Pattern.CASE_INSENSITIVE);	private static final Pattern PIN2 = Pattern.compile("\\$PIN2", Pattern.CASE_INSENSITIVE);	private static final Pattern PIN3 = Pattern.compile("\\$PIN3", Pattern.CASE_INSENSITIVE);	private static final Pattern PIN4 = Pattern.compile("\\$PIN4", Pattern.CASE_INSENSITIVE);	private static final Pattern PIN5 = Pattern.compile("\\$PIN5", Pattern.CASE_INSENSITIVE);	    private static final Pattern[] PINS = {PIN1, PIN2, PIN3, PIN4, PIN5};        	private static final Pattern PUK1 = Pattern.compile("\\$PUK1", Pattern.CASE_INSENSITIVE);	private static final Pattern PUK2 = Pattern.compile("\\$PUK2", Pattern.CASE_INSENSITIVE);	private static final Pattern PUK3 = Pattern.compile("\\$PUK3", Pattern.CASE_INSENSITIVE);	private static final Pattern PUK4 = Pattern.compile("\\$PUK4", Pattern.CASE_INSENSITIVE);	private static final Pattern PUK5 = Pattern.compile("\\$PUK5", Pattern.CASE_INSENSITIVE);		private static final Pattern[] PUKS = {PUK1, PUK2, PUK3, PUK4, PUK5};			    /**     *  Constants reserved for future use.     */	private static final Pattern CUSTOMTEXTROW1 = Pattern.compile("\\$CUSTOMTEXTROW1", Pattern.CASE_INSENSITIVE);      	private static final Pattern CUSTOMTEXTROW2 = Pattern.compile("\\$CUSTOMTEXTROW2", Pattern.CASE_INSENSITIVE);	private static final Pattern CUSTOMTEXTROW3 = Pattern.compile("\\$CUSTOMTEXTROW3", Pattern.CASE_INSENSITIVE);	private static final Pattern CUSTOMTEXTROW4 = Pattern.compile("\\$CUSTOMTEXTROW4", Pattern.CASE_INSENSITIVE);	private static final Pattern CUSTOMTEXTROW5 = Pattern.compile("\\$CUSTOMTEXTROW5", Pattern.CASE_INSENSITIVE);	private static final Pattern COPYOFSN = Pattern.compile("\\$COPYOFSN", Pattern.CASE_INSENSITIVE);	private static final Pattern COPYOFSNWITHOUTPREFIX = Pattern.compile("\\$COPYOFSNWITHOUTPREFIX", Pattern.CASE_INSENSITIVE);    /**     * Constructor for the SVGImageManipulator object     *      * @param svgdata the xlm data to parse     * @param validity the validity of the card i days.     * @param hardtokensnprefix the prefix of all hard tokens generated with this profile.     * @param imagex x-position for image, reserved for future use     * @param imagey y-position for image, reserved for future use     * @param imageheight heigth of image, reserved for future use     * @param imagewidth width of image, reserved for future use     * @param unit units used, reserved for future use     * @throws IOException     */	    public SVGImageManipulator(Reader svgdata, 	                    int validity, 						 String hardtokensnprefix) throws IOException {      this.validityms = ( ((long)validity) * 1000 *  3600 * 24); // Validity i ms      this.hardtokensnprefix = hardtokensnprefix;            String parser = XMLResourceDescriptor.getXMLParserClassName();      SAXSVGDocumentFactory f = new SAXSVGDocumentFactory(parser);      String svgNS = SVGDOMImplementation.SVG_NAMESPACE_URI;      Document doc = f.createDocument(svgNS, svgdata);	       svgdoc = ((SVGOMDocument) doc); 	    }		    /**     * Returns the message with userspecific data replaced.     *     *     * @return A processed notification message.     *          */    public Printable print(UserAdminData userdata,                       String[] pincodes, String[] pukcodes,	                  String hardtokensn, String copyoftokensn) throws IOException, PrinterException {      // Initialize	  DNFieldExtractor dnfields = new DNFieldExtractor(userdata.getDN(), DNFieldExtractor.TYPE_SUBJECTDN);	  // DNFieldExtractor subaltnamefields = new DNFieldExtractor(dn,DNFieldExtractor.TYPE_SUBJECTALTNAME);	  Date currenttime = new Date();	  String startdate = DateFormat.getDateInstance(DateFormat.SHORT).format(currenttime);	  	  String enddate = DateFormat.getDateInstance(DateFormat.SHORT).format(new Date(currenttime.getTime() + (this.validityms)));      String hardtokensnwithoutprefix = hardtokensn.substring(this.hardtokensnprefix.length());      String copyoftokensnwithoutprefix = copyoftokensn.substring(this.hardtokensnprefix.length());

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99精品国产一区二区三区不卡| 日韩欧美一级二级三级| 欧美日韩国产一二三| 精品国产a毛片| 亚洲国产精品久久一线不卡| 国产一本一道久久香蕉| 色美美综合视频| 风间由美一区二区av101 | **欧美大码日韩| 青椒成人免费视频| 日本精品视频一区二区三区| 26uuuu精品一区二区| 日韩在线一二三区| 欧美在线免费观看亚洲| 91论坛在线播放| 欧美经典三级视频一区二区三区| 男男视频亚洲欧美| 欧美高清视频不卡网| 亚洲精品第一国产综合野| av亚洲精华国产精华精| 国产欧美精品区一区二区三区 | 国产精品国产三级国产有无不卡| 免费人成网站在线观看欧美高清| 欧美熟乱第一页| 亚洲精品ww久久久久久p站| 成人晚上爱看视频| 国产日产欧美一区二区视频| 国产一区二三区好的| 欧美一区二区在线不卡| 同产精品九九九| 麻豆成人免费电影| 欧美不卡一区二区| 青娱乐精品视频在线| 欧美一区二区三区播放老司机| 丝袜诱惑制服诱惑色一区在线观看| 91国模大尺度私拍在线视频| 亚洲在线视频一区| 欧美吞精做爰啪啪高潮| 天天影视网天天综合色在线播放| 亚洲mv在线观看| 9191成人精品久久| 麻豆精品在线看| 国产日韩欧美不卡| eeuss影院一区二区三区| 中文字幕一区二区三区在线不卡 | 亚洲天堂网中文字| 一区二区三区 在线观看视频| 亚洲自拍偷拍综合| 在线播放中文字幕一区| 老司机免费视频一区二区三区| 久久综合色鬼综合色| 国产91丝袜在线播放| 成人免费视频在线观看| 欧美三级欧美一级| 美女网站色91| 欧美激情在线一区二区三区| 99久久777色| 日韩国产欧美在线视频| www久久精品| av网站一区二区三区| 亚洲va欧美va人人爽| 久久久天堂av| 日本精品免费观看高清观看| 奇米四色…亚洲| 国产欧美日本一区二区三区| 色婷婷国产精品综合在线观看| 美腿丝袜亚洲色图| 国产精品国产a| 欧美狂野另类xxxxoooo| 国产成人av电影在线播放| 一区二区高清在线| 欧美精品一区二区不卡| 日本精品免费观看高清观看| 国产一区二区三区在线观看免费视频| 欧美激情一区二区三区在线| 欧美日韩美少妇| 国产98色在线|日韩| 日本一区中文字幕| 日韩毛片视频在线看| 日韩欧美成人激情| 欧美日韩五月天| 99视频在线精品| 精品一区二区久久久| 亚洲成人在线网站| 日韩一区欧美一区| 久久久久久久网| 91精品在线观看入口| 色94色欧美sute亚洲线路二 | 欧美午夜一区二区三区| 国产老妇另类xxxxx| 午夜激情综合网| 日韩一区日韩二区| 日本一区二区电影| 国产白丝精品91爽爽久久| 日产欧产美韩系列久久99| 欧美日韩亚洲不卡| 91蝌蚪porny九色| 懂色av一区二区夜夜嗨| 国内国产精品久久| 卡一卡二国产精品| 日韩精品视频网站| 亚洲一区二区三区视频在线 | 国产精品视频在线看| 2023国产精华国产精品| 精品一区二区三区的国产在线播放| 亚洲一级二级三级| 艳妇臀荡乳欲伦亚洲一区| 日韩理论片在线| 中文字幕在线观看一区| 欧美激情一区二区在线| 中文字幕不卡的av| 国产精品入口麻豆九色| 国产欧美日韩三级| 国产欧美精品一区| 国产精品丝袜91| 欧美日韩视频不卡| 欧美色网站导航| 欧美日韩高清不卡| 337p亚洲精品色噜噜噜| 91精品国产综合久久久久久久| 欧美日韩黄色一区二区| 欧美丰满嫩嫩电影| 91精品国产综合久久精品麻豆| 欧美狂野另类xxxxoooo| 日韩欧美国产成人一区二区| 日韩欧美一区二区视频| 2023国产精品自拍| 中文字幕在线不卡视频| 亚洲欧美日韩中文播放| 亚洲国产成人高清精品| 日韩精品电影在线| 韩国av一区二区| 91亚洲精品一区二区乱码| 在线一区二区三区四区| 欧美美女网站色| 欧美精品一区二区三区一线天视频| 久久久亚洲精品石原莉奈| 中文字幕在线不卡| 天天操天天色综合| 国产乱妇无码大片在线观看| 不卡的av电影在线观看| 欧美午夜宅男影院| 日韩一级大片在线观看| 国产欧美日韩亚州综合| 亚洲综合精品自拍| 国产综合成人久久大片91| 99天天综合性| 日韩欧美国产电影| |精品福利一区二区三区| 亚洲超碰精品一区二区| 国产福利一区在线| 欧美日韩在线免费视频| 久久综合久久综合亚洲| 一区二区三区产品免费精品久久75| 日本亚洲天堂网| 91网站最新地址| 欧美sm极限捆绑bd| 一区二区国产盗摄色噜噜| 国内精品久久久久影院色| 日本韩国欧美三级| 国产夜色精品一区二区av| 亚洲成人动漫在线免费观看| 国产毛片精品视频| 欧美精品九九99久久| 国产精品久久毛片| 精品一区在线看| 欧美日韩中文字幕一区| 欧美经典一区二区| 精品制服美女久久| 欧美日韩在线直播| 欧美亚洲精品一区| 亚洲国产成人午夜在线一区| 青青青伊人色综合久久| 91麻豆123| 国产精品欧美一区二区三区| 久久成人18免费观看| 日韩成人av影视| 欧美性猛交xxxxxx富婆| 日本一区二区电影| 国产黄色91视频| 久久久一区二区三区| 精品一区二区三区在线视频| 欧美日韩免费观看一区三区| 亚洲人成在线观看一区二区| 国模冰冰炮一区二区| 日韩欧美在线影院| 奇米亚洲午夜久久精品| 欧美精品一卡两卡| 亚洲一区在线视频| 91福利在线观看| 一区二区三区蜜桃网| 色狠狠色狠狠综合| 亚洲精品一卡二卡| 99精品视频免费在线观看| 国产精品天美传媒沈樵| 99精品国产99久久久久久白柏 | 粉嫩av亚洲一区二区图片| 久久综合色天天久久综合图片| 久久97超碰国产精品超碰| 日韩你懂的在线观看|