★雪峰的Blog★

Learn Java, earn money!

用户操作
[即时聊天] [发私信] [加为好友]
XuefengID:asklxf
638889次访问,排名59好友0人,关注者15
asklxf的文章
原创 189 篇
翻译 0 篇
转载 19 篇
评论 519 篇
Xuefeng的公告



新书上市:《Spring 2.0核心技术与最佳实践》!
查看目录
访问JavaEE开发网




自我介绍
Xuefeng北京邮电大学本科毕业,精通J2EE/J2ME,欢迎交流

最近评论
cs_xiaoxiao:很好,推荐!
cs_xiaoxiao:很好,推荐!
123:scions of fate
scions of fate gold
为什么阅读全文的链接是这个地址?http://www.crackj2ee.com/Article/ShowArticle.asp。是谁中毒了?
lujing_angelar:为什么阅读全文的链接是这个地址?http://www.crackj2ee.com/Article/ShowArticle.asp。是谁中毒了?
文章分类
收藏
相册
Books
Landscape
MSN
Personal
Java站点
JavaEE开发网(RSS)
Live在线书店
中华诗词
存档
软件项目交易
订阅我的博客
XML聚合  FeedSky

原创 Jexi设计 (5) 页面样式收藏

新一篇: 习惯三:要事第一 | 旧一篇: 你的生活重心是什么?——读《高效能人士的七个习惯》

仿照Microsoft Word,PageStyle的基本属性:

float width; // 总宽度
float height; // 总高度
float leftMargin; // 左边距
float rightMargin; // 右边距

float topMargin; // 上边距
float bottomMargin; // 下边距

float bindingMargin; // 装订线宽度
int bindingPosition; // 装订位置

设计页面样式如下:

Page的有效显示区域为scaleWidth和scaleHeight:

public float scaleWidth() {
??? return width - leftMargin - rightMargin -
??????? ( bindingPosition==BINDING_LEFT ? bindingMargin : 0.0f );
}
public float scaleHeight() {
??? return height - topMargin - bottomMargin -
??????? ( bindingPosition==BINDING_TOP ? bindingMargin : 0.0f );
}

类似的,段落样式如下:

int alignment; // 对齐方式
float firstIndent; // 首行缩进
float leftIndent; // 左缩进
float rightIndent; // 右缩进
float rowSpace; // 行距

如图:

行高是由所在行的最高的一个Glyph决定的,如上图第三行的高度就是图片的高度。

行距是预设的常数。

Paragraph的总宽度由页面属性scaleWidth决定,总高度无限制,也不必计算。分页是按照行高而不是Paragraph的高度计算的。

Paragraph的有效宽度scaleWidth的计算:

public float scaleWidth(boolean firstRow) {
??? return this.pstyle.scaleWidth(firstRow);
}

发表于 @ 2004年07月22日 20:48:00|评论(loading...)|编辑

新一篇: 习惯三:要事第一 | 旧一篇: 你的生活重心是什么?——读《高效能人士的七个习惯》

评论:没有评论。

发表评论  


登录
Csdn Blog version 3.1a
Copyright © Xuefeng