diff --git a/Generation/Converters/Argumentum.AssetConverter.VisualTests/FallacyCardTests.cs b/Generation/Converters/Argumentum.AssetConverter.VisualTests/FallacyCardTests.cs index 9e480d6b3..a7c650fae 100644 --- a/Generation/Converters/Argumentum.AssetConverter.VisualTests/FallacyCardTests.cs +++ b/Generation/Converters/Argumentum.AssetConverter.VisualTests/FallacyCardTests.cs @@ -58,7 +58,7 @@ public async Task Render_NominalCard() _output.WriteLine(JsonSerializer.Serialize(config, new JsonSerializerOptions { WriteIndented = true })); _output.WriteLine("--------------------------------------"); - string imageFile = null; + string? imageFile = null; try { // 2. Exécution "in-process" diff --git a/Generation/Converters/Argumentum.AssetConverter/DatasetUpdater/DatasetUpdaterConfig.cs b/Generation/Converters/Argumentum.AssetConverter/DatasetUpdater/DatasetUpdaterConfig.cs index a1df0595a..1c1f0636a 100644 --- a/Generation/Converters/Argumentum.AssetConverter/DatasetUpdater/DatasetUpdaterConfig.cs +++ b/Generation/Converters/Argumentum.AssetConverter/DatasetUpdater/DatasetUpdaterConfig.cs @@ -1,4 +1,5 @@ -using Spectre.Console; +#nullable enable annotations +using Spectre.Console; using System; using System.Collections.Concurrent; using System.Collections.Generic; diff --git a/Generation/Converters/Argumentum.AssetConverter/ImageHelper.cs b/Generation/Converters/Argumentum.AssetConverter/ImageHelper.cs index 29e666b2d..431653551 100644 --- a/Generation/Converters/Argumentum.AssetConverter/ImageHelper.cs +++ b/Generation/Converters/Argumentum.AssetConverter/ImageHelper.cs @@ -173,7 +173,7 @@ public static void ConvertToCmyk(this MagickImage image) image.Alpha(AlphaOption.Remove); image.Settings.BackgroundColor = MagickColors.White; //image.TransformColorSpace(ColorProfile.SRGB, ColorProfile.USWebCoatedSWOP); - image.TransformColorSpace( ColorProfile.USWebCoatedSWOP, ColorTransformMode.Quantum); + image.TransformColorSpace( ColorProfiles.USWebCoatedSWOP, ColorTransformMode.Quantum); image.ColorSpace = ColorSpace.CMYK; image.Settings.ColorSpace = ColorSpace.CMYK; diff --git a/Generation/Converters/Argumentum.AssetConverter/Mindmapper/FallacyMindMapDocumentConfig.cs b/Generation/Converters/Argumentum.AssetConverter/Mindmapper/FallacyMindMapDocumentConfig.cs index 35829b2c5..f8ffbb1a4 100644 --- a/Generation/Converters/Argumentum.AssetConverter/Mindmapper/FallacyMindMapDocumentConfig.cs +++ b/Generation/Converters/Argumentum.AssetConverter/Mindmapper/FallacyMindMapDocumentConfig.cs @@ -22,7 +22,6 @@ using System.Threading.Tasks; using System.Diagnostics; using System.Threading; -using System.Xml.Xsl; using Color = System.Drawing.Color; using Argumentum.AssetConverter.Entities; diff --git a/Generation/Converters/Argumentum.AssetConverter/WebBasedGenerator/CardGridComponent.cs b/Generation/Converters/Argumentum.AssetConverter/WebBasedGenerator/CardGridComponent.cs index 85d61b20d..6e09358a8 100644 --- a/Generation/Converters/Argumentum.AssetConverter/WebBasedGenerator/CardGridComponent.cs +++ b/Generation/Converters/Argumentum.AssetConverter/WebBasedGenerator/CardGridComponent.cs @@ -19,6 +19,16 @@ public CardGridComponent(IEnumerable cardImageData, int columns, float p public void Compose(IContainer container) { + // QuestPDF deprecated Grid in 2022.11 in favour of Table, but this project deliberately + // pins QuestPDF at 2022.12.12 (thread-safety — see CLAUDE.md stable-versions table) and is + // NOT upgrading it for the v0.9.0 release. Grid stays: a faithful Table migration is not + // possible here without a layout regression. Grid(N) means "N fixed-width columns regardless + // of item count" and stores N as a cheap layout parameter, so it tolerates the large/degenerate + // column counts that ComputePageGeometry can yield for edge configs (e.g. tiny card sizes). + // Materialising N explicit Table.RelativeColumn() definitions instead allocates N column + // objects and OOMs on those same inputs (regression caught by PdfAssemblerTests). The obsolete + // warning is therefore suppressed with justification rather than "fixed" by a risky rewrite. +#pragma warning disable CS0618 // QuestPDF Grid deprecated; pinned version + no faithful Table equivalent container.Grid(grid => { grid.Columns(_columns); @@ -36,6 +46,7 @@ public void Compose(IContainer container) } } }); +#pragma warning restore CS0618 } } } \ No newline at end of file diff --git a/Generation/Converters/Argumentum.AssetConverter/WebBasedGenerator/PdfManager.cs b/Generation/Converters/Argumentum.AssetConverter/WebBasedGenerator/PdfManager.cs index 37b5ce322..fd6c3f592 100644 --- a/Generation/Converters/Argumentum.AssetConverter/WebBasedGenerator/PdfManager.cs +++ b/Generation/Converters/Argumentum.AssetConverter/WebBasedGenerator/PdfManager.cs @@ -19,10 +19,6 @@ public PdfManager() { } - private const float InchToCentimetre = 2.54f; - private const float InchToPoints = 72; - private float MmToPointsFactor = 0.1f / InchToCentimetre * InchToPoints; - internal void GenerateFacesOnly(string baseName, List cardImages, bool overwriteExistingDocs) { var targetFiles = new List<(string fileName, Func documentImages)>();