中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

C# 操作PDF 圖層(Layer)——添加、刪除圖層、設置圖層可見性

發布時間:2020-08-03 11:13:11 來源:網絡 閱讀:1616 作者:E_iceblue 欄目:編程語言

前言

通過添加圖層,我們可以將文本、圖片、表格、圖形等元素精確定位于頁面指定位置,將這些元素進行疊放、組合形成頁面的最終效果。此外,對于頁面中已有的圖層我們也可以進行設置圖層可見性、刪除圖層等操作。因此,在本篇文章中,將介紹如何在C#中進行PDF圖層的操作。


要點概括

1.添加圖層
線條
圖形
圖像
字符串
2.設置圖層隱藏、顯示
指定單個圖層可見性
設置所有圖層可見性
3.刪除圖層


工具使用

  • Spire.PDF for .NET 4.0
  • Visual Studio

代碼操作

一、 添加圖層
我們通過使用Spire.PDF添加圖層,支持添加線條、圖像、字符串、餅圖、橢圓形、矩形和多邊形等多種類型的圖層。
C# 操作PDF 圖層(Layer)——添加、刪除圖層、設置圖層可見性

【C#】

using Spire.Pdf;
using Spire.Pdf.Graphics;
using System.Drawing;

namespace AddLayers_PDF
{
    class Program
    {
        static void Main(string[] args)
        {
            //新建PDF文檔,添加一頁
            PdfDocument pdf = new PdfDocument();
            PdfPageBase page = pdf.Pages.Add();

            //添加一個線條圖層,設置為不可見
            PdfPageLayer layer = page.PageLayers.Add("Line", true);
            //在頁面指定位置添加指定長度的線條,并設置線條顏色、粗細等格式
            layer.Graphics.DrawLine(new PdfPen(PdfBrushes.Blue, 1), new PointF(0, 0), new PointF(0, 200)); //這里可根據需要添加多條線條

            //向頁面添加一個名為“橢圓”的圖層,設置圖層為不可見
            layer = page.PageLayers.Add("橢圓", true);
            //設置圖形顏色、線條粗細
            PdfPen pen = new PdfPen(Color.Yellow, 2.5f);
            //填充圖形內部顏色,并在頁面指定位置添加指定大小的橢圓形圖形
            PdfBrush brush = new PdfSolidBrush(Color.White);
            layer.Graphics.DrawEllipse(pen, brush, 240, 200, 60,20);

            //添加一個圖片圖層,并命名圖層為“Image Layer”
            layer = page.PageLayers.Add("Image Layer");
            //加載圖片,在頁面指定位置添加該圖片作為圖層并設置圖像的大小
            layer.Graphics.DrawImage(PdfImage.FromFile("image.png"), 200, 230, 150, 185);

            //添加字符串類型的圖層,并命名為“String Layer”
            layer = page.PageLayers.Add("String Layer");
            //向頁面指定位置繪如文本,并設置字體、字號、顏色等格式
            layer.Graphics.DrawString("OH~IT'S SO GOOD! RIGHT? \n LET'S GET STARTED!\n COME ON, GUYS!", new PdfFont(PdfFontFamily.TimesRoman, 12), new PdfPen(PdfBrushes.MediumVioletRed, 1), 45, 250);

            //保存并打開文檔
            pdf.SaveToFile("AddLayers.pdf", FileFormat.PDF);
            System.Diagnostics.Process.Start("AddLayers.pdf");  
        }
    }
}

添加效果:
C# 操作PDF 圖層(Layer)——添加、刪除圖層、設置圖層可見性
二、設置圖層隱藏、顯示
(一)設置單個圖層的隱藏、顯示

【C#】

using Spire.Pdf;
using Spire.Pdf.Graphics.Layer;

namespace HideOrShowLayer_PDF
{
    class Program
    {
        static void Main(string[] args)
        {
               //實例化PdfDocument類,加載文檔
                PdfDocument doc = new PdfDocument("AddLayers.pdf");

                //設置圖層可見屬性為Off,通過索引值來隱藏第3個圖層
                //doc.Layers[2].Visibility = PdfVisibility.Off;

                //設置圖層可見屬性為Off,通過圖層名稱來隱藏圖層
                doc.Layers["String Layer"].Visibility = PdfVisibility.Off;

                //保存并打開文檔
                doc.SaveToFile("HideLayer0.pdf");
                System.Diagnostics.Process.Start("HideLayer0.pdf");

        }
    }
}

測試結果:
1.通過“索引值”來隱藏圖層的效果
C# 操作PDF 圖層(Layer)——添加、刪除圖層、設置圖層可見性
2.通過圖層名稱來隱藏圖層的效果
C# 操作PDF 圖層(Layer)——添加、刪除圖層、設置圖層可見性

(二)設置全部圖層的隱藏、顯示
【C#】

using System;
using Spire.Pdf;
using Spire.Pdf.Graphics.Layer;

namespace ShowLayer_PDF
{
    class Program
    {
        static void Main(string[] args)
        {
            //創建PdfDocument類對象,加載pdf測試文檔
            PdfDocument doc = new PdfDocument("AddLayers.pdf");

            //遍歷文檔中的所有圖層,
            for (int i = 0; i < doc.Layers.Count; i++)
            {
                //顯示所有圖層
                //doc.Layers[i].Visibility = PdfVisibility.On;

                //隱藏所有圖層
                doc.Layers[i].Visibility = PdfVisibility.Off;
            }
                //保存并打開文檔
                doc.SaveToFile("HideAllLayers.pdf");
                System.Diagnostics.Process.Start("HideAllLayers.pdf");
        }
    }
}

測試結果:
C# 操作PDF 圖層(Layer)——添加、刪除圖層、設置圖層可見性
三、刪除圖層
【C#】

using Spire.Pdf;

namespace DeleteLayer_PDF
{
    class Program
    {
        static void Main(string[] args)
        {
            //創建一個PdfDocument類對象,加載包含多個圖層的PDF文檔
            PdfDocument doc = new PdfDocument();
            doc.LoadFromFile("AddLayers.pdf");

            //調用方法RemoveLayer()刪除名為“Line”的圖層
            doc.Layers.RemoveLayer(("Line"));

            //保存并打開文檔
            doc.SaveToFile("DeleteLayer.pdf", FileFormat.PDF);
            System.Diagnostics.Process.Start("DeleteLayer.pdf");
        }
    }
}

測試結果:
C# 操作PDF 圖層(Layer)——添加、刪除圖層、設置圖層可見性

向AI問一下細節

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

pdf
AI

绥江县| 北海市| 静乐县| 云龙县| 普定县| 桂平市| 平远县| 县级市| 英吉沙县| 四川省| 长沙市| 射阳县| 灵寿县| 大冶市| 方山县| 阿荣旗| 铁岭县| 会昌县| 桓台县| 浦北县| 宾阳县| 许昌市| 滨州市| 巫山县| 揭西县| 铅山县| 霍林郭勒市| 土默特右旗| 英吉沙县| 上杭县| 云和县| 松潘县| 仙居县| 若羌县| 许昌市| 高阳县| 威远县| 卢湾区| 雅安市| 沙田区| 洮南市|