欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

畫布上寫字java代碼,畫布上寫字java代碼是什么

java中上怎樣使字一個(gè)一個(gè)的寫在面板上去

用線程一個(gè)一個(gè)地寫上去

創(chuàng)新互聯(lián)是一家專注于成都做網(wǎng)站、成都網(wǎng)站制作、成都外貿(mào)網(wǎng)站建設(shè)與策劃設(shè)計(jì),稷山網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)十年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:稷山等地區(qū)。稷山做網(wǎng)站價(jià)格咨詢:13518219792

import java.awt.Color;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.SwingConstants;

public class TestFrame extends JFrame {

private JLabel jl;

public TestFrame() {

setName("一個(gè)一個(gè)字地顯示");

setBounds(200,200,300,300);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

jl = new JLabel();

jl.setHorizontalTextPosition((int) TOP_ALIGNMENT);

jl.setBackground(Color.red);

jl.setSize(300, 300);

jl.setVerticalAlignment(SwingConstants.TOP);

add(jl);

setVisible(true);

}

private void setLabelText(String str){

jl.setText(str);

}

private class WriterWord implements Runnable{

private String words;

public WriterWord(String words) {

this.words = words;

}

@Override

public void run() {

try {

for (int i = 0; i words.length(); i++) {

setLabelText(words.substring(0,i));

Thread.sleep(1000);//隔一秒設(shè)置label文本

}

} catch (Exception e) {

}

}

}

public static void main(String[] args) {

TestFrame tf = new TestFrame();

WriterWord ww = tf.new WriterWord("一個(gè)一個(gè)地打字");

Thread t = new Thread(ww);

t.start();//運(yùn)行線程

}

}

如何實(shí)現(xiàn)java畫圖程序,并可在已畫的圖上添加文字等,求大神T-T

只提指導(dǎo),沒有源碼。

在 Java 中要自定義組件,一般是覆蓋掉 protected void paintComponent(Graphics g); 方法就可以了,對于你這個(gè)類似畫筆的程序,首先,整個(gè)畫布是一個(gè)自定義的繼承自像 JPanel 一樣的東西,不過我們需要覆蓋它的 paintComponent 方法,因?yàn)椋阂弧⑽覀冃枰诋?dāng)鼠標(biāo)拖放一個(gè)東西時(shí)我們移動這個(gè)選中的圖形時(shí)記住它的位置;二、設(shè)定 label 時(shí)需要保存它的 Label。三、知道圖形的形狀。

,然后在 paintComponent 時(shí)依次畫出各個(gè)圖形來。

要繪圖:

1、直線,g.drawLine(x,y,x2,y2); // 參數(shù)分別是起止點(diǎn)坐標(biāo)。

2、矩形,g.fillRect(x, y, w, h); // 參數(shù)分別是左上角坐標(biāo)和寬及高。

3、橢圓,g.fillOval(x, y, w, h); // 參數(shù)分別是橢圓形的外切矩形的左上角坐標(biāo)及寬和高,當(dāng)w 和 h 相等時(shí)是個(gè)圓。

準(zhǔn)備繪圖前 g.setColor() 設(shè)置前景色;先把整個(gè)畫布用 g.fillRect() 涂成白色,再分別畫各個(gè)圖形,最后繪制 Label 應(yīng)該在畫圖形之后再做。

移動圖形,是給 畫布組件 addMouseMotionListener 來監(jiān)聽事件的,在拖動時(shí)先通過 mouseDragged 事件的 MouseEvent.point 知道它的位置是在哪個(gè)圖形的內(nèi)部,之后的移動就修改這個(gè)圖形的位置。

如何利用java在圖片上添加文字

// 讀取模板圖片內(nèi)容

BufferedImage image = ImageIO.read(new FileInputStream("c:\\test.jpg"));

Graphics2D g = image.createGraphics();// 得到圖形上下文

g.setColor(Color.BLACK); // 設(shè)置畫筆顏色

// 設(shè)置字體

g.setFont(new Font("宋體", Font.LAYOUT_LEFT_TO_RIGHT, 15));// 寫入簽名

// 下面這一句中的43,image.getHeight()-10可以改成你要的坐標(biāo)。

g.drawString("這是新加入的文字", 43, image.getHeight() - 10);

g.dispose();

FileOutputStream out = new FileOutputStream("c:\\test1.jpg");

JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);

encoder.encode(image);

out.close();

希望我的回答能幫助你 謝謝 呵呵 答案補(bǔ)充 肯定了 在一張紙上寫字 肯定會自動換行的 否則寫外面?邏輯都通不過去~ 答案補(bǔ)充 把你的意思說出了 是不是隨便的寫字然后就提交 就把字寫在了圖片上還是?多少字 有沒有約束? 答案補(bǔ)充 g.drawString("這是新加入的文字", 43, image.getHeight() - 10);

在這個(gè)做處理 你規(guī)定了字體的大小 那么獲取字符的長度*大小 一次判斷不要大于寬度 否則image.getHeight() - 10++ 你試試 應(yīng)該可以的 我這里沒有Eclipse 答案補(bǔ)充 public class mains {

/**

* @param args

*/

private static int fontsize = 15;

static String jj(String str)

{

String sContent = str;

sContent=sContent.replaceAll(" "," ");

sContent=sContent.replaceAll("br/","/");

sContent=sContent.replaceAll("br","/");

return sContent;

} 答案補(bǔ)充 static void hh(String str)

{

BufferedImage image;

try {

image = ImageIO.read(new FileInputStream("E:\\dian zi za zhi/789.jpg"));

Graphics2D g = image.createGraphics();// 得到圖形上下文

g.setColor(Color.BLACK); // 設(shè)置畫筆顏色

// 設(shè)置字體

g.setFont(new Font("宋體", Font.LAYOUT_LEFT_TO_RIGHT, fontsize));// 寫入簽名

// 下面這一句中的43,image.getHeight()-10可以改成你要的坐標(biāo)。

String text = jj(str); 答案補(bǔ)充 String [] text1 = text.split("/");

int h = image.getHeight();

int w = image.getWidth();

for(int i=0;itext1.length;i++)

{

g.drawString(text1[i],0,fontsize+i*fontsize);

}

g.dispose();

FileOutputStream out = new FileOutputStream("E:\\dian zi za zhi/789.jpg");

JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);

encoder.encode(image);

out.close(); 答案補(bǔ)充 public static void main(String[] args) {

// TODO Auto-generated method stub

hh("sdakljsdhwwbr/asdasdbr/a");

}

}

試試 可以換行 答案補(bǔ)充 關(guān)于 圖片的尺寸以及字體是否超出 你自己試著解決下 不要過于依賴問

java 從JTextField輸入文字,按Enter鍵盤 在畫布里面顯示 JTextField輸入文字多個(gè)也可以

在JTextField添加鍵盤事件,判斷按鍵是否是Enter鍵,如果是,就將JTextField的值取出來,顯示在畫布里

當(dāng)前標(biāo)題:畫布上寫字java代碼,畫布上寫字java代碼是什么
瀏覽路徑:http://chinadenli.net/article39/dseshsh.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化虛擬主機(jī)外貿(mào)建站云服務(wù)器網(wǎng)頁設(shè)計(jì)公司網(wǎng)站改版

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

搜索引擎優(yōu)化