导航:首页 > 编程语言 > java打码

java打码

发布时间:2022-07-27 17:07:08

‘壹’ java 如何给 图片局部打码

把图片压缩成32*32这个不难,java有这样的类提供了方法
BufferedImage bi = new BufferedImage(w * 2 / scale, h * 2 / scale, bm.getType());//画布大小
Graphics2D g2 = bi.createGraphics();
g2.drawImage(bm, 0, 0, w * 2 / scale, h * 2 / scale, null); //绘制缩小后的图
// 转换成JPEG图像格式
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(bos);
JPEGEncodeParam jpeg = encoder.getDefaultJPEGEncodeParam(bi);
jpeg.setQuality(1f, false);
encoder.setJPEGEncodeParam(jpeg);
encoder.encode(bi);
byte[] data = bos.toByteArray();

但是要减少颜色数的话,这个比较麻烦,这个首先需要知道图片中
颜色空间,比如16色,32色等,你需要读取图片文件中的内容,然后根据图片头的信息
读取每个像素的RGB值(如果是RGB空间),并对每一个像素进行 颜色 设置

‘贰’ 程序员进来,笔试中写代码,应该写哪里的代码顺便指点一下以后的路

兄弟,首先说笔试中写代码,应该写哪里的代码?这个问题要看题意了,要看人家想考你页面知识水平还是想考你后台知识水平,要把握题意。一般情况下,笔试中的打码一部分是基础常规知识考查,就是知识点之类的,一般与项目无关。另一部分是与项目有关的,比如一个项目模型,实现简单典型功能。关于数据库的,笔试我我认为一般是考后台数据处理的,而不应该写页面代码,虽然页面也能和数据库交互,这是分工分层问题,数据库就用后台代码处理,页面主要任务就是表现显示。
关于以后的路,兄弟既然是学软件的,刚毕业,我建议还是坚持走这条路,最起码前几年或者是没有发现更好方向之前,要好好钻研软件道路上的相关理论和知识,在工作中加强实践。这条路干好了还是比较不错的,尽管有时有些累。
毕竟刚毕业,遇到些挫折是正常的。
建议兄弟在工作的过程中,抽时间学习一下相关的软件知识,以及其他开发语言,比如流行的java,jsp等等,知识范围不要过于局限。将来有条件了也可以参加些职业培训,大有好处。
如果兄弟现在身上没钱,一时半会有不好找到工作,那建议可以先扩大就业范围,保安啦,服务生啦,先干个一段时间,稍微攒点钱,缓解一下压力,有点资本,再专心找工作。但是此过程中注意学习。
你可以在网络搜 “段小磊”,不管有没有夸张成分,但是可以是个例子。
可以看出兄弟是个想自立的人,不想向家里要钱。好样的。万不得已,还是要向家里要些,先让自己过得去。
祝兄弟好运!

‘叁’ 用Java如何实现给视频中无关人员打码

其实我觉得python更能胜任这种工作…

‘肆’ java如何驱动条形码打印机并能实现WEB打印

参考 javax.print.*

大致过程是这样的:
写一个servlet,专门实现打印服务

这个servlet内是这样处理的:
1.获取打印机对象printer
通过枚举 PrintService printservices[] = PrintServiceLookup.lookupPrintServices(...)

2.生成DocPrintJob job=PrintService.createPrintJob();

3.生成文档 Doc doc = new SimpleDoc(...);
需要3个参数
第一个是打印的数据,可以根据条码,生成一幅图像,然把图像作为输入流,作为第一个参数
第二个参数用一个 DocFlavor.INPUT_STREAM 对象
DocFlavor类有相应的静态变量,你根据图像的mime类型选择
第三个参数是一个DocAttributeSet对象
4.打印
job.print(doc, pras);

这是我以前写的练习:
-----------------------------------------------------------------------
package printtest;

import java.io.*;
import javax.print.*;
import java.awt.*;
import java.awt.image.*;
import javax.imageio.*;

public class Application1
{
public static void test(String code)
{
try{
DocFlavor flavor=DocFlavor.INPUT_STREAM.JPEG;

//get a printer
PrintService[] printers=PrintServiceLookup.lookupPrintServices( flavor, null);
for( int i=0; i<printers.length; i++ ) System.out.println( printers[i].getName());
PrintService printer=printers[0];

//job
DocPrintJob job=printer.createPrintJob();

//document
BufferedImage img=new BufferedImage( 400,300, BufferedImage.TYPE_USHORT_555_RGB );
Graphics g=img.getGraphics();
g.drawString(code, 100,100);
ByteArrayOutputStream outstream=new ByteArrayOutputStream();
ImageIO.write( img, "jpg", outstream);
byte[] buf=outstream.toByteArray();
InputStream stream=new ByteArrayInputStream(buf);
Doc doc=new SimpleDoc(stream,flavor,null);

//print
job.print(doc, null);
}
catch(Exception e)
{
e.printStackTrace();
}
}
//Main method
public static void main(String[] args)
{
test("12345");
}
}

‘伍’ 联通验证码识别,用JAVA或C语言。

去掉干扰线用tesseract识别的话 像这种图片我想正确率应该不会太低了,

低的原因是你要训练自己的库,默认带的语言包只是针对印刷体文字的

不大适合有变形 扭曲之类的字符

‘陆’ 码农都是用什么语言打码

最基础的入门级别一般学习C语言或Visual Basic语言,后续的大神一般采用更复杂的JAVA语言。如果你想学习游戏编程,可以学习Unity。

‘柒’ 在java中人民币汇率转换成美元和欧元怎么写打码

public class Test {public static void main(String args[]){String word = "hello world ! 123456 hI, tHEre";String[] words =word.split(" "); for (int i = 0; i < words.length; i++) {for (int j = 0; j < words[i].length(); j++) {if (j==0) {System.out.print((words[i].charAt(j)+"").toUpperCase());} else {System.out.print((words[i].charAt(j)+"").toLowerCase());}}System.out.print(" ");}}}使用空格区分单词,自动单词首字母大写,其他部分小写。如果单词首字母以外的部分不需要修改的话把else删掉即可。

‘捌’ 求一个能自动打验证码的软件 要能用的 不要病毒

是web 上用的吗,这里有个 jsp 上用的:

package com.vnvmall.goldfish.util;

import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.IOException;
import java.util.Random;

import javax.imageio.ImageIO;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

public class ValidateImage extends HttpServlet
{
public void init(ServletConfig conf) throws ServletException
{
super.init(conf);
}

public void doGet(HttpServletRequest req,HttpServletResponse res) throws ServletException, IOException
{
res.setContentType("image/jpeg");
res.setHeader("Pragma","No-cache");
res.setHeader("Cache-Control","no-cache");
res.setDateHeader("Expires", 0);
HttpSession session = req.getSession();

// 在内存中创建图象
int width=60, height=20;
BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);

// 获取图形上下文
Graphics g = image.getGraphics();

// 生成随机类
Random random = new Random();

// 设定背景色
g.setColor(getRandColor(200,250));
g.fillRect(0, 0, width, height);

// 设定字体
g.setFont(new Font("Times New Roman",Font.PLAIN,18));

// 画边框
//g.setColor(new Color());
//g.drawRect(0,0,width-1,height-1);

// 随机产生155条干扰线,使图象中的认证码不易被其它程序探测到
g.setColor(getRandColor(160,200));
for (int i=0;i<155;i++)
{
int x = random.nextInt(width);
int y = random.nextInt(height);
int xl = random.nextInt(12);
int yl = random.nextInt(12);
g.drawLine(x,y,x+xl,y+yl);
}

// 取随机产生的认证码(4位数字)
String sRand="";
for (int i=0;i<4;i++)
{
String rand=String.valueOf(random.nextInt(10));
sRand+=rand;
// 将认证码显示到图象中
g.setColor(new Color(20+random.nextInt(110),20+random.nextInt(110),20+random.nextInt(110)));
// 调用函数出来的颜色相同,可能是因为种子太接近,所以只能直接生成
g.drawString(rand,13*i+6,16);
}

// 将认证码存入SESSION
session.setAttribute("VerifyCode",sRand);

// 图象生效
g.dispose();

// 输出图象到页面
ImageIO.write(image, "JPEG", res.getOutputStream());
//JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(res.getOutputStream());
//encoder.encode(image);
}

public void doPost(HttpServletRequest req,HttpServletResponse res) throws ServletException, IOException
{
doGet(req,res);
}

//给定范围获得随机颜色
private Color getRandColor(int fc,int bc)
{
Random random = new Random();
if(fc>255) fc=255;
if(bc>255) bc=255;
int r=fc+random.nextInt(bc-fc);
int g=fc+random.nextInt(bc-fc);
int b=fc+random.nextInt(bc-fc);
return new Color(r,g,b);
}
}

‘玖’ 打码中的大小写要分的吗

如果指的是java源代码,需要区分大小写。基本所有的高级语言都需要区分大小写,只有个别语言和汇编不需要区分。。。

阅读全文

与java打码相关的资料

热点内容
正宗溯源码大燕条一克一般多少钱 浏览:917
电脑感染exe文件夹 浏览:916
wpsppt怎么转pdf格式 浏览:88
腾讯文档在线编辑怎么添加密码 浏览:880
本地不能访问服务器地址 浏览:865
访问服务器命令 浏览:835
华为云服务器分销商 浏览:954
Linux定位内存泄露 浏览:198
工程加密狗视频 浏览:720
不在内网怎么连接服务器 浏览:664
云服务器app安卓下载 浏览:966
如何查看linux服务器的核心数 浏览:137
交易平台小程序源码下载 浏览:148
程序员记笔记用什么app免费的 浏览:646
java与单片机 浏览:897
服务器内网如何通过公网映射 浏览:478
程序员穿越到宋代 浏览:624
怎么使用云服务器挂游戏 浏览:620
真实的幸福pdf 浏览:345
d盘php调用c盘的mysql 浏览:268