poi設置word表格單元格寬度_java poi如何設置word的頁面的大小和水平方向?

展開全部

你好,試試以下代碼行不行。

package

com.sample;

import

java.awt.color;

import

java.io.fileoutputstream;

import

java.io.ioexception;

import

com.lowagie.text.cell;

import

com.lowagie.text.document;

import

com.lowagie.text.documentexception;

import

com.lowagie.text.element;

import

com.lowagie.text.font;

import

com.lowagie.text.fontfactory;

import

com.lowagie.text.image;

import

com.lowagie.text.pagesize;

import

com.lowagie.text.paragraph;

import

com.lowagie.text.phrase;

import

com.lowagie.text.table;

import

com.lowagie.text.pdf.basefont;

import

com.lowagie.text.rtf.rtfwriter2;

/**

*

*

@author

wangyanjun

*

@email

bd_wyj@sina.com

*

@createdate

jun

12,

2008

*/

public

class

createworddemo

{

public

void

createdoccontext(string

file)

throws

documentexception,

ioexception

{

//

設置紙張大小

document

document

=

new

document(pagesize.a4);

//

建立一個書寫器(writer)與document對象關聯,通過書寫器(writer)可以62616964757a686964616fe58685e5aeb931333433626535將文檔寫入到磁盤中

rtfwriter2.getinstance(document,

new

fileoutputstream(file));

document.open();

//

設置中文字體

basefont

bfchinese

=

basefont.createfont("stsongstd-light",

"unigb-ucs2-h",

basefont.not_embedded);

//

標題字體風格

font

titlefont

=

new

font(bfchinese,

12,

font.bold);

//

正文字體風格

font

contextfont

=

new

font(bfchinese,

10,

font.normal);

paragraph

title

=

new

paragraph("標題");

//

設置標題格式對齊方式

title.setalignment(element.align_center);

title.setfont(titlefont);

document.add(title);

string

contextstring

=

"itext是一個能夠快速產生pdf文件的java類庫。"

+

"

\n"//

換行

+

"itext的java類對于那些要產生包含文本,"

+

"表格,圖形的只讀文檔是很有用的。它的類庫尤其與java

servlet有很好的給合。"

+

"使用itext與pdf能夠使你正確的控制servlet的輸出。";

paragraph

context

=

new

paragraph(contextstring);

//

正文格式左對齊

context.setalignment(element.align_left);

context.setfont(contextfont);

//

離上一段落(標題)空的行數

context.setspacingbefore(5);

//

設置第一行空的列數

context.setfirstlineindent(20);

document.add(context);

//利用類fontfactory結合font和color可以設置各種各樣字體樣式

/**

*

font.underline

下劃線,font.bold

粗體

*/

paragraph

underline

=

new

paragraph("下劃線的實現",

fontfactory.getfont(

fontfactory.helvetica_boldoblique,

18,

font.underline,

new

color(0,

0,

255)));

document.add(underline);

//

設置

table

表格

table

atable

=

new

table(3);

int

width[]

=

{25,25,50};

atable.setwidths(width);//設置每列所占比例

atable.setwidth(90);

//

占頁面寬度

90%

atable.setalignment(element.align_center);//居中顯示

atable.setalignment(element.align_middle);//縱向居中顯示

atable.setautofillemptycells(true);

//自動填滿

atable.setborderwidth(1);

//邊框寬度

atable.setbordercolor(new

color(0,

125,

255));

//邊框顏色

atable.setpadding(2);//襯距,看效果就知道什么意思了

atable.setspacing(3);//即單元格之間的間距

atable.setborder(2);//邊框

//設置表頭

/**

*

cell.setheader(true);是將該單元格作為表頭信息顯示;

*

cell.setcolspan(3);指定了該單元格占3列;

*

為表格添加表頭信息時,要注意的是一旦表頭信息添加完了之后,

*

必須調用

endheaders()方法,否則當表格跨頁后,表頭信息不會再顯示

*/

cell

hadercell

=

new

cell("表格表頭");

hadercell.setheader(true);

hadercell.setcolspan(3);

atable.addcell(hadercell);

atable.endheaders();

font

fontchinese

=

new

font(bfchinese,

12,

font.normal,

color.green);

cell

cell

=

new

cell(new

phrase("這是一個測試的

3*3

table

數據",

fontchinese

));

cell.setverticalalignment(element.align_top);

cell.setbordercolor(new

color(255,

0,

0));

cell.setrowspan(2);

atable.addcell(cell);

atable.addcell(new

cell("#1"));

atable.addcell(new

cell("#2"));

atable.addcell(new

cell("#3"));

atable.addcell(new

cell("#4"));

cell

cell3

=

new

cell(new

phrase("一行三列數據",

fontchinese

));

cell3.setcolspan(3);

cell3.setverticalalignment(element.align_center);

atable.addcell(cell3);

document.add(atable);

document.add(new

paragraph("\n"));

//添加圖片

image

img=image.getinstance("d:\\img01800.jpg");

img.setabsoluteposition(0,

0);

img.setalignment(image.right);//設置圖片顯示位置

img.scaleabsolute(12,35);//直接設定顯示尺寸

img.scalepercent(50);//表示顯示的大小為原尺寸的50%

img.scalepercent(25,

12);//圖像高寬的顯示比例

img.setrotation(30);//圖像旋轉一定角度

document.add(img);

document.close();

}

/**

*

@param

args

*/

public

static

void

main(string[]

args)

{

createworddemo

word

=

new

createworddemo();

string

file

=

"c:/demo1.doc";

try

{

word.createdoccontext(file);

}

catch

(documentexception

e)

{

e.printstacktrace();

}

catch

(ioexception

e)

{

e.printstacktrace();

}

}

}

已贊過

已踩過<

你對這個回答的評價是?

評論

收起

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/455151.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/455151.shtml
英文地址,請注明出處:http://en.pswp.cn/news/455151.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

時間通用方法

import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date;import org.apache.commons.lang3.time.DateFormatUtils;/** * 日期工具類, 繼承org.apache.commons.lang.time.DateUtils類 */ public class DateUtils extends org.apache.commo…

Python-MongoDB的驅動安裝、升級

安裝pip&#xff0c;并通過此來安裝pymongo–Python mongodb驅動 1、下載pip安裝包&#xff0c;下載地址&#xff1a;http://pypi.python.org/packages/source/p/pip/pip-1.0.2.tar.gz#md547ec6ff3f6d962696fe08d4c8264ad49 2、解壓安裝&#xff1a; tar -zxf pip.1.0.2.tar.gz…

python5_python5

python2&python31.python2中print可加括號可不加括號&#xff0c;python3中print一定要加括號。2.python2中有range(),也有xrange(),python中只有range()。生成器。3.Python2中raw_input(),python3中input()。,,is賦值比較是否相等is 比較內存地址&#xff0c;id(內容)li1[…

單例設計模式1

單例 所謂單例設計模式,即時采取一定的方法保證在整個軟件系統當中,對于某個類只能存在一個對象實例,并且該類只提供一個其對象實例的方法(靜態方法) 惡漢式 優缺點說明: 優點:這種寫法比較簡單,就是在類裝載的時候就完成實例化.避免了線程同步問題 缺點: 在類裝載的時候就…

SJXXX串口擴展芯片 4串口芯片 UART串口芯片

SJXX串口擴展芯片1 概述SJ000是一款具備I2C總線/SPI總線/UART接口的四通道異步收發器件&#xff0c;通過模式選擇使得該器件工作于以上任何一種主接口模式下。器件的四個通道UART可提供高達2Mbps的數據率&#xff0c;低功耗模式和睡眠電流。每個通道含有一個接收器和一個發送器…

MPLS服務合同到期了,是否該續簽?

當考慮是否要更新現有MPLS服務合同以及續簽多久時&#xff0c;你需要著眼于從價格到部署速度的方方面面。簡而言之&#xff0c;如果你還沒有獲取一些與軟件定義廣域網有關技術的經驗&#xff0c;即使用寬帶或取代MPLS服務&#xff0c;那么你就沒辦法在未來幾個月之內棄用MPLS。…

oracle rds 運維服務_從運維的角度分析使用阿里云數據庫RDS的必要性–你不應該在阿里云上使用自建的MySQL/SQL Server/Oracle/PostgreSQL數據庫...

開宗明義&#xff0c;你不應該在阿里云上使用自建的MySQL or SQL Server數據庫&#xff0c;對了&#xff0c;還有Oracle or PostgreSQL數據庫。云數據庫 RDS(Relational Database Service)是一種穩定可靠、可彈性伸縮的在線數據庫服務。基于飛天分布式系統和全SSD盤高性能存儲&…

單例設計模式2

惡漢式(靜態代碼塊兒) 優缺點說明: 這種方式和上面的相似,只不過將類實例化的過程放在了靜態代碼塊中,也是在類裝載的時候,就執行靜態代碼塊兒中的代碼,初始化類的實例.優缺點和上面是一樣的. 結論: 這種單例模式可用,可能 造成內存浪費 代碼演示 package com.atguigu.pri…

FLV文件格式解析

FLV&#xff08;Flash Video&#xff09;是現在非常流行的流媒體格式&#xff0c;由于其視頻文件體積輕巧、封裝播放簡單等特點&#xff0c;使其很適合在網絡上進行應用&#xff0c;目前主流的視頻網站無一例外地使用了FLV格式。另外由于當前瀏覽器與Flash Player緊密的結合&am…

華院數據宣曉華:傳統零售商轉型電商需攻克大數據三關

現在電商發展起來的節奏&#xff0c;使得大眾更相信馬云所言“五年內將沒有線下銷售”的可信度。面對這樣的轉變最該緊張的似乎是傳統零售商了&#xff0c;日前在中美創新鏈接——大數據專題研討會上&#xff0c;華院數據創始人、董事長宣曉華談了傳統零售商在轉型過程中遭遇的…

部署到gcp_GCP 網絡系統Andromeda --- 概述篇

這個系列總共有三篇&#xff0c;分別在&#xff1a;肖宏輝&#xff1a;GCP 網絡系統Andromeda --- 概述篇肖宏輝&#xff1a;GCP 網絡系統Andromeda --- 控制面肖宏輝&#xff1a;GCP 網絡系統Andromeda --- 數據面最近看了Google在2018年的一篇NSDI文章&#xff0c;介紹他們的…

單例設計模式-懶漢式(線程不安全)

懶漢式(線程不安全) 優缺點說明 起到了Lazy Loading的效果,但是只能在單線程下使用 如果在多線程下, 一個線程進入if(singleton null)判斷 語句塊,還未來得及往下執行,另一個線程也通過了這個判斷語句,這時便會產生多個實例. 所以在多線程的環境下,不可使用種方式 結論:在…

南海發展大數據產業 建設新型智慧城市

今天(9月5日)上午,佛山市南海區將迎來一大盛事——“南海大數據及工業互聯網創新應用工作推進會”(以下簡稱“推進會”)召開,南海將與阿里巴巴、騰訊以及三大通信運營商等互聯網、大數據巨頭簽訂21個大數據建設亮點項目。同時,為吸引更多大數據產業集聚,南海將在推進會上同步發…

AMR音頻編碼器概述及文件格式分析

全稱Adaptive Multi-Rate&#xff0c;自適應多速率編碼&#xff0c;主要用于移動設備的音頻&#xff0c;壓縮比比較大&#xff0c;但相對其他的壓縮格式質量比較差&#xff0c;由于多用于人聲&#xff0c;通話&#xff0c;效果還是很不錯的。 一、分類 1. AMR: 又稱為AMR-NB&am…

查詢自己OpenGL的版本信息

GLvoid PrintVersion() {const GLubyte* name glGetString(GL_VENDOR); //返回負責當前OpenGL實現廠商的名字const GLubyte* biaoshifu glGetString(GL_RENDERER); //返回一個渲染器標識符&#xff0c;通常是個硬件平臺const GLubyte* OpenGLVersion glGetStr…

airpod藍牙耳機音量大解決辦法_關于AirPods的常見問題匯總 全面了解蘋果AirPods無線耳機...

小編帶來關于AirPods必知的24個問題&#xff0c;全面了解蘋果AirPods無線耳機。蘋果決定在iPhone7中拋棄3.5毫米耳機接口&#xff0c;這引發了許多爭議和不解。蘋果這樣做的原因部分在于&#xff0c;希望人們轉而使用無線耳機。因此蘋果也推出了自主的無線耳機AirPods。對于無線…

單例設計模式-懶漢式(線程安全)

懶漢式(線程安全) 有缺點說明 解決了線程不安全問題 效率太低了,每個線程在想獲得類的實例時候,執行getInstance()方法都要進行同步.而其實這個方法只執行了一次實例化代碼就夠了,后面的想獲取該類實例,直接return就行了.方法進行同步效率太低 結論: 在實際開發中,不推薦使用…

剖析Docker Swarm和Mesos:是什么?如何結合?有什么優勢?

本文講的是剖析Docker Swarm和Mesos&#xff1a;是什么&#xff1f;如何結合&#xff1f;有什么優勢&#xff1f;&#xff0c;【編者的話】本文來自Mesosphere&#xff0c;從生產環境的需求出發&#xff0c;簡要介紹了Docker Swarm的誕生背景&#xff0c;以及其與Mesos、 Mesos…

濮陽第二屆創客機器人比賽_咸陽市舉行第二屆機器人大賽暨第一屆創客大賽

11月14日&#xff0c;由陜西省教育信息化管理中心指導&#xff0c;市教育局主辦&#xff0c;咸陽師范學院、市少工委協辦的咸陽市第二屆機器人大賽暨第一屆創客大賽在咸陽師范學院舉辦。各個學校的同學展示自己的發明創造。咸陽日報全媒體記者 馬沅聰 攝據悉&#xff0c;來自各…

MP3文件格式解析

1&#xff0c; MP3簡介 MP3是今天一種常見的音樂格式&#xff0c;但恐怕除了工作要求之外&#xff0c;有興趣對此進行研究的人恐怕不多。所以&#xff0c;當我打算做MP3解碼方面的工作時&#xff0c;在找資料時也頗費了一番周折&#xff0c;同時也覺得很有趣。所以想在這里分…