亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么用Java在PDF中繪制形狀

發布時間:2021-11-01 11:30:57 來源:億速云 閱讀:154 作者:iii 欄目:編程語言

本篇內容介紹了“怎么用Java在PDF中繪制形狀”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

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

Jar包導入

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

方法二:直接通過Maven倉庫安裝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){  
         
        //創建PDF文檔,并添加一頁
        PdfDocument pdf = new PdfDocument();
        PdfPageBase page = pdf.appendPage();    
            
        //創建畫筆、畫刷
        PdfPen pen =new PdfPen(new PdfRGBColor(Color.black),0.3);
        PdfBrush brush= PdfBrushes.getGreenYellow();     
           
        //繪制矩形
        Rectangle2D.Float rect1 = new Rectangle2D.Float(0, 20, 120, 50);//創建Rectangle2D對象,并指定圖形在PDF頁面中的大小、位置
        PdfLinearGradientBrush linearGradientBrush = new PdfLinearGradientBrush(rect1,new PdfRGBColor(Color.pink),new PdfRGBColor(Color.YELLOW),PdfLinearGradientMode.Horizontal);//填充圖形顏色
        page.getCanvas().drawRectangle(linearGradientBrush, rect1);//繪制矩形到頁面        
        
        //繪制橢圓
        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中繪制形狀”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

新乡县| 平遥县| 平湖市| 昌江| 襄汾县| 包头市| 鸡西市| 商水县| 安庆市| 镇安县| 都江堰市| 威海市| 祁门县| 台中市| 湖州市| 遵化市| 玉山县| 屯门区| 垣曲县| 靖西县| 宿州市| 申扎县| 托克托县| 滕州市| 宝鸡市| 顺平县| 兴宁市| 临泽县| 炉霍县| 黔江区| 镇雄县| 大邑县| 奉化市| 宁波市| 子洲县| 临清市| 和龙市| 锡林郭勒盟| 通河县| 两当县| 朝阳市|