Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.
private static void EncriptPdfNonlatinPassCharacters()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_SecuritySignatures();
using (var fileSecurity = new Aspose.Pdf.Facades.PdfFileSecurity())
{
// Bind PDF document
fileSecurity.BindPdf(dataDir + "input.pdf");
// Encrypt file using 256-bit encryption
bool isSuccessful = fileSecurity.EncryptFile("æøå", "æøå", Aspose.Pdf.Facades.DocumentPrivilege.Print,
Aspose.Pdf.Facades.KeySize.x256, Aspose.Pdf.Facades.Algorithm.AES);
Console.WriteLine(isSuccessful);
// Save PDF document
fileSecurity.Save(dataDir + "PdfNonlatinPassEncrypted_out.pdf");
}
}
Por favor, use TextState.Invisible para obter informações sobre a invisibilidade do texto fora da configuração do modo de renderização.
Usamos o seguinte código para teste:
private static void DisplayTextInvisibility()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_Text();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "PdfWithHiddenText.pdf"))
{
Console.WriteLine(document.FileName);
// Use TextFragmentAbsorber with no parameters to get all text
var absorber = new Aspose.Pdf.Text.TextFragmentAbsorber();
absorber.Visit(document.Pages[1]);
var textFragmentCollection = absorber.TextFragments;
// Iterate through text fragments to find hidden text
for (int i = 1; i <= textFragmentCollection.Count; i++)
{
var fragment = textFragmentCollection[i];
Console.WriteLine("Fragment {0} at {1}", i, fragment.Rectangle.ToString());
Console.WriteLine("Text: {0}", fragment.Text);
Console.WriteLine("RenderingMode: {0}", fragment.TextState.RenderingMode.ToString());
Console.WriteLine("Invisibility: {0}", fragment.TextState.Invisible);
Console.WriteLine("---");
}
}
}
private static void GetPdfLayers()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_Layers();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "PdfWithLayers.pdf"))
{
// Get layers from the first page
var layers = document.Pages[1].Layers;
// Save each layer to the output path
foreach (var layer in layers)
{
Console.WriteLine("Document {0} contains a layer named: {1} ", document.FileName, layer.Name);
}
}
}
Personalize a cor de fundo para a aparência da assinatura e a cor da fonte dos rótulos na área de assinatura com Aspose.PDF for .NET.
private static void SignPdfWithCustomColorsInAppearance(string pfxFilePath, string password)
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_SecuritySignatures();
// Instantiate PdfFileSignature object
using (var pdfFileSignature = new Aspose.Pdf.Facades.PdfFileSignature())
{
// Bind PDF document
pdfFileSignature.BindPdf(dataDir + "DigitallySign.pdf");
var rect = new System.Drawing.Rectangle(310, 45, 200, 50);
// Create PKCS#7 object for sign
var pkcs = new Aspose.Pdf.Forms.PKCS7(pfxFilePath, password);
// Set signature custom appearance
pkcs.CustomAppearance = new Aspose.Pdf.Forms.SignatureCustomAppearance()
{
// Set colors
ForegroundColor = Aspose.Pdf.Color.DarkGreen,
BackgroundColor = Aspose.Pdf.Color.LightSeaGreen,
};
// Sign PDF file
pdfFileSignature.Sign(1, true, rect, pkcs);
// Save PDF document
pdfFileSignature.Save(dataDir + "SignPdfWithCustomColorsInAppearance_out.pdf");
}
}
Na versão 21.8, a propriedade ForegroundColor permite mudar a cor do texto na Assinatura Digital.
private static void SignPdfWithForegroundColorInAppearance(string pfxFilePath, string password)
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_SecuritySignatures();
// Instantiate PdfFileSignature object
using (var pdfSign = new Aspose.Pdf.Facades.PdfFileSignature())
{
// Bind PDF document
pdfSign.BindPdf(dataDir + "DigitallySign.pdf");
var rect = new System.Drawing.Rectangle(310, 45, 200, 50);
// Create PKCS#7 object for sign
var pkcs = new Aspose.Pdf.Forms.PKCS7(pfxFilePath, password);
// Set signature custom appearance
pkcs.CustomAppearance = new Aspose.Pdf.Forms.SignatureCustomAppearance()
{
// Set text color
ForegroundColor = Aspose.Pdf.Color.Green
};
// Sign PDF file
pdfSign.Sign(1, true, rect, pkcs);
// Save PDF document
pdfSign.Save(dataDir + "SignPdfWithForegroundInAppearance_out.pdf");
}
}
Para adicionar parâmetros XSL, precisamos criar nossa própria XsltArgumentList e configurá-la como uma propriedade em XslFoLoadOptions. O seguinte trecho mostra como usar esta classe com os arquivos de exemplo descritos acima.
private static void ConvertXslfoToPdfWithArgumentList()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_DocumentConversion();
// Create convert options
var options = new Aspose.Pdf.XslFoLoadOptions(dataDir + "XSLFOToPdfInput.xslt");
// Example of using XsltArgumentList
options.XsltArgumentList = new XsltArgumentList();
options.XsltArgumentList.AddParam("isBoldName", "", "yes");
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "XSLFOToPdfInput.xml", options))
{
// Save PDF document
document.Save(dataDir + "XslfoToPdfWithArgumentList_out.pdf");
}
}
Com Aspose.PDF for .NET você pode ocultar imagens usando ImagePlacementAbsorber do documento:
private static void HideImageInPdf()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_Images();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "ImagePlacement.pdf"))
{
// Create ImagePlacementAbsorber instance
var absorber = new Aspose.Pdf.ImagePlacementAbsorber();
// Load the images of the first page
document.Pages[1].Accept(absorber);
// Iterate through each image placement on the first page
foreach (var imagePlacement in absorber.ImagePlacements)
{
// Hide image
imagePlacement.Hide();
}
// Save PDF document
document.Save(dataDir + "HideImageInPdf_out.pdf");
}
}
Você pode obter uma fonte completa com o prefixo usando a propriedade BaseFont para a classe Font.
private static void DisplayFontFullNames()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_WorkingDocuments();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "BreakfastMenu.pdf"))
{
// Get document fonts
var fonts = document.FontUtilities.GetAllFonts();
// Iterate through the fonts
foreach (var font in fonts)
{
// Show font names
Console.WriteLine($"font name : {font.FontName} BaseFont name : {font.BaseFont}");
}
}
}
Aspose.PDF 21.4 permite combinar imagens. Siga o próximo trecho de código:
private static void MergeAsJpeg()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_Images();
List<Stream> inputImagesStreams = new List<Stream>();
using (FileStream firstImageStream = new FileStream(dataDir + "aspose.jpg", FileMode.Open))
{
inputImagesStreams.Add(firstImageStream);
using (FileStream secondImageStream = new FileStream(dataDir + "aspose-logo.jpg", FileMode.Open))
{
inputImagesStreams.Add(secondImageStream);
// Invoke PdfConverter.MergeImages to perform merge
using (Stream inputStream = Aspose.Pdf.Facades.PdfConverter.MergeImages(inputImagesStreams,
Aspose.Pdf.Drawing.ImageFormat.Jpeg, Aspose.Pdf.Facades.ImageMergeMode.Vertical, 1, 1))
{
using (FileStream outputStream = new FileStream(dataDir + "Merge_out.jpg", FileMode.Create))
{
byte[] buffer = new byte[32768];
int read;
while ((read = inputStream.Read(buffer, 0, buffer.Length)) > 0)
{
outputStream.Write(buffer, 0, read);
}
}
}
}
}
}
Além disso, você pode mesclar suas imagens no formato Tiff:
private static void MergeAsTiff()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_Images();
List<Stream> inputImagesStreams = new List<Stream>();
using (FileStream firstImageStream = new FileStream(dataDir + "aspose.jpg", FileMode.Open))
{
inputImagesStreams.Add(firstImageStream);
using (FileStream secondImageStream = new FileStream(dataDir + "aspose-logo.jpg", FileMode.Open))
{
inputImagesStreams.Add(secondImageStream);
// Invoke PdfConverter.MergeImagesAsTiff to perform merge
using (Stream inputStream = Aspose.Pdf.Facades.PdfConverter.MergeImagesAsTiff(inputImagesStreams))
{
using (FileStream outputStream = new FileStream(dataDir + "Merge_out.tiff", FileMode.Create))
{
byte[] buffer = new byte[32768];
int read;
while ((read = inputStream.Read(buffer, 0, buffer.Length)) > 0)
{
outputStream.Write(buffer, 0, read);
}
}
}
}
}
}
Com o próximo trecho de código, você deve ser capaz de acessar a carga criptografada de seus arquivos PDF, protegidos com Azure Information Protection:
private static void AzureInformationProtection()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_Attachments();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "GetAlltheAttachments.pdf"))
{
if (document.EmbeddedFiles[1].AFRelationship == Aspose.Pdf.AFRelationship.EncryptedPayload)
{
if (document.EmbeddedFiles[1].EncryptedPayload != null)
{
// document.EmbeddedFiles[1].EncryptedPayload.Type == "EncryptedPayload"
// document.EmbeddedFiles[1].EncryptedPayload.Subtype == "MicrosoftIRMServices"
// document.EmbeddedFiles[1].EncryptedPayload.Version == "2"
}
}
}
}
Nesta versão do Aspose.PDF, a função se tornou disponível para recuperar a cor de fundo. Você precisa especificar searchOptions.SearchForTextRelatedGraphics = true; nas opções do objeto TextFragmentAbsorber.
Por favor, considere o seguinte código:
private static void DisplayPdfTextBackgroundColor()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_Text();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "PdfWithTextBackgroundColor.pdf"))
{
// Use TextFragmentAbsorber with no parameters to get all text
var textFragmentAbsorber = new Aspose.Pdf.Text.TextFragmentAbsorber();
var searchOptions = new Aspose.Pdf.Text.TextSearchOptions(false);
// Setting this option to 'true' is necessary
searchOptions.SearchForTextRelatedGraphics = true;
textFragmentAbsorber.TextSearchOptions = searchOptions;
// Accept the absorber for all the pages
document.Pages.Accept(textFragmentAbsorber);
// Loop through the fragments
foreach (var textFragment in textFragmentAbsorber.TextFragments)
{
Console.WriteLine("Text: '{0}'", textFragment.Text);
Console.WriteLine("BackgroundColor: '{0}'", textFragment.TextState.BackgroundColor);
Console.WriteLine("ForegroundColor: '{0}'", textFragment.TextState.ForegroundColor);
Console.WriteLine("Segment BackgroundColor: '{0}'", textFragment.Segments[1].TextState.BackgroundColor);
}
}
}
Além disso, no Aspose.PDF 21.1, após converter PDF para HTML, fontes incorporadas se tornaram disponíveis no documento HTML de saída. Isso é possível com a nova opção booleana de salvamento, HtmlSaveParameter.SaveFullFont.
Aqui está o trecho de código:
private static void PdfToHtmlWithFullFont()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_DocumentConversion();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "PDFToHTML.pdf"))
{
// Instantiate HTML SaveOptions object
var options = new Aspose.Pdf.HtmlSaveOptions
{
RasterImagesSavingMode = Aspose.Pdf.HtmlSaveOptions.RasterImagesSavingModes.AsEmbeddedPartsOfPngPageBackground,
PartsEmbeddingMode = Aspose.Pdf.HtmlSaveOptions.PartsEmbeddingModes.EmbedAllIntoHtml,
LettersPositioningMethod = Aspose.Pdf.HtmlSaveOptions.LettersPositioningMethods.UseEmUnitsAndCompensationOfRoundingErrorsInCss,
FontSavingMode = Aspose.Pdf.HtmlSaveOptions.FontSavingModes.AlwaysSaveAsTTF,
SaveTransparentTexts = true,
// New option
SaveFullFont = true
};
// Save HTML document
document.Save(dataDir + "PdfToHtmlWithFullFont_out.html", options);
}
}
Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.