Compare commits
1 Commits
option/cla
...
option/no-
Author | SHA1 | Date | |
---|---|---|---|
875e31a39a
|
@@ -192,7 +192,7 @@ public class Combiner extends JFrame
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
JOptionPane.showMessageDialog(this, "写入文件失败: "+e.toString());
|
||||
JOptionPane.showMessageDialog(this, "Failed to write file: "+e.toString());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -39,9 +39,9 @@ public class FileAnalysis extends javax.swing.JFrame {
|
||||
{
|
||||
rep = new StringBuilder();
|
||||
rep.append("<html><center><b>");
|
||||
rep.append("文件格式报告");
|
||||
rep.append("File format report");
|
||||
rep.append("</b></center>");
|
||||
rep.append(("<br>文件: "+ifile.getName()));
|
||||
rep.append(("<br>File: "+ifile.getName()));
|
||||
try{
|
||||
FileInputStream fis = new FileInputStream(ifile);
|
||||
f = new byte[(int)ifile.length()];
|
||||
@@ -51,7 +51,7 @@ public class FileAnalysis extends javax.swing.JFrame {
|
||||
}
|
||||
catch(Exception e)
|
||||
{
|
||||
rep.append(("读取文件时出错: "+e.toString()));
|
||||
rep.append(("Error reading file: "+e.toString()));
|
||||
}
|
||||
rep.append("</html>");
|
||||
report.setText(rep.toString());
|
||||
@@ -66,7 +66,7 @@ public class FileAnalysis extends javax.swing.JFrame {
|
||||
// analyse f, write report to rep
|
||||
if(f.length<4)
|
||||
{
|
||||
rep.append("<br>文件太短?");
|
||||
rep.append("<br>file too short?");
|
||||
return;
|
||||
}
|
||||
if(f[0] == 'B' && f[1] == 'M')
|
||||
@@ -78,7 +78,7 @@ public class FileAnalysis extends javax.swing.JFrame {
|
||||
analyse_gif();
|
||||
else if(f[0]==(byte)0xff && f[1]==(byte)0xd8)
|
||||
analyse_jpg();
|
||||
else rep.append("<br>文件格式分析代码尚未完成!");
|
||||
else rep.append("<br>File format analysis code not done yet!");
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -90,8 +90,8 @@ public class FileAnalysis extends javax.swing.JFrame {
|
||||
cpos = analyse_jpg_sections(cpos);
|
||||
if(cpos<f.length)
|
||||
{
|
||||
rep.append(("<br>文件末尾的附加字节数 = " +(f.length-cpos)));
|
||||
rep.append("<br>转储附加字节:");
|
||||
rep.append(("<br>Additional bytes at end of file = " +(f.length-cpos)));
|
||||
rep.append("<br>Dump of additional bytes:");
|
||||
fdump(cpos, f.length);
|
||||
}
|
||||
}
|
||||
@@ -105,12 +105,12 @@ public class FileAnalysis extends javax.swing.JFrame {
|
||||
{
|
||||
if(f[pos]==(byte)0xff && f[pos+1]==(byte)0xd8)
|
||||
{
|
||||
rep.append("<br>图像的开头");
|
||||
rep.append("<br>Start of Image");
|
||||
pos+=2;
|
||||
}
|
||||
else if(f[pos] == (byte) 0xff && f[pos + 1] == (byte) 0xd9)
|
||||
{
|
||||
rep.append("<br><br>图像结尾");
|
||||
rep.append("<br><br>End of Image");
|
||||
pos+=2;
|
||||
return pos;
|
||||
}
|
||||
@@ -932,7 +932,7 @@ public class FileAnalysis extends javax.swing.JFrame {
|
||||
OKButton = new javax.swing.JButton();
|
||||
|
||||
setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
|
||||
setTitle("文件格式分析");
|
||||
setTitle("File Format Analysis");
|
||||
|
||||
jPanel1.setMinimumSize(new java.awt.Dimension(400, 300));
|
||||
jPanel1.setPreferredSize(new java.awt.Dimension(400, 350));
|
||||
@@ -941,7 +941,7 @@ public class FileAnalysis extends javax.swing.JFrame {
|
||||
jScrollPane1.setPreferredSize(new java.awt.Dimension(400, 260));
|
||||
|
||||
report.setContentType("text/html");
|
||||
report.setFont(new java.awt.Font("微软雅黑", 0, 14)); // NOI18N
|
||||
report.setFont(new java.awt.Font("Courier New", 0, 14)); // NOI18N
|
||||
jScrollPane1.setViewportView(report);
|
||||
|
||||
javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
|
||||
@@ -960,7 +960,7 @@ public class FileAnalysis extends javax.swing.JFrame {
|
||||
jPanel2.setMinimumSize(new java.awt.Dimension(400, 35));
|
||||
jPanel2.setPreferredSize(new java.awt.Dimension(400, 35));
|
||||
|
||||
OKButton.setText("确认");
|
||||
OKButton.setText("OK");
|
||||
OKButton.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
|
||||
OKButton.addActionListener(new java.awt.event.ActionListener() {
|
||||
public void actionPerformed(java.awt.event.ActionEvent evt) {
|
||||
|
@@ -97,7 +97,7 @@ public class FrameBrowser extends JFrame
|
||||
frames.add(bnext);
|
||||
numframes++;
|
||||
}
|
||||
System.out.println("总帧数 " + numframes);
|
||||
System.out.println("total frames " + numframes);
|
||||
}
|
||||
catch (IOException e)
|
||||
{
|
||||
|
@@ -148,52 +148,52 @@ public class StegSolve extends JFrame {
|
||||
|
||||
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
|
||||
|
||||
menuFile.setText("文件");
|
||||
menuFile.setText("File");
|
||||
|
||||
fileOpen.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O, 0));
|
||||
fileOpen.setText("打开");
|
||||
fileOpen.setText("Open");
|
||||
fileOpen.addActionListener(this::fileOpenActionPerformed);
|
||||
menuFile.add(fileOpen);
|
||||
|
||||
fileSave.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S, 0));
|
||||
fileSave.setText("另存为");
|
||||
fileSave.setText("Save As");
|
||||
fileSave.addActionListener(this::fileSaveActionPerformed);
|
||||
menuFile.add(fileSave);
|
||||
|
||||
fileExit.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_X, 0));
|
||||
fileExit.setText("退出");
|
||||
fileExit.setText("Exit");
|
||||
fileExit.addActionListener(this::fileExitActionPerformed);
|
||||
menuFile.add(fileExit);
|
||||
|
||||
menuBar.add(menuFile);
|
||||
|
||||
menuAnalyse.setText("分析");
|
||||
menuAnalyse.setText("Analyse");
|
||||
|
||||
analyseFormat.setText("文件格式");
|
||||
analyseFormat.setText("File Format");
|
||||
analyseFormat.addActionListener(this::analyseFormatActionPerformed);
|
||||
menuAnalyse.add(analyseFormat);
|
||||
|
||||
analyseExtract.setText("数据提取");
|
||||
analyseExtract.setText("Data Extract");
|
||||
analyseExtract.addActionListener(this::analyseExtractActionPerformed);
|
||||
menuAnalyse.add(analyseExtract);
|
||||
|
||||
stereoSolve.setText("立体视图");
|
||||
stereoSolve.setText("Stereogram Solver");
|
||||
stereoSolve.addActionListener(this::stereoSolveActionPerformed);
|
||||
menuAnalyse.add(stereoSolve);
|
||||
|
||||
frameBrowse.setText("帧浏览器");
|
||||
frameBrowse.setText("Frame Browser");
|
||||
frameBrowse.addActionListener(this::frameBrowseActionPerformed);
|
||||
menuAnalyse.add(frameBrowse);
|
||||
|
||||
imageCombine.setText("图像合成器");
|
||||
imageCombine.setText("Image Combiner");
|
||||
imageCombine.addActionListener(this::imageCombineActionPerformed);
|
||||
menuAnalyse.add(imageCombine);
|
||||
|
||||
menuBar.add(menuAnalyse);
|
||||
|
||||
menuHelp.setText("帮助");
|
||||
menuHelp.setText("Help");
|
||||
|
||||
about.setText("关于");
|
||||
about.setText("About");
|
||||
about.addActionListener(this::aboutActionPerformed);
|
||||
menuHelp.add(about);
|
||||
|
||||
@@ -368,7 +368,7 @@ public class StegSolve extends JFrame {
|
||||
JFileChooser fileChooser = new JFileChooser(System.getProperty("user.dir"));
|
||||
FileNameExtensionFilter filter = new FileNameExtensionFilter("Images", "jpg", "jpeg", "gif", "bmp", "png");
|
||||
fileChooser.setFileFilter(filter);
|
||||
fileChooser.setDialogTitle("选择要合并的图像");
|
||||
fileChooser.setDialogTitle("Select image to combine with");
|
||||
int rVal = fileChooser.showOpenDialog(this);
|
||||
System.setProperty("user.dir", fileChooser.getCurrentDirectory().getAbsolutePath());
|
||||
if (rVal == JFileChooser.APPROVE_OPTION) {
|
||||
@@ -378,7 +378,7 @@ public class StegSolve extends JFrame {
|
||||
bi2 = ImageIO.read(sfile);
|
||||
new Combiner(bi, bi2).setVisible(true);
|
||||
} catch (Exception e) {
|
||||
JOptionPane.showMessageDialog(this, "加载文件失败: " + e.toString());
|
||||
JOptionPane.showMessageDialog(this, "Failed to load file: " + e.toString());
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -412,7 +412,7 @@ public class StegSolve extends JFrame {
|
||||
else
|
||||
ImageIO.write(bi, sfile.getName().substring(rns), sfile);
|
||||
} catch (Exception e) {
|
||||
JOptionPane.showMessageDialog(this, "写入文件失败: " + e.toString());
|
||||
JOptionPane.showMessageDialog(this, "Failed to write file: " + e.toString());
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -447,7 +447,7 @@ public class StegSolve extends JFrame {
|
||||
newImage();
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
JOptionPane.showMessageDialog(this, "加载文件失败: " + e.toString());
|
||||
JOptionPane.showMessageDialog(this, "Failed to load file: " + e.toString());
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -78,7 +78,7 @@ public class StereoTransform {
|
||||
*/
|
||||
public String getText()
|
||||
{
|
||||
return "偏移量: "+transNum;
|
||||
return "Offset: "+transNum;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@@ -375,9 +375,9 @@ public class Transform {
|
||||
switch(transNum)
|
||||
{
|
||||
case 0:
|
||||
return "正常图像";
|
||||
return "Normal Image";
|
||||
case 1:
|
||||
return "颜色反转 (Xor)";
|
||||
return "Colour Inversion (Xor)";
|
||||
case 2:
|
||||
case 3:
|
||||
case 4:
|
||||
@@ -429,7 +429,7 @@ public class Transform {
|
||||
case 40:
|
||||
return "Random colour map 3";
|
||||
case 41:
|
||||
return "灰度";
|
||||
return "Gray bits";
|
||||
default:
|
||||
return "";
|
||||
}
|
||||
|
@@ -26,7 +26,7 @@ public class ZoomSlider extends JPanel {
|
||||
private List<SliderChangeListener> changeListeners = new ArrayList<>();
|
||||
|
||||
ZoomSlider(int min, int max, int defaultValue) {
|
||||
JLabel tip = new JLabel("缩放:");
|
||||
JLabel tip = new JLabel("Zoom:");
|
||||
|
||||
add(tip);
|
||||
|
||||
|
Reference in New Issue
Block a user