```csharp title="C#" using Kreuzberg; var config = new ExtractionConfig { Chunking = new ChunkingConfig { Enabled = true, ChunkSize = 512, OverlapSize = 50 }, Embeddings = new EmbeddingConfig { Enabled = true } }; var result = KreuzbergLib.ExtractFileSync("document.pdf", null, config); if (result.Chunks != null) { foreach (var chunk in result.Chunks) { Console.WriteLine($"Chunk: {chunk.Text.Substring(0, Math.Min(50, chunk.Text.Length))}..."); if (chunk.Embeddings != null && chunk.Embeddings.Count > 0) { Console.WriteLine($" Embedding dimensions: {chunk.Embeddings.Count}"); Console.WriteLine($" First values: {string.Join(", ", chunk.Embeddings.Take(5))}"); } if (chunk.Metadata != null) { if (chunk.Metadata.ContainsKey("page_number")) Console.WriteLine($" Page: {chunk.Metadata["page_number"]}"); if (chunk.Metadata.ContainsKey("token_count")) Console.WriteLine($" Tokens: {chunk.Metadata["token_count"]}"); } } } ```