LABWORK-4 #2
@ -1,36 +0,0 @@
|
||||
namespace Cop.Borovkov.Var3.Components
|
||||
{
|
||||
partial class CustomPdfTable
|
||||
{
|
||||
/// <summary>
|
||||
/// Обязательная переменная конструктора.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Освободить все используемые ресурсы.
|
||||
/// </summary>
|
||||
/// <param name="disposing">истинно, если управляемый ресурс должен быть удален; иначе ложно.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Код, автоматически созданный конструктором компонентов
|
||||
|
||||
/// <summary>
|
||||
/// Требуемый метод для поддержки конструктора — не изменяйте
|
||||
/// содержимое этого метода с помощью редактора кода.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
components = new System.ComponentModel.Container();
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
@ -1,92 +0,0 @@
|
||||
using Cop.Borovkov.Var3.Models;
|
||||
using PIHelperSh.PdfCreator;
|
||||
using PIHelperSh.PdfCreator.Enums;
|
||||
using PIHelperSh.PdfCreator.Interfaces;
|
||||
using PIHelperSh.PdfCreator.Models.TableModels;
|
||||
using System.ComponentModel;
|
||||
|
||||
namespace Cop.Borovkov.Var3.Components
|
||||
{
|
||||
/// <summary>
|
||||
/// Компонент для сохранения таблицы в пдф
|
||||
/// </summary>
|
||||
public partial class CustomPdfTable : Component
|
||||
{
|
||||
/// <summary>
|
||||
/// </summary>
|
||||
public CustomPdfTable()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// </summary>
|
||||
/// <param name="container"></param>
|
||||
public CustomPdfTable(IContainer container)
|
||||
{
|
||||
container.Add(this);
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Сохранить набор таблиц в пдф
|
||||
/// </summary>
|
||||
/// <param name="fileName"></param>
|
||||
/// <param name="title"></param>
|
||||
/// <param name="tables"></param>
|
||||
public void SaveToPdf(PdfTableInfo tableInfo)
|
||||
{
|
||||
if (!tableInfo.Tables.Any())
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
PdfCreator creator = new PdfCreator();
|
||||
|
||||
creator.AddParagraph(new()
|
||||
{
|
||||
Style = PdfStyleType.Title,
|
||||
Text = tableInfo.Title,
|
||||
MarginAfter = PdfMargin.Smal,
|
||||
});
|
||||
|
||||
foreach (string[,] table in tableInfo.Tables)
|
||||
{
|
||||
List<PDFSimpleTableRow> rows = new();
|
||||
|
||||
for (int i = 0; i < table.GetLength(0); ++i)
|
||||
{
|
||||
PDFSimpleTableRow row = new();
|
||||
|
||||
for (int j = 0; j < table.GetLength(1); ++j)
|
||||
{
|
||||
row.Items.Add(table[i, j]);
|
||||
}
|
||||
|
||||
rows.Add(row);
|
||||
}
|
||||
|
||||
creator.AddSimpleTable(new()
|
||||
{
|
||||
Header = rows.First().Items.Select(item => new PdfTableColumn()
|
||||
{
|
||||
Title = item,
|
||||
Size = 3,
|
||||
} as IPdfColumnItem).ToList(),
|
||||
Rows = rows.Skip(1).ToList(),
|
||||
|
||||
HeaderStyle = PdfStyleType.Basic,
|
||||
HeaderHorizontalAlignment = PdfAlignmentType.Left,
|
||||
RowHorizontalAlignment = PdfAlignmentType.Left,
|
||||
});
|
||||
|
||||
creator.AddParagraph(new()
|
||||
{
|
||||
MarginAfter = PdfMargin.Smal,
|
||||
});
|
||||
}
|
||||
|
||||
creator.SavePdf(tableInfo.FilePath);
|
||||
}
|
||||
}
|
||||
}
|
@ -1,23 +0,0 @@
|
||||
namespace Cop.Borovkov.Var3.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// Параметры для создания таблиц в пдф
|
||||
/// </summary>
|
||||
public record PdfTableInfo
|
||||
{
|
||||
/// <summary>
|
||||
/// имя файла (включая путь до файла)
|
||||
/// </summary>
|
||||
public string FilePath { get; init; } = @"C:\pdfTable.pdf";
|
||||
|
||||
/// <summary>
|
||||
/// название документа(заголовок в документе)
|
||||
/// </summary>
|
||||
public string Title { get; init; } = "Таблица";
|
||||
|
||||
/// <summary>
|
||||
/// Список таблиц
|
||||
/// </summary>
|
||||
public IEnumerable<string[,]> Tables { get; init; } = [];
|
||||
}
|
||||
}
|
@ -1,24 +0,0 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net8.0</TargetFramework>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<Nullable>enable</Nullable>
|
||||
<GeneratePackageOnBuild>True</GeneratePackageOnBuild>
|
||||
<Title>Библиотека PDF</Title>
|
||||
<Authors>MaximK</Authors>
|
||||
<Description>Небольшая надстройка для более удобной работы с PDF</Description>
|
||||
<PackageReadmeFile>README.md</PackageReadmeFile>
|
||||
<RepositoryUrl>https://github.com/KuzarinM/PIHelperSh/tree/master/PIHelperSh.PdfCreater</RepositoryUrl>
|
||||
<GenerateDocumentationFile>True</GenerateDocumentationFile>
|
||||
<PackageLicenseFile>LICENSE</PackageLicenseFile>
|
||||
<Version>1.1.1</Version>
|
||||
<PackageRequireLicenseAcceptance>True</PackageRequireLicenseAcceptance>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="PdfSharp.MigraDoc.Standard" Version="1.51.15" />
|
||||
<PackageReference Include="PIHelperSh.Core" Version="1.0.1" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
@ -4,7 +4,7 @@
|
||||
{
|
||||
public int Id { get; set; }
|
||||
|
||||
public string Name { get; set; } = string.Empty;
|
||||
public string Name { get; set; }
|
||||
|
||||
public int Age { get; set; }
|
||||
|
||||
|
@ -1,5 +1,3 @@
|
||||
using TestCustomComponents.Forms;
|
||||
|
||||
namespace TestCustomComponents
|
||||
{
|
||||
internal static class Program
|
||||
|
Loading…
Reference in New Issue
Block a user