- 浏览: 129752 次
- 性别:
- 来自: 上海
最新评论
-
一叶之源:
总结一下eclipse中的Job机制 -
xinxinlong:
lAnchor.getDy1() 是什么意思
操作excel--稍后整理 -
defrag_sly:
3.7是好用的,只是再mac下面不支持,mac不支持的效果还有 ...
swt下如何做出一个反向展开效果的tree -
defrag_sly:
eclipse3.7不好用了。谁知道给补充一下。
swt下如何做出一个反向展开效果的tree -
hamlzf:
好文!mark!
基于 OSGi 的面向服务的组件编程
OfficeDrawingWithGraphics
import java.io.FileOutputStream;
import java.io.IOException;
import org.apache.poi.hssf.usermodel.HSSFChildAnchor;
import org.apache.poi.hssf.usermodel.HSSFClientAnchor;
import org.apache.poi.hssf.usermodel.HSSFPatriarch;
import org.apache.poi.hssf.usermodel.HSSFShapeGroup;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
public class Line {
/**
* @param args
*/
public static void main(String[] args) {
FileOutputStream fileOut = null;
try {
HSSFWorkbook wb = new HSSFWorkbook();
HSSFSheet sheet1 = wb.createSheet("new sheet");
// HSSFRow row = sheet1.createRow(2);
HSSFPatriarch patriarch = sheet1.createDrawingPatriarch();
HSSFClientAnchor anchor = new HSSFClientAnchor(0, 0, 0, 0,
(short) 10, 10, (short) 20, 20);
HSSFShapeGroup g = patriarch.createGroup(anchor);
g.setCoordinates(0, 0, 100, 100);
HSSFChildAnchor lAnchor = new HSSFChildAnchor(0, 100, 100, 0);
g.createShape(lAnchor);
int length = 6;
Math.abs(lAnchor.getDy1() - Math.sin(30 * Math.PI / 180) * length);
Math.abs(lAnchor.getDx1() - Math.cos(30 * Math.PI / 180) * length);
Math.abs(lAnchor.getDy1() - Math.sin(60 * Math.PI / 180) * length);
Math.abs(lAnchor.getDx1() - Math.cos(60 * Math.PI / 180) * length);
Math.abs(lAnchor.getDy2() - Math.sin(30 * Math.PI / 180) * length);
Math.abs(lAnchor.getDx2() - Math.cos(30 * Math.PI / 180) * length);
Math.abs(lAnchor.getDy2() - Math.sin(60 * Math.PI / 180) * length);
Math.abs(lAnchor.getDx2() - Math.cos(60 * Math.PI / 180) * length);
// Math.sin(60 * Math.PI / 180)*length;
// Math.cos(60 * Math.PI / 180)*length;
HSSFChildAnchor al = new HSSFChildAnchor(lAnchor.getDx1(), lAnchor
.getDy1(), (int) Math.abs(lAnchor.getDx1()
- Math.cos(30 * Math.PI / 180) * length), (int) Math
.abs(lAnchor.getDy1() - Math.sin(30 * Math.PI / 180)
* length));
HSSFChildAnchor ar = new HSSFChildAnchor(lAnchor.getDx1(), lAnchor
.getDy1(), (int) Math.abs(lAnchor.getDx1()
- Math.cos(60 * Math.PI / 180) * length), (int) Math
.abs(lAnchor.getDy1() - Math.sin(60 * Math.PI / 180)
* length));
HSSFChildAnchor atl = new HSSFChildAnchor(lAnchor.getDx2(), lAnchor
.getDy2(), (int) Math.abs(lAnchor.getDx2()
- Math.cos(30 * Math.PI / 180) * length), (int) Math
.abs(lAnchor.getDy2() - Math.sin(30 * Math.PI / 180)
* length));
HSSFChildAnchor atr = new HSSFChildAnchor(lAnchor.getDx2(), lAnchor
.getDy2(), (int) Math.abs(lAnchor.getDx2()
- Math.cos(60 * Math.PI / 180) * length), (int) Math
.abs(lAnchor.getDy2() - Math.sin(60 * Math.PI / 180)
* length));
g.createShape(al);
g.createShape(ar);
g.createShape(atl);
g.createShape(atr);
fileOut = new FileOutputStream("d:/workbook.xls");
wb.write(fileOut);
fileOut.close();
} catch (IOException io) {
io.printStackTrace();
System.out.println("io erorr : " + io.getMessage());
} finally {
if (fileOut != null) {
try {
fileOut.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
}
import java.awt.image.BufferedImage;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import javax.imageio.ImageIO;
import org.apache.poi.hssf.usermodel.HSSFClientAnchor;
import org.apache.poi.hssf.usermodel.HSSFPatriarch;
import org.apache.poi.hssf.usermodel.HSSFRichTextString;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFTextbox;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
;
public class TestPOI {
public static void main(String[] args) {
FileOutputStream fileOut = null;
BufferedImage bufferImg = null;
BufferedImage bufferImg1 = null;
try {
// 先把读进来的图片放到一个ByteArrayOutputStream中,以便产生ByteArray
ByteArrayOutputStream byteArrayOut = new ByteArrayOutputStream();
ByteArrayOutputStream byteArrayOut1 = new ByteArrayOutputStream();
bufferImg = ImageIO.read(new File("d:/Control_Treeview.jpg"));
bufferImg1 = ImageIO.read(new File("d:/Control_Treeview.jpg"));
ImageIO.write(bufferImg, "jpg", byteArrayOut);
ImageIO.write(bufferImg1, "jpg", byteArrayOut1);
// 创建一个工作薄
HSSFWorkbook wb = new HSSFWorkbook();
HSSFSheet sheet1 = wb.createSheet("new sheet");
// HSSFRow row = sheet1.createRow(2);
HSSFPatriarch patriarch = sheet1.createDrawingPatriarch();
HSSFClientAnchor anchor3 = new HSSFClientAnchor(0, 0, 512, 255,
(short) 1, 1, (short) 10, 20);
HSSFClientAnchor anchor1 = new HSSFClientAnchor(0, 0, 512, 255,
(short) 2, 30, (short) 10, 60);
anchor1.setAnchorType(2);
// HSSFClientAnchor anchor3 = new
// HSSFClientAnchor(0,0,512,255,(short) 1,1,(short)10,20);
// 插入图片
patriarch.createPicture(anchor3, wb.addPicture(byteArrayOut
.toByteArray(), HSSFWorkbook.PICTURE_TYPE_JPEG));
patriarch.createPicture(anchor3, wb.addPicture(byteArrayOut1
.toByteArray(), HSSFWorkbook.PICTURE_TYPE_JPEG));
HSSFTextbox createComment = patriarch.createTextbox(anchor3);
createComment.setString(new HSSFRichTextString("aaaaaaaaa"));
patriarch.createSimpleShape(anchor3);
fileOut = new FileOutputStream("d:/workbook.xls");
// 写入excel文件
wb.write(fileOut);
fileOut.close();
} catch (IOException io) {
io.printStackTrace();
System.out.println("io erorr : " + io.getMessage());
} finally {
if (fileOut != null) {
try {
fileOut.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
}
import java.io.FileOutputStream;
import java.io.IOException;
import org.apache.poi.hssf.usermodel.HSSFChildAnchor;
import org.apache.poi.hssf.usermodel.HSSFClientAnchor;
import org.apache.poi.hssf.usermodel.HSSFPatriarch;
import org.apache.poi.hssf.usermodel.HSSFShapeGroup;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
public class Line {
/**
* @param args
*/
public static void main(String[] args) {
FileOutputStream fileOut = null;
try {
HSSFWorkbook wb = new HSSFWorkbook();
HSSFSheet sheet1 = wb.createSheet("new sheet");
// HSSFRow row = sheet1.createRow(2);
HSSFPatriarch patriarch = sheet1.createDrawingPatriarch();
HSSFClientAnchor anchor = new HSSFClientAnchor(0, 0, 0, 0,
(short) 10, 10, (short) 20, 20);
HSSFShapeGroup g = patriarch.createGroup(anchor);
g.setCoordinates(0, 0, 100, 100);
HSSFChildAnchor lAnchor = new HSSFChildAnchor(0, 100, 100, 0);
g.createShape(lAnchor);
int length = 6;
Math.abs(lAnchor.getDy1() - Math.sin(30 * Math.PI / 180) * length);
Math.abs(lAnchor.getDx1() - Math.cos(30 * Math.PI / 180) * length);
Math.abs(lAnchor.getDy1() - Math.sin(60 * Math.PI / 180) * length);
Math.abs(lAnchor.getDx1() - Math.cos(60 * Math.PI / 180) * length);
Math.abs(lAnchor.getDy2() - Math.sin(30 * Math.PI / 180) * length);
Math.abs(lAnchor.getDx2() - Math.cos(30 * Math.PI / 180) * length);
Math.abs(lAnchor.getDy2() - Math.sin(60 * Math.PI / 180) * length);
Math.abs(lAnchor.getDx2() - Math.cos(60 * Math.PI / 180) * length);
// Math.sin(60 * Math.PI / 180)*length;
// Math.cos(60 * Math.PI / 180)*length;
HSSFChildAnchor al = new HSSFChildAnchor(lAnchor.getDx1(), lAnchor
.getDy1(), (int) Math.abs(lAnchor.getDx1()
- Math.cos(30 * Math.PI / 180) * length), (int) Math
.abs(lAnchor.getDy1() - Math.sin(30 * Math.PI / 180)
* length));
HSSFChildAnchor ar = new HSSFChildAnchor(lAnchor.getDx1(), lAnchor
.getDy1(), (int) Math.abs(lAnchor.getDx1()
- Math.cos(60 * Math.PI / 180) * length), (int) Math
.abs(lAnchor.getDy1() - Math.sin(60 * Math.PI / 180)
* length));
HSSFChildAnchor atl = new HSSFChildAnchor(lAnchor.getDx2(), lAnchor
.getDy2(), (int) Math.abs(lAnchor.getDx2()
- Math.cos(30 * Math.PI / 180) * length), (int) Math
.abs(lAnchor.getDy2() - Math.sin(30 * Math.PI / 180)
* length));
HSSFChildAnchor atr = new HSSFChildAnchor(lAnchor.getDx2(), lAnchor
.getDy2(), (int) Math.abs(lAnchor.getDx2()
- Math.cos(60 * Math.PI / 180) * length), (int) Math
.abs(lAnchor.getDy2() - Math.sin(60 * Math.PI / 180)
* length));
g.createShape(al);
g.createShape(ar);
g.createShape(atl);
g.createShape(atr);
fileOut = new FileOutputStream("d:/workbook.xls");
wb.write(fileOut);
fileOut.close();
} catch (IOException io) {
io.printStackTrace();
System.out.println("io erorr : " + io.getMessage());
} finally {
if (fileOut != null) {
try {
fileOut.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
}
import java.awt.image.BufferedImage;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import javax.imageio.ImageIO;
import org.apache.poi.hssf.usermodel.HSSFClientAnchor;
import org.apache.poi.hssf.usermodel.HSSFPatriarch;
import org.apache.poi.hssf.usermodel.HSSFRichTextString;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFTextbox;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
;
public class TestPOI {
public static void main(String[] args) {
FileOutputStream fileOut = null;
BufferedImage bufferImg = null;
BufferedImage bufferImg1 = null;
try {
// 先把读进来的图片放到一个ByteArrayOutputStream中,以便产生ByteArray
ByteArrayOutputStream byteArrayOut = new ByteArrayOutputStream();
ByteArrayOutputStream byteArrayOut1 = new ByteArrayOutputStream();
bufferImg = ImageIO.read(new File("d:/Control_Treeview.jpg"));
bufferImg1 = ImageIO.read(new File("d:/Control_Treeview.jpg"));
ImageIO.write(bufferImg, "jpg", byteArrayOut);
ImageIO.write(bufferImg1, "jpg", byteArrayOut1);
// 创建一个工作薄
HSSFWorkbook wb = new HSSFWorkbook();
HSSFSheet sheet1 = wb.createSheet("new sheet");
// HSSFRow row = sheet1.createRow(2);
HSSFPatriarch patriarch = sheet1.createDrawingPatriarch();
HSSFClientAnchor anchor3 = new HSSFClientAnchor(0, 0, 512, 255,
(short) 1, 1, (short) 10, 20);
HSSFClientAnchor anchor1 = new HSSFClientAnchor(0, 0, 512, 255,
(short) 2, 30, (short) 10, 60);
anchor1.setAnchorType(2);
// HSSFClientAnchor anchor3 = new
// HSSFClientAnchor(0,0,512,255,(short) 1,1,(short)10,20);
// 插入图片
patriarch.createPicture(anchor3, wb.addPicture(byteArrayOut
.toByteArray(), HSSFWorkbook.PICTURE_TYPE_JPEG));
patriarch.createPicture(anchor3, wb.addPicture(byteArrayOut1
.toByteArray(), HSSFWorkbook.PICTURE_TYPE_JPEG));
HSSFTextbox createComment = patriarch.createTextbox(anchor3);
createComment.setString(new HSSFRichTextString("aaaaaaaaa"));
patriarch.createSimpleShape(anchor3);
fileOut = new FileOutputStream("d:/workbook.xls");
// 写入excel文件
wb.write(fileOut);
fileOut.close();
} catch (IOException io) {
io.printStackTrace();
System.out.println("io erorr : " + io.getMessage());
} finally {
if (fileOut != null) {
try {
fileOut.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
}
- examples.rar (54.8 KB)
- 下载次数: 4
发表评论
-
在线native2ascii。方便很多
2011-04-09 15:27 1365http://www.00bug.com/native2asc ... -
Resin eclipse 插件无法下载问题临时解决方案
2011-03-10 13:32 3093resin主页上关于插件没有明确的下载地址,给了一个eclip ... -
javabean与xml互转工具wutka
2011-02-11 14:59 2043wutka这个东西太好了,拿出来与大家分享。 publi ... -
String split
2009-12-02 16:15 932错误:split(".") 正确:spli ... -
收藏两个地址
2009-10-16 15:29 892http://www.riawork.org/opentopi ... -
程序的安全性包括哪些方面?是什么原因让我们不去考虑程序的安全性,程序又运行的相对安全???
2009-03-20 15:01 1243如题,欢迎大家讨论。 -
读深入jvm笔记
2009-03-20 11:21 10281、类加载器分为,root和用户,root级的属于jvm的一部 ... -
JavaFX初体验
2009-03-05 18:16 1588利用下班前的2小时,体验了一把javaFX。看着网上热热闹闹的 ... -
一个计算tree层次的方法,请大家多提意见
2009-02-24 18:03 1058private int getTreeLevel(Tree ... -
我关注的几个java事件
2009-02-12 16:50 1673JWebPane : 解析html时或 ... -
高性能网页开发新20条规则详解
2008-12-18 17:39 1081Yahoo!优异性能(Yahoo!'s E ... -
url---〉image(1)
2008-11-18 12:20 12141、协议支持简单 2、不支持css 3、http协议需要改进 ... -
关于垃圾收集的一些话
2008-11-07 14:07 896“很难相信Java居然能和C++一样快,甚至还能更快一些。” ... -
关于java的性能
2008-11-07 14:06 895Java语言特别强调准确性,但可靠的行为要以性能作为代价。这一 ... -
多线程,等待和通知
2008-11-07 11:15 12033. 等待和通知 通过前两个例子的实践,我们知道无论sleep ... -
移位运算符
2008-10-14 12:07 1470移位运算符面向的运算对象也是二进制的“位”。可单独用它们处理整 ... -
按位运算符
2008-10-14 11:09 1359按位运算符允许我们操作一个整数主数据类型中的单个“比特”,即二 ... -
Java的数组
2008-10-13 14:31 806Java的一项主要设计目标就是安全性。所以在C和C++里困扰程 ... -
对象保存到什么地方
2008-10-13 14:02 1049程序运行时,我们最好 ...
相关推荐
Excel作为最广泛应用的工具之一,其文件格式分为多种,包括早期的Excel 2003 (.xls) 和稍后版本的Excel 2007及更高版本 (.xlsx)。对于这些文件的读写操作,通常需要借助特定的编程库或API来实现。在这个场景中,我们...
- 安装完成后,你会看到一个名称可能是乱码的字体名,请记住这个名字,因为稍后会用到它。(如果需要更改字体名称,则操作较为复杂,此处不作详细介绍。) #### 操作步骤 接下来,我们将介绍如何利用Endylau.ttf...
【标题】:“Healthcare-dbm:稍后” 【描述】:“Healthcare-dbm:稍后”这个描述似乎是在暗示这是一个关于医疗保健数据库管理系统的项目,但具体细节并未给出。可能是由于项目的开发或更新正在进行中,因此无法...
- **稍后安装系统**: 表示在创建虚拟机时暂时不进行操作系统安装,可以在之后选择合适的时机安装。 - **客户机操作系统**: 选择银河麒麟服务器作为客户机操作系统类型。 - **虚拟机名称位置**: 指定虚拟机的名称...
**Excel 2010电子表格的基本操作:保存工作簿** 在Excel 2010中,保存工作簿是一项至关重要的操作,它确保了你在处理数据时不会因为意外情况(如电源故障或系统崩溃)而丢失任何工作。下面将详细阐述如何在Excel ...
1. **汇编语言基础**:介绍汇编语言的基本语法,包括指令集、操作码、寻址模式等。 2. **C语言与汇编的交互**:讲解如何在C程序中嵌入汇编代码,以及如何使用C函数调用汇编子程序。 3. **链接与加载过程**:解释如何...
在Android开发中,当应用程序需要执行耗时操作,如网络请求、数据库操作或大量计算时,为了提供良好的用户体验,我们通常会使用ProgressDialog显示一个加载指示器,告知用户程序正在后台处理,并请求他们稍等片刻。...
QC::稍后稍后使用。 重要提示:此功能内置于 queue_classic 中,从 3.1 开始。 重要提示:此分支适用于 QueueClassic 3。请参阅分支以获取先前版本的支持。安装将此行添加到应用程序的 Gemfile 中: gem "queue_...
虚拟钱包 稍后会更新
在本例中,它提供了对Excel对象模型的访问,使得开发者能够使用C#、VB.NET等.NET语言来创建、编辑和操作Excel工作簿、工作表和单元格。 标签 "Interop" 是关键点,它代表“互操作性”。在.NET环境中,Interop是指...
遍历这个结果集,将数据存储在适当的Java集合,如List或ArrayList中,以便稍后写入Excel。 5. **创建Excel工作簿**:使用JXL提供的`Workbook`类创建一个新的工作簿对象。这将是你的Excel文件的基础。 6. **创建...
2.导入时,显示请稍后。。。提醒框,完毕后会自动隐藏 3.全面扫描Excel数据,将所有异常详细信息写入Excel,返回客户端,提供用户下载。方便修正错误数据。 4.支持大批量数据导入,经本人测试,3千条数据,只需短短2-...
本作品采用EXCEL 公式+VBA制作,既可根据你平时使用EXCEL的习惯和方式操作充分发挥EXCEL的功能,又能利用本作品提高效率。 结构紧凑,界面简洁 本作品工作表个数极少,分别是总表、表册、设置。你可以先在总表输入、...
在使用Windows 10操作系统时,有时会遇到QQ远程控制功能因系统权限问题而无法正常工作的情况。当出现“QQ远程系统权限原因,暂时无法操作”的提示时,可以通过以下步骤来解决问题: 首先,我们需要在被控端的电脑上...
这个程序的主要目标是提高教育机构或教师向学生分发成绩单的效率,通过自动化的方式减少手动操作的繁琐过程。 首先,我们要理解Excel在其中的角色。Excel是一种广泛使用的电子表格软件,它允许用户组织和处理数据,...
这类似于手动在Excel界面上的操作流程:从Excel程序开始,打开一个工作簿,选择一个工作表,然后定位到特定的单元格。 #### 不使用“Application”限定词的情况 在许多情况下,为了方便,可以不使用“Application...
创建一个新的数据库和表,以便稍后导入数据。 ```bash sqlite3 test.db CREATE TABLE IF NOT EXISTS data ( id INTEGER PRIMARY KEY AUTOINCREMENT, column1 TEXT, column2 TEXT, column3 TEXT ); ``` **3. ...
3. **遍历行和单元格**:现在,我们可以迭代工作表中的每一行和每个单元格,读取数据并存储到一个适当的数据结构中,例如`List, string>>`,以便稍后生成XML。 ```csharp List, string>> dataRows = new List, ...
4. **读取数据**:遍历工作表的每一行(`Row`对象)和每个单元格(`Cell`对象),将数据存储到适当的数据结构,如ArrayList或HashMap,以便稍后插入数据库。 ```java for (Row row : sheet) { if (!row....