Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.
تسمح طبقات PDF لمستند PDF باحتواء مجموعات مختلفة من المحتوى يمكن عرضها أو إخفاؤها بشكل انتقائي. قد تتضمن كل طبقة في PDF نصوصًا أو صورًا أو رسومات، ويمكن للمستخدمين تبديل هذه الطبقات تشغيلًا أو إيقافًا، اعتمادًا على احتياجاتهم. غالبًا ما تستخدم الطبقات في المستندات المعقدة حيث يحتاج المحتوى المختلف إلى التنظيم أو الفصل.
مع Aspose.PDF for .NET يمكنك فتح PDF، قفل طبقة معينة في الصفحة الأولى، وحفظ المستند مع التغييرات.
منذ إصدار 24.5، تم تنفيذ هذه الميزة.
تمت إضافة طريقتين جديدتين وخصيصة واحدة:
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void LockLayerInPDF()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_Layers();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "input.pdf"))
{
// Get the first page and the first layer
var page = document.Pages[1];
var layer = page.Layers[0];
// Lock the layer
layer.Lock();
// Save PDF document
document.Save(dataDir + "LockLayerInPDF_out.pdf");
}
}
تسمح مكتبة Aspose.PDF for .NET باستخراج كل طبقة من الصفحة الأولى وحفظ كل طبقة في ملف منفصل.
لإنشاء PDF جديد من طبقة، يمكن استخدام مقتطف الشيفرة التالي:
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void SaveLayersFromPdf()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_Forms();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "input.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)
{
layer.Save(dataDir + "Layers_out.pdf");
}
}
}
أدى إصدار 24.9 إلى تحديث لهذه الميزة.
من الممكن استخراج عناصر طبقة PDF وحفظها في تدفق ملف PDF جديد:
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void SaveLayersToOutputStream(Stream outputStream)
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_Forms();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "input.pdf"))
{
// Get layers from the first page
var layers = document.Pages[1].Layers;
// Save each layer to the output stream
foreach (var layer in layers)
{
layer.Save(outputStream);
}
}
}
تفتح مكتبة Aspose.PDF for .NET PDF، وتقوم بالتكرار عبر كل طبقة في الصفحة الأولى، وتسطيح كل طبقة، مما يجعلها دائمة على الصفحة.
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void FlattenLayersInPdf()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_Forms();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "input.pdf"))
{
// Get the first page
var page = document.Pages[1];
// Flatten each layer on the page
foreach (var layer in page.Layers)
{
layer.Flatten(true);
}
}
}
تقبل طريقة ‘Layer.Flatten(bool cleanupContentStream)’ المعامل البولياني الذي يحدد ما إذا كان يجب إزالة علامات مجموعة المحتوى الاختيارية من تدفق المحتوى. يؤدي تعيين معامل cleanupContentStream إلى false إلى تسريع عملية التسطيح.
تسمح مكتبة Aspose.PDF for .NET بدمج جميع طبقات PDF أو طبقة معينة في الصفحة الأولى في طبقة جديدة وحفظ المستند المحدث.
تمت إضافة طريقتين لدمج جميع الطبقات في الصفحة:
يسمح المعامل الثاني بإعادة تسمية علامة مجموعة المحتوى الاختيارية. القيمة الافتراضية هي “oc1” (/OC /oc1 BDC).
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void MergeLayersInPdf(string newLayerName, string optionalLayerName = null)
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_Forms();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "input.pdf"))
{
// Get the first page
var page = document.Pages[1];
// Merge layers with a new layer name
if (optionalLayerName != null)
{
page.MergeLayers(newLayerName, optionalLayerName);
}
else
{
page.MergeLayers(newLayerName);
}
// Save PDF document
document.Save(dataDir + "MergeLayersInPdf_out.pdf");
}
}
Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.