91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

怎么在C#里繪制PDF嵌套表格

發布時間:2020-07-13 09:48:23 來源:億速云 閱讀:209 作者:Leah 欄目:編程語言

今天就跟大家聊聊有關怎么在C#里繪制PDF嵌套表格,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

要點概括:

1. 插入嵌套表格

2. 插入文字到嵌套表格

3. 插入圖片到嵌套表格

使用工具

  • Spire.PDF 4.9.7

注:

1.這里使用的版本為4.9.7,經測試,對于代碼中涉及的PdfGridCellContentList類和PdfGridCellContent類僅在使用該版本或者以上版本可用。使用時,請注意版本信息。

2.下載安裝后,在編輯代碼時,請注意添加引用Spire.Pdf.dll(dll文件可在安裝路徑下的Bin文件夾下獲取)

怎么在C#里繪制PDF嵌套表格

示例代碼(供參考)

步驟 1 :創建文檔

PdfDocument pdf = new PdfDocument();
PdfPageBase page = pdf.Pages.Add();

步驟 2 :添加字體、畫筆,寫入文本到PDF文檔

PdfTrueTypeFont font = new PdfTrueTypeFont(new Font("行楷", 11f), true);
PdfPen pen = new PdfPen(Color.Gray);string text = "2018 Pyeongchang Olympic Winter Games Medal Ranking";
page.Canvas.DrawString(text, font, pen, 100, 50);

步驟 3 :創建第一個表格

//創建一個PDF表格,并添加兩行
PdfGrid grid = new PdfGrid(); 
PdfGridRow row1 = grid.Rows.Add();
PdfGridRow row2 = grid.Rows.Add();

//設置表格的單元格內容和邊框之間的上、下邊距
grid.Style.CellPadding.Top = 5f;
grid.Style.CellPadding.Bottom = 5f;

//添加三列,并設置列寬grid.Columns.Add(3);
grid.Columns[0].Width = 120f;
grid.Columns[1].Width = 150f;
grid.Columns[2].Width = 120f;

步驟 4 :創建一個嵌套表格

//創建一個一行兩列的嵌套表格
PdfGrid embedGrid1 = new PdfGrid();
PdfGridRow newRow = embedGrid1.Rows.Add();
embedGrid1.Columns.Add(2);

//設置嵌套表格的列寬
embedGrid1.Columns[0].Width = 50f;
embedGrid1.Columns[1].Width = 60f;

步驟 5 :添加文本、圖片到嵌套表格

//初始化SizeF類,設置圖片大小
SizeF imageSize = new SizeF(45, 35);

//實例化PdfGridCellContentList、PdfGridCellContent類,加載需要添加到嵌套表格的圖片
PdfGridCellContentList contentList = new PdfGridCellContentList();
PdfGridCellContent content = new PdfGridCellContent();
content.Image = PdfImage.FromFile("1.png");
content.ImageSize = imageSize;
contentList.List.Add(content);
//實例化PdfStringFormat、PdfTrueTypeFont類,設置單元格文字對齊方式
PdfStringFormat stringFormat = new PdfStringFormat(PdfTextAlignment.Center, PdfVerticalAlignment.Middle);

//添加文本內容及圖片到嵌套表格
newRow.Cells[0].Value = "Norway";
newRow.Cells[0].StringFormat = stringFormat;
newRow.Cells[1].Value = contentList; //將圖片添加到嵌套表格的第二個單元格
newRow.Cells[1].StringFormat = stringFormat;

步驟 6 :添加數據到第一個表格

//設置第一個表格的單元格的值和格式row1.Cells[0].Value = "Rank";
row1.Cells[0].StringFormat = stringFormat;
row1.Cells[0].Style.Font = font;
row1.Cells[0].Style.BackgroundBrush = PdfBrushes.LightSalmon;
row1.Cells[1].Value = "Country";
row1.Cells[1].StringFormat = stringFormat;
row1.Cells[1].Style.Font = font;
row1.Cells[1].Style.BackgroundBrush = PdfBrushes.LightSalmon;
row1.Cells[2].Value = "Total";
row1.Cells[2].StringFormat = stringFormat;
row1.Cells[2].Style.Font = font;
row1.Cells[2].Style.BackgroundBrush = PdfBrushes.LightSalmon;

row2.Cells[0].Value = "1";
row2.Cells[0].StringFormat = stringFormat;
row2.Cells[0].Style.Font = font;
row2.Cells[1].Value = embedGrid1; //將嵌套表格添加到第一個表格的第二行第二個單元格
row2.Cells[1].StringFormat = stringFormat;

row2.Cells[2].Value = "39";
row2.Cells[2].StringFormat = stringFormat;
row2.Cells[2].Style.Font = font;

步驟 7:將表格繪制到頁面指定位置

grid.Draw(page, new PointF(30f, 90f));

步驟 8 :保存文檔

pdf.SaveToFile("result.pdf");

完成代碼后,調試程序,生成文檔。繪制的表格如下:

怎么在C#里繪制PDF嵌套表格

全部代碼:

using Spire.Pdf;
using Spire.Pdf.Graphics;
using Spire.Pdf.Grid;
using System.Drawing;
using System.Windows.Forms;
using System;

namespace NestedTable_PDF
{
    class Program
    {
        static void Main(string[] args)
        {
            //實例化PdfDocument類,并添加頁面到新建的文檔
            PdfDocument pdf = new PdfDocument();
            PdfPageBase page = pdf.Pages.Add();

            //添加字體、畫筆,寫入文本到PDF文檔
            PdfTrueTypeFont font = new PdfTrueTypeFont(new Font("行楷", 11f), true);
            PdfPen pen = new PdfPen(Color.Gray);
            string text = "2018 Pyeongchang Olympic Winter Games Medal Ranking";
            page.Canvas.DrawString(text, font, pen, 100, 50);

            //創建一個PDF表格,并添加兩行
            PdfGrid grid = new PdfGrid(); 
            PdfGridRow row1 = grid.Rows.Add();
            PdfGridRow row2 = grid.Rows.Add();

            //設置表格的單元格內容和邊框之間的上、下邊距
            grid.Style.CellPadding.Top = 5f;
            grid.Style.CellPadding.Bottom = 5f;

            //添加三列,并設置列寬
            grid.Columns.Add(3);
            grid.Columns[0].Width = 120f;
            grid.Columns[1].Width = 150f;
            grid.Columns[2].Width = 120f; 

            //創建一個一行兩列的嵌套表格
            PdfGrid embedGrid1 = new PdfGrid();
            PdfGridRow newRow = embedGrid1.Rows.Add();
            embedGrid1.Columns.Add(2);

            //設置嵌套表格的列寬
            embedGrid1.Columns[0].Width = 50f;
            embedGrid1.Columns[1].Width = 60f;

            //初始化SizeF類,設置圖片大小
            SizeF imageSize = new SizeF(45, 35);

            //實例化PdfGridCellContentList、PdfGridCellContent類,加載需要添加到嵌套表格的圖片
            PdfGridCellContentList contentList = new PdfGridCellContentList();
            PdfGridCellContent content = new PdfGridCellContent();
            content.Image = PdfImage.FromFile("1.png");
            content.ImageSize = imageSize;
            contentList.List.Add(content);
            //實例化PdfStringFormat、PdfTrueTypeFont類,設置單元格文字對齊方式
            PdfStringFormat stringFormat = new PdfStringFormat(PdfTextAlignment.Center, PdfVerticalAlignment.Middle);         

            //添加文本內容及圖片到嵌套表格
            newRow.Cells[0].Value = "Norway";
            newRow.Cells[0].StringFormat = stringFormat;
            newRow.Cells[1].Value = contentList; //將圖片添加到嵌套表格的第二個單元格
            newRow.Cells[1].StringFormat = stringFormat;           

            //設置第一個表格的單元格的值和格式
            row1.Cells[0].Value = "Rank";
            row1.Cells[0].StringFormat = stringFormat;
            row1.Cells[0].Style.Font = font;
            row1.Cells[0].Style.BackgroundBrush = PdfBrushes.LightSalmon;
            row1.Cells[1].Value = "Country";
            row1.Cells[1].StringFormat = stringFormat;
            row1.Cells[1].Style.Font = font;
            row1.Cells[1].Style.BackgroundBrush = PdfBrushes.LightSalmon;
            row1.Cells[2].Value = "Total";
            row1.Cells[2].StringFormat = stringFormat;
            row1.Cells[2].Style.Font = font;
            row1.Cells[2].Style.BackgroundBrush = PdfBrushes.LightSalmon;

            row2.Cells[0].Value = "1";
            row2.Cells[0].StringFormat = stringFormat;
            row2.Cells[0].Style.Font = font;
            row2.Cells[1].Value = embedGrid1; //將嵌套表格添加到第一個表格的第二行第二個單元格
            row2.Cells[1].StringFormat = stringFormat;

            row2.Cells[2].Value = "39";
            row2.Cells[2].StringFormat = stringFormat;
            row2.Cells[2].Style.Font = font;

            //將表格繪制到頁面指定位置
            grid.Draw(page, new PointF(30f, 90f));

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

以上是本次C#在PDF中繪制嵌套表格的全部內容。

看完上述內容,你們對怎么在C#里繪制PDF嵌套表格有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

向AI問一下細節

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

AI

揭阳市| 灌南县| 双牌县| 水富县| 汝州市| 郓城县| 汤原县| 磐石市| 吉林市| 贵德县| 长顺县| 来安县| 乌海市| 阳山县| 皮山县| 金乡县| 巫山县| 敖汉旗| 天长市| 宜城市| 博湖县| 宝清县| 武宣县| 资中县| 灵川县| 临夏市| 靖远县| 冀州市| 莱阳市| 江阴市| 阿勒泰市| 鸡泽县| 彰武县| 福建省| 桦甸市| 江源县| 独山县| 聊城市| 右玉县| 白银市| 襄樊市|