線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1926
推到 Plurk!
推到 Facebook!

在Applet裡讀入RAW影像檔並顯示

尚未結案
kawa0710
一般會員


發表:1
回覆:1
積分:0
註冊:2005-03-04

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-03-04 14:18:34 IP:163.17.xxx.xxx 未訂閱
我在Applet裡逐個byte讀入RAW灰階影像的值, 並將之存成Graphics再顯示到Applet... 在Eclipse平台時預覽一切沒問題, 但用IE6.0時影像就出不來... 請問各位大大可以幫我解決嗎??    以下是錯誤碼 ------------ Java(TM) Plug-in: 版本 1.4.2 使用 JRE 版本 1.4.2 Java HotSpot(TM) Client VM 使用者主目錄 = C:\Documents and Settings\Administrator    代理程式組態﹕自動代理配置      URL: http://proxy.cyut.edu.tw/proxy.pac    java.security.AccessControlException: access denied (java.io.FilePermission file:\C:\AppServ\www\ling\lung_493_600.raw read)         at java.security.AccessControlContext.checkPermission(Unknown Source)         at java.security.AccessController.checkPermission(Unknown Source)         at java.lang.SecurityManager.checkPermission(Unknown Source)         at java.lang.SecurityManager.checkRead(Unknown Source)         at java.io.FileInputStream.(Unknown Source) at java.io.FileInputStream.(Unknown Source) at ViewRawApplet.run(ViewRawApplet.java:39) at java.lang.Thread.run(Unknown Source) ------------------------------------------------- 以下是程式碼 ------------ import java.awt.*; import java.io.*; import javax.swing.JApplet; public class ViewRawApplet extends JApplet implements Runnable { private Image OffScreen; private Graphics drawOffScreen; public static int C; int a, i = 0, j = 0; BufferedInputStream bi; public void init() { OffScreen = createImage(493, 600); drawOffScreen = OffScreen.getGraphics(); } public void start() { (new Thread(this)).start(); } public void run() { drawOffScreen.clearRect(0, 0, 493, 600); try { bi = new BufferedInputStream(new FileInputStream("lung_493_600.raw")); //http://www.cyut.edu.tw/~s9314638/lung_493_600.raw while ((a = bi.read()) != -1) { drawOffScreen.setColor(new Color(a, a, a)); drawOffScreen.drawLine(j, i, j, i); j ; if (j % 493 == 0) { i ; j = 0; } } bi.close(); } catch (IOException e) { System.out.println(e); } repaint(); } public void update(Graphics g) { paint(g); } public void paint(Graphics g) { super.paint(g); g.drawImage(OffScreen, 0, 0, this); } }
neoart
版主


發表:22
回覆:582
積分:425
註冊:2003-05-09

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-03-04 21:54:28 IP:61.56.xxx.xxx 未訂閱
因為applet要做file I/O有安全性的考量. 要做簽章 參考: http://www.javaworld.com.tw/blog/archives/ciyawasay/000304.html 如果不想這麼麻煩(像我就不會隨便接受別人的certification),請直接把你的raw file產生方式改為用 url 的方式放在applet的目錄讀入,如
====================
 String tmp = getDocumentBase();
 tmp = tmp.substring(0,tmp.lastIndexOf('/'));
 URL url = new URL(tmp   "/myimage.gif");
 Image myImg = getToolkit().getImage(url); 
====================
再做影像處理
系統時間:2024-05-10 2:03:39
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!