#127 pdf/a-1a compliance

adds struct tree and markinfo dictionaries to support pdf/a-1a compliance.
This commit is contained in:
Eliot Jones
2020-03-29 17:55:02 +01:00
parent 5f45ee53bd
commit 7f1bf094bc
7 changed files with 104 additions and 7 deletions

View File

@@ -522,6 +522,34 @@
}
}
[Fact]
public void CanGeneratePdfA1AFile()
{
var builder = new PdfDocumentBuilder
{
ArchiveStandard = PdfAStandard.A1A
};
var page = builder.AddPage(PageSize.A4);
var font = builder.AddTrueTypeFont(TrueTypeTestHelper.GetFileBytes("Roboto-Regular.ttf"));
page.AddText("Howdy PDF/A-1A!", 10, new PdfPoint(25, 700), font);
var bytes = builder.Build();
WriteFile(nameof(CanGeneratePdfA1AFile), bytes);
using (var pdf = PdfDocument.Open(bytes, ParsingOptions.LenientParsingOff))
{
Assert.Equal(1, pdf.NumberOfPages);
Assert.True(pdf.TryGetXmpMetadata(out var xmp));
Assert.NotNull(xmp.GetXDocument());
}
}
private static void WriteFile(string name, byte[] bytes)
{
try