av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Java 在PDF中繪制形狀的兩種方法

瀏覽:19日期:2022-08-29 14:13:10

在我們編輯PDF文檔的過(guò)程中,有時(shí)候需要在文檔中添加一些如多邊形、矩形、橢圓形之類的圖形,而Free Spire PDF for Java 則正好可以幫助我們?cè)贘ava程序中通過(guò)代碼在PDF文檔中繪制形狀,以及設(shè)置形狀邊線顏色和填充色。

Jar包導(dǎo)入

方法一:下載Free Spire.PDF for Java包并解壓縮,然后將lib文件夾下的Spire.Pdf.jar包作為依賴項(xiàng)導(dǎo)入到Java應(yīng)用程序中

方法二:直接通過(guò)Maven倉(cāng)庫(kù)安裝JAR包,配置pom.xml文件的代碼如下:

<repositories> <repository> <id>com.e-iceblue</id> <url>http://repo.e-iceblue.cn/repository/maven-public/</url> </repository></repositories><dependencies> <dependency> <groupId>e-iceblue</groupId> <artifactId>spire.pdf.free</artifactId> <version>2.6.3</version> </dependency></dependencies>

Java代碼

import com.spire.pdf.*;import com.spire.pdf.graphics.*;import java.awt.*;import java.awt.geom.Rectangle2D;public class DrawShapes { public static void main(String[]args){ //創(chuàng)建PDF文檔,并添加一頁(yè) PdfDocument pdf = new PdfDocument(); PdfPageBase page = pdf.appendPage(); //創(chuàng)建畫筆、畫刷 PdfPen pen =new PdfPen(new PdfRGBColor(Color.black),0.3); PdfBrush brush= PdfBrushes.getGreenYellow(); //繪制矩形 Rectangle2D.Float rect1 = new Rectangle2D.Float(0, 20, 120, 50);//創(chuàng)建Rectangle2D對(duì)象,并指定圖形在PDF頁(yè)面中的大小、位置 PdfLinearGradientBrush linearGradientBrush = new PdfLinearGradientBrush(rect1,new PdfRGBColor(Color.pink),new PdfRGBColor(Color.YELLOW),PdfLinearGradientMode.Horizontal);//填充圖形顏色 page.getCanvas().drawRectangle(linearGradientBrush, rect1);//繪制矩形到頁(yè)面 //繪制橢圓 Point centerStart= new Point(205,45); Point centerEnd= new Point(205,45); PdfRadialGradientBrush radialGradientBrush = new PdfRadialGradientBrush(centerStart,0,centerEnd,60,new PdfRGBColor(Color.white),new PdfRGBColor(Color.cyan)); Rectangle2D.Float rect2= new Rectangle2D.Float(180, 20, 50, 50); page.getCanvas().drawEllipse(radialGradientBrush,rect2); //繪制多邊形 Point p1=new Point(290,70); Point p2=new Point(310,45); Point p3=new Point(325,60); Point p4=new Point(340,20); Point p5=new Point(370,70); Point[] points = {p1, p2, p3, p4, p5}; page.getCanvas().drawPolygon(pen,brush, points); //繪制弧形 float startAngle = 0; float sweepAngle = 270; Rectangle2D.Float rect3= new Rectangle2D.Float(0, 110, 50, 50); page.getCanvas().drawArc(pen, rect3, startAngle, sweepAngle); //繪制扇形 Rectangle2D.Float rect4= new Rectangle2D.Float(70, 110, 50, 50); page.getCanvas().drawPie(pen, rect4, startAngle, sweepAngle); //繪制兩條垂直交叉的直線 Point pStart1=new Point(205,110); Point pEnd1=new Point(205,160); page.getCanvas().drawLine(pen, pStart1, pEnd1); Point pStart2=new Point(180,135); Point pEnd2=new Point(230,135); page.getCanvas().drawLine(pen, pStart2, pEnd2); //繪制貝塞爾曲線 Point startPoint = new Point(290, 135); Point firstControlPoint = new Point(330, 70); Point secondControlPoint = new Point(330, 200); Point endPoint = new Point(370, 135); page.getCanvas().drawBezier(pen, startPoint, firstControlPoint, secondControlPoint, endPoint); //保存文檔 pdf.saveToFile('DrawShapes.pdf',FileFormat.PDF); }}

效果圖

Java 在PDF中繪制形狀的兩種方法

以上就是Java 在PDF中繪制形狀的兩種方法的詳細(xì)內(nèi)容,更多關(guān)于Java 在PDF中繪制形狀的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: Java
相關(guān)文章:
主站蜘蛛池模板: 午夜免费在线电影 | 久久精品成人 | 四虎影院在线观看av | 亚洲第一色av | 91热在线 | 亚洲精品一区二区在线观看 | 国产成人精品一区二区三区在线 | 91精品国产乱码麻豆白嫩 | 99久久婷婷国产综合精品电影 | 日韩免费一区二区 | 午夜免费看| 亚洲在线一区 | 一区二区不卡高清 | 最新中文字幕第一页视频 | 91久久精品日日躁夜夜躁国产 | 国产一区欧美 | 夜夜骑首页 | 国产欧美日韩精品一区 | 三级成人在线观看 | 国产一区二区三区 | 精品久久av| 欧美一区日韩一区 | 69精品久久久久久 | 亚洲区一区二区 | 欧美日韩国产不卡 | 日本一区二区三区视频在线 | 久久精品国产精品青草 | 久久久久国产一区二区三区 | 一级毛片,一级毛片 | 国产一区久久 | 日日操网站 | 美女久久久久久久 | 婷婷丁香在线视频 | 亚州综合一区 | 亚洲一卡二卡 | 日韩中文电影 | 91久久综合亚洲鲁鲁五月天 | 91在线免费视频 | 精品一区二区三区四区外站 | 亚洲欧美在线观看 | 成人免费影院 |