Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.
Эта статья объясняет, как конвертировать PDF в HTML с помощью C#. Она охватывает следующие темы.
Следующий фрагмент кода также работает с библиотекой Aspose.PDF.Drawing.
Aspose.PDF for .NET предоставляет множество функций для конвертации различных форматов файлов в PDF документы и конвертации PDF файлов в различные форматы вывода. Эта статья обсуждает, как конвертировать PDF файл в HTML. Aspose.PDF for .NET предоставляет возможность конвертировать HTML файлы в PDF формат с использованием подхода InLineHtml. Мы получили много запросов на функциональность, которая конвертирует PDF файл в HTML формат и предоставили эту функцию. Обратите внимание, что эта функция также поддерживает XHTML 1.0.
Aspose.PDF for .NET поддерживает функции для конвертации PDF файла в HTML. Основные задачи, которые вы можете выполнить с библиотекой Aspose.PDF, перечислены:
Попробуйте конвертировать PDF в HTML онлайн
Aspose.PDF for .NET представляет вам онлайн бесплатное приложение “PDF в HTML”, где вы можете попробовать исследовать функциональность и качество его работы.
Aspose.PDF for .NET предоставляет двухстрочный код для преобразования исходного PDF файла в HTML. Перечисление SaveFormat
содержит значение Html, которое позволяет вам сохранить исходный файл в HTML. Следующий фрагмент кода показывает процесс конвертации PDF файла в HTML.
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ConvertPDFtoHTML()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "PDFToHTML.pdf"))
{
// Save the output HTML
document.Save(dataDir + "output_out.html", Aspose.Pdf.SaveFormat.Html);
}
}
При конвертации большого PDF файла с несколькими страницами в формат HTML, вывод появляется как одна HTML страница. Это может оказаться очень длинным. Чтобы контролировать размер страницы, возможно разделить вывод на несколько страниц во время конвертации PDF в HTML. Пожалуйста, попробуйте использовать следующий фрагмент кода.
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ConvertPDFtoMultiPageHTML()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "PDFToHTML.pdf"))
{
// Instantiate HTML SaveOptions object
var htmlOptions = new Aspose.Pdf.HtmlSaveOptions
{
// Specify to split the output into multiple pages
SplitIntoPages = true
};
// Save the output HTML
document.Save(dataDir + "MultiPageHTML_out.html", htmlOptions);
}
}
Во время конвертации PDF в HTML возможно указать папку, в которую должны сохраняться SVG изображения. Используйте класс HtmlSaveOption
SpecialFolderForSvgImages property
, чтобы указать специальный каталог для SVG изображений. Это свойство получает или устанавливает путь к каталогу, в который SVG изображения должны быть сохранены при встрече во время конвертации. Если параметр пустой или равен null, то любые SVG файлы сохраняются вместе с другими изображениями.
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void SavePDFtoHTMLWithSVG()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "PDFToHTML.pdf"))
{
// Instantiate HTML save options object
var newOptions = new Aspose.Pdf.HtmlSaveOptions
{
// Specify the folder where SVG images are saved during PDF to HTML conversion
SpecialFolderForSvgImages = dataDir
};
// Save the output HTML
document.Save(dataDir + "SaveSVGFiles_out.html", newOptions);
}
}
Чтобы сжать SVG изображения во время конвертации PDF в HTML, пожалуйста, попробуйте использовать следующий код:
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void SavePDFtoCompressedHTMLWithSVG()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "PDFToHTML.pdf"))
{
// Create HtmlSaveOptions with tested feature
var newOptions = new Aspose.Pdf.HtmlSaveOptions
{
// Compress the SVG images if there are any
CompressSvgGraphicsIfAny = true
};
// Save the output HTML
document.Save(dataDir + "CompressedSVGHTML_out.html", newOptions);
}
}
Формат вывода по умолчанию для сохранения изображений - SVG. Во время конвертации некоторые изображения из PDF преобразуются в векторные изображения SVG. Это может быть медленно. Вместо этого изображения могут быть преобразованы в один файл фона PNG для каждой страницы.
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void PdfToHtmlSaveImagesAsPngBackground()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_DocumentConversion_PDFToHTMLFormat();
// Create HtmlSaveOption with tested feature
var htmlSaveOptions = new HtmlSaveOptions();
// Option to save images in PNG format as background for each page.
htmlSaveOptions.RasterImagesSavingMode = HtmlSaveOptions.RasterImagesSavingModes.AsEmbeddedPartsOfPngPageBackground;
using (var document = new Aspose.Pdf.Document(dataDir + "input.pdf"))
{
document.Save(dataDir + "imagesAsPngBackground_out.html", htmlSaveOptions);
}
}
Мы также можем указать папку, в которую изображения будут сохранены во время конвертации PDF в HTML:
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void SavePDFtoHTMLWithSeparateImageFolder()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "PDFToHTML.pdf"))
{
// Create HtmlSaveOptions with tested feature
var newOptions = new Aspose.Pdf.HtmlSaveOptions
{
// Specify the separate folder to save images
SpecialFolderForAllImages = dataDir
};
// Save the output HTML
document.Save(dataDir + "HTMLWithSeparateImageFolder_out.html", newOptions);
}
}
Недавно нам было предложено ввести функцию, при которой PDF файлы конвертируются в HTML, и пользователь может получить только содержимое тега <body>
для каждой страницы. Это приведет к созданию одного файла с CSS, <html>
, <head>
деталями и всех страниц в других файлах только с содержимым <body>
.
Чтобы удовлетворить это требование, новое свойство HtmlMarkupGenerationMode было введено в класс HtmlSaveOptions.
С помощью следующего простого фрагмента кода вы можете разделить выходной HTML на страницы. В выходных страницах все HTML объекты должны находиться точно там, где они находятся сейчас (обработка шрифтов и вывод, создание и вывод CSS, создание и вывод изображений), за исключением того, что выходной HTML будет содержать содержимое, в настоящее время размещенное внутри тегов (теперь теги “body” будут опущены). Однако, при использовании этого подхода, ссылка на CSS является ответственностью вашего кода, потому что такие вещи, как будут удалены. Для этой цели вы можете прочитать CSS через File.ReadAllText() и отправить его через AJAX на веб-страницу, где он будет применен с помощью jQuery.
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ConvertPDFToHTMLWithBodyContent()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "PDFToHTML.pdf"))
{
// Initialize HtmlSaveOptions
var options = new Aspose.Pdf.HtmlSaveOptions
{
// Set HtmlMarkupGenerationMode to generate only body content
HtmlMarkupGenerationMode =
Aspose.Pdf.HtmlSaveOptions.HtmlMarkupGenerationModes.WriteOnlyBodyContent,
// Specify to split the output into multiple pages
SplitIntoPages = true
};
// Save the output HTML
document.Save(dataDir + "CreateSubsequentFiles_out.html", options);
}
}
В случае, если исходный/входной PDF файл содержит прозрачные тексты, затененные передними изображениями, могут возникнуть проблемы с рендерингом текста. Поэтому, чтобы учесть такие сценарии, можно использовать свойства SaveShadowedTextsAsTransparentTexts и SaveTransparentTexts.
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ConvertPDFToHTMLWithTransparentTextRendering()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "PDFToHTML.pdf"))
{
// Initialize HtmlSaveOptions
var htmlOptions = new Aspose.Pdf.HtmlSaveOptions
{
// Enable transparent text rendering
SaveShadowedTextsAsTransparentTexts = true,
SaveTransparentTexts = true
};
// Save the output HTML
document.Save(dataDir + "TransparentTextRendering_out.html", htmlOptions);
}
}
Мы можем рендерить слои PDF документа в отдельном элементе типа слоя во время конвертации PDF в HTML:
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ConvertPDFToHTMLWithLayersRendering()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "PDFToHTML.pdf"))
{
// Instantiate HTML SaveOptions object
var htmlOptions = new Aspose.Pdf.HtmlSaveOptions
{
// Enable rendering of PDF document layers separately in the output HTML
ConvertMarkedContentToLayers = true
};
// Save the output HTML
document.Save(dataDir + "LayersRendering_out.html", htmlOptions);
}
}
Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.