RemoveLayers.cs
C# VB
//// This code is part of Document Solutions for PDF .NET demos.// Copyright (c) MESCIUS inc. All rights reserved.//
using System.IO;using System.Linq;using GrapeCity.Documents.Pdf;
namespace DsPdfWeb.Demos{ // This example shows how to remove layers and their content // from a PDF with multiple layers. // The input PDF for this sample was created by HousePlanAllLayers. public class RemoveLayers { public int CreatePDF(Stream stream) { using var fs = File.OpenRead(Path.Combine("Resources", "PDFs", "house-plan-all-layers.pdf")); var doc = new GcPdfDocument(); doc.Load(fs);
// Remove all layers except the last one with their content: var layers = doc.OptionalContent.Groups.Take(doc.OptionalContent.Groups.Count - 1).ToArray(); doc.OptionalContent.RemoveLayers(true, layers); // Remove the single remaining layer, leaving its content in place: doc.OptionalContent.RemoveLayer(doc.OptionalContent.Groups[0]);
// Save the PDF: doc.Save(stream); return doc.Pages.Count; } }}