- Регистрация
- 23.05.2014
- Сообщения
- 1 500
- Благодарностей
- 1 268
- Баллы
- 113
Доброе время суток форумчане. Сегодня завершается наша трилогия по работе с документами разного формата из ZennoPoster. Word-http://zennolab.com/discussion/threads/sozdanie-word-dokumentov.15666/ Excel - http://zennolab.com/discussion/threads/sozdanie-excel-fajlov.15797/
___________________________________________________________________________
Работать мы будем конечно же с долгожданным форматом PDF
Качаем библиотеку PDFsharp по ссылке https://pdfsharp.codeplex.com/
Открываем архив, заходим в папку GDI+ и переносим файл PdfSharp.dll папку ExternalAssemblies. Если такой папки нет - просто создаем. У меня демо версия зеннки, поэтому такой путь.
Добавляем ссылку на библиотеку через элемент Ссылки на GAC
Добавляем в элемент Директивы using
C#:
using PdfSharp.Drawing;
using PdfSharp.Pdf;
using System.IO;
using System.Diagnostics;
Теперь открываем элемент Свой c# код и вставляем данный код. Думаю комментарии излишне
C#:
// Создаем новый PDF документ
PdfDocumnet document = new PdfDocumnet();
// Создаем пустую страницу
PdfPage page = document.AddPage();
// Получаем объект XGraphics для "рисования" элементов на странице
XGraphics gfx = XGraphics.FromPdfPage(page);
// Специальная опция для шрифта. Это чтобы русский текст нормально отображался
XPdfFontOptions options = new XPdfFontOptions(PdfFontEncoding.Unicode, PdfFontEmbedding.Always);
// Создаем шрифта
Xfont font = new XFont("Times New Roman", 40, XFontStyle.Bold, options);
// Рисуем текст. Да да) вы не ослышались. Рисуем текст в указанных координатах
gfx.DrawString("Здесь был водяной знак", font, brush,
new XRect(0, 0, page.Width, page.Height),
XStringFormat.Center);
string filename = "Test.pdf";
// Сохраняем файл под названием Test.pdf
document.Save(filename);
// ... и запускам сразу в программе просмотра pdf файлов
Process.Start(filename);
Итак, что нам еще нужно бывает при работе с PDF?
1) Защита документа от редактирования
2) Добавление водяного знака
3) Преобразование картинки в PDF
Пример редактирования политик защиты
C#:
PdfSecuritySettings securitySettings = document.SecuritySettings;
// Пароль для открытия документа
securitySettings.UserPassword = ""; // Пустой пароль
// Пароль для редактирования документа
securitySettings.OwnerPasswod = "superpassword1";
// Печать с высоким разрешением
securitySettings.PermitFullQualityPrint = false;
// Изменения документа
securitySettings.PermitModifyDocument = false;
// Комментирование
securitySettings.PermitAnnotations = false;
// Заполнение полей форм или подписание
securitySettings.PermitFormsFill = false;
// Компоновка документа
securitySettings.PermitAssembleDocument = false;
// Копирование содержимого
securitySettings.PermitExtractContent = false;
// Расширенный доступ к содержимому
securitySettings.PermitAccessibilityExtractContent = false;
// Сохраняем файл под название Test.pdf
document.Save(filename);
C#:
// Создаем шрифт
Xfont font = new XFont("Times New Roman", 40, XFontStyle.Bold, options);
// Функции поворота теста
gfx.TranslateTransform(page.Width / 2, page.Height / 2);
gfx.RotateTransform(-Math.Atan(page.Height / page.Width) * 180 / Math.PI);
gfx.TranslateTransform(-page.Width / 2, -page.Height / 2);
// Создаем полупрозрачную кисть для более реалистичного вида
XBrush brush = new XSolidBrudh(XColor.FromArgb(128, 255, 0, 0));
// Рисуем водяной знак
gfx.DrawString("Здесь был водяной знак", font, brush,
new XRect(0, 0, page.Width, page.Height),
XStringFormat.Center);
C#:
// Создаем новый PDF документ
PdfDocument doc = new PdfDocument();
// Добавляем пустую страницу
doc.Pages.Add(new PdfPage());
Xgraphics xgr = XGraphics.FromPdfPage(doc.Pages[0]);
// Указываем путь к картинке
XImage img = XImage.FromFile(@"D:\123.jpg");
// Координаты начала вставки картинки
xgr.DrawImage(img, 0, 0);
// Сохраняем PdfDocument
doc.Save("Zenno.pdf");
doc.Close();
Process.Start("Zenno.pdf");
- Тема статьи
- Другое
- Номер конкурса статей
- Второй конкурс статей
Для запуска проектов требуется программа ZennoPoster или ZennoDroid.
Это основное приложение, предназначенное для выполнения автоматизированных шаблонов действий (ботов).
Подробнее...
Для того чтобы запустить шаблон, откройте нужную программу. Нажмите кнопку «Добавить», и выберите файл проекта, который хотите запустить.
Подробнее о том, где и как выполняется проект.
Последнее редактирование модератором: