Neste tópico passo a passo, você aprenderá como converter PUB para PNG em C#. A necessidade de converter o arquivo PUB para o formato PNG em C# ocorre quando você precisa mostrar as páginas de um arquivo PUB como imagens em seu aplicativo. O tutorial ajuda você a conseguir isso com algumas linhas de código C#.
Etapas para converter PUB para PNG em C#
- Instale os pacotes Aspose.PUB for .NET e Aspose.PDF for .NET do NuGet.org
- Referencie quatro namespaces necessários para fazer o código funcionar
- Defina a licença para ambas as APIs separadamente usando o método SetLicense
- Crie um analisador para o arquivo PUB usando PubFactory class
- Carregar arquivo PUB analisado em um Document object
- Salve o arquivo PDF intermediário usando IPdfConverter interface
- Crie um novo PDF Document object
- Percorra todas as páginas do arquivo PDF
- Salve cada página PDF como imagem PNG usando PngDevice object
Nas etapas acima, usamos Aspose.PUB para .NET e Aspose.PDF para .NET APIs para primeiro converter um arquivo PUB em um formato de arquivo PDF intermediário e, em seguida, converter esse arquivo PDF intermediário em imagens PNG.
Código para converter PUB para PNG em C#
using System; | |
//Add reference to Aspose.PUB for .NET API | |
//Use following namespaces to convert PUB to PNG image format | |
using Aspose.Pub; | |
using PDF = Aspose.Pdf; | |
using Aspose.Pdf.Facades; | |
using Aspose.Pdf.Devices; | |
namespace ConvertPUBToPNG | |
{ | |
class Program | |
{ | |
static void Main(string[] args) | |
{ | |
//Set Aspose license before converting PUB to PNG format | |
//using Aspose.PUB for .NET | |
Aspose.Pub.License AsposePUBLicense = new Aspose.Pub.License(); | |
AsposePUBLicense.SetLicense(@"c:\asposelicense\license.lic"); | |
Aspose.Pdf.License AsposePDFLicense = new Aspose.Pdf.License(); | |
AsposePDFLicense.SetLicense(@"c:\asposelicense\license.lic"); | |
//Load a parsed version of Pub file to Document object | |
IPubParser PubFileParser = PubFactory.CreateParser("InputPUBFileToConvert.pub"); | |
Document PubDocument = PubFileParser.Parse(); | |
//convert to PDF using PDFConvert object | |
IPdfConverter PDFConverter = PubFactory.CreatePdfConverter(); | |
PDFConverter.ConvertToPdf(PubDocument, "IntermediatePDFFile.pdf"); | |
//create a PDF document | |
PDF.Document PDFDocument = new PDF.Document("IntermediatePDFFile.pdf"); | |
PdfFileInfo PDFFileInfo = new PdfFileInfo(PDFDocument); | |
//loop through each page and save it as PNG | |
foreach (PDF.Page PDFPage in PDFDocument.Pages) | |
{ | |
PDF.PageSize PDFPageSize = new PDF.PageSize( | |
Convert.ToInt32(PDFFileInfo.GetPageWidth(PDFPage.Number)), | |
Convert.ToInt32(PDFFileInfo.GetPageHeight(PDFPage.Number))); | |
PDF.Devices.PngDevice PNGDevice = new PDF.Devices.PngDevice(PDFPageSize); | |
PNGDevice.Process(PDFPage, "Page" + PDFPage.Number + ".png"); | |
} | |
} | |
} | |
} |
O código acima ajuda a convert PUB para PNG em código C# com algumas etapas. Cada página individual do arquivo PDF é salva como uma imagem PNG separada. Usando este código e seguindo as etapas, você pode criar seu próprio conversor de PUB para PNG C# em seus aplicativos .NET, incluindo Windows, Web, Desktop ou Serviços, etc. Observe que isso não requer que o Microsoft Publisher seja instalado em sua máquina ou servidor .