我需要将Microsoft Excel中的图表另存为PDF文件。 (另存为 - >文件类型:PDF)这将生成一个单页PDF文件,其中图表始终位于中间,并且图表也会缩放以适合页面宽度。
结果很好,但图表可以在它周围获得许多额外的空白区域,我想摆脱它。我正在使用 PdfSharp 来处理PDF文件,但我无法在PDF中找到图表(对象),计算实际尺寸。
我知道Aspose.PDF库有一个函数 - CalculateContentBBox但我不能在我的项目中使用该库。
无论如何通过PdfSharp得到相同或相似的东西? 我相信图表在内部结构
中存储为
'/Contents'
这是我到目前为止所尝试的内容(GitHub中包含示例PDF文件) 感谢
https://github.com/PetLahev/PdfSharpQuestion
using System;
using System.Reflection;
using System.IO;
using PdfSharp.Pdf;
using PdfSharp.Pdf.IO;
using PdfSharp.Pdf.Advanced;
namespace PDFSharpProject
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Provide path to a PDF file (or just hit enter to get the default)");
string path = Console.ReadLine();
if (string.IsNullOrWhiteSpace(path))
{
path = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), "TestPDF.pdf");
}
if (string.IsNullOrWhiteSpace(path)) return;
TryToFindObject(path);
}
private static void TryToFindObject(string pdfPath)
{
PdfDocument pdf = PdfReader.Open(pdfPath);
PdfPage page = pdf.Pages[0];
PdfDictionary contents = page.Elements.GetDictionary("/Contents");
if (contents == null) return;
var items = contents.Elements.Values;
Console.WriteLine("Here I don't know what to do");
}
}
}