Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.
Às vezes, ao desenvolver uma aplicação ASP.NET, você precisa enviar arquivo(s) PDF para navegador(es) para download sem salvá-los fisicamente. Para conseguir isso, você pode salvar o documento PDF em um objeto MemoryStream após gerá-lo e passar os bytes desse MemoryStream para o objeto Response. Fazer isso fará com que o navegador baixe o documento PDF gerado.
O seguinte trecho de código demonstra a funcionalidade acima:
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private void Page_Load(object sender, EventArgs e)
{
// Clear the response before writing to it
Response.Clear();
// Set content type for PDF
Response.ContentType = "application/pdf";
// Set the response header for file download
Response.AddHeader("content-disposition", "attachment; filename=TestDocument.pdf");
// Create PDF document
using (var document = new Aspose.Pdf.Document())
{
// Add Page in Pages Collection
var page = document.Pages.Add();
var textFragment = new Aspose.Pdf.Text.TextFragment("Hello World");
page.Paragraphs.Add(textFragment);
// Save PDF document to a MemoryStream
using (var ms = new MemoryStream())
{
document.Save(ms);
// Reset the stream position to the beginning
ms.Position = 0;
// Write the MemoryStream to the response
ms.CopyTo(Response.OutputStream);
Response.AddHeader("content-length", ms.Length.ToString());
Response.Flush();
// Suppress the remaining content
Response.SuppressContent = true;
}
}
// End the response to prevent further processing
Response.End();
}
Com Aspose.PDF, você pode adicionar expressões/fórmulas matemáticas dentro do documento PDF usando script LaTeX. Os seguintes exemplos mostram como esse recurso pode ser usado de duas maneiras diferentes, a fim de adicionar uma fórmula matemática dentro de uma célula de tabela:
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void LatexWithoutPreambleAndDocEnvironment()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_Text();
// Create PDF document
using (var document = new Aspose.Pdf.Document())
{
// Add page
var page = doc.Pages.Add();
// Create a Table
var table = new Aspose.Pdf.Table();
// Add a row into Table
var row = table.Rows.Add();
// Add Cell with Latex Script to add methematical expressions/formulae
var latexText1 = "$123456789+\\sqrt{1}+\\int_a^b f(x)dx$";
var cell = row.Cells.Add();
cell.Margin = new MarginInfo { Left = 20, Right = 20, Top = 20, Bottom = 20 };
// Second TeXFragment constructor bool parameter provides LaTeX paragraph indents elimination
var ltext1 = new Aspose.Pdf.TeXFragment(latexText1, true);
cell.Paragraphs.Add(ltext1);
// Add table inside page
page.Paragraphs.Add(table);
// Save PDF document
document.Save(dataDir + "LatextScriptInPdf_out.pdf");
}
}
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void LatexWithPreambleAndDocEnvironment()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_Text();
// Open PDF document
using (var document = new Aspose.Pdf.Document())
{
// Add page
var page = doc.Pages.Add();
// Create a Table
var table = new Aspose.Pdf.Table();
// Add a row into Table
var row = table.Rows.Add();
// Add Cell with Latex Script to add methematical expressions/formulae
var latexText2 = @"\documentclass{article}
\begin{document}
Latex and the document class will normally take care of page layout issues for you. For submission to an academic publication, this entire topic will be out
\end{document}";
var cell = row.Cells.Add();
cell.Margin = new Aspose.Pdf.MarginInfo { Left = 20, Right = 20, Top = 20, Bottom = 20 };
var text2 = new Aspose.Pdf.HtmlFragment(latexText2);
cell.Paragraphs.Add(text2);
// Add table inside page
page.Paragraphs.Add(table);
// Save PDF document
document.Save(dataDir + "LatextScriptInPdf2_out.pdf");
}
}
O ambiente align é definido no pacote amsmath, e o ambiente proof é definido no pacote amsthm. Assim, você deve especificar esses pacotes usando o comando \usepackage no preâmbulo do documento. E isso significa que você deve enclausurar o texto LaTeX no ambiente do documento, conforme mostrado no seguinte exemplo de código.
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void LatexTagsSupport()
{
var s = @"
\usepackage{amsmath,amsthm}
\begin{document}
\begin{proof} The proof is a follows:
\begin{align}
(x+y)^3&=(x+y)(x+y)^2
(x+y)(x^2+2xy+y^2)\\
&=x^3+3x^2y+3xy^3+x^3.\qedhere
\end{align}
\end{proof}
\end{document}";
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_Text();
// Create PDF document
using (var document = new Aspose.Pdf.Document())
{
// Add page
var page = document.Pages.Add();
var latex = new Aspose.Pdf.TeXFragment(s);
page.Paragraphs.Add(latex);
// Save PDF document
document.Save(dataDir + "Script_out.pdf");
}
}
Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.