{"id":13619729,"url":"https://github.com/Computr1x/ExNihilo","last_synced_at":"2025-04-14T16:32:37.266Z","repository":{"id":51911971,"uuid":"516340026","full_name":"Computr1x/ExNihilo","owner":"Computr1x","description":"ExNihilo - modern, powerfull and flexible image creation library.","archived":false,"fork":false,"pushed_at":"2024-01-19T18:36:46.000Z","size":6818,"stargazers_count":5,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-11-08T05:39:56.414Z","etag":null,"topics":["captcha","captcha-generation","csharp","image-generation","procedural-generation"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Computr1x.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2022-07-21T11:17:31.000Z","updated_at":"2023-10-16T16:07:23.000Z","dependencies_parsed_at":"2024-04-09T11:40:56.320Z","dependency_job_id":"2308fd72-c5b8-4236-bf62-b2ce38dde758","html_url":"https://github.com/Computr1x/ExNihilo","commit_stats":{"total_commits":72,"total_committers":5,"mean_commits":14.4,"dds":0.3194444444444444,"last_synced_commit":"930ddc1714d036cd55db3c62f76599fda09d6206"},"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Computr1x%2FExNihilo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Computr1x%2FExNihilo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Computr1x%2FExNihilo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Computr1x%2FExNihilo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Computr1x","download_url":"https://codeload.github.com/Computr1x/ExNihilo/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248916846,"owners_count":21182873,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["captcha","captcha-generation","csharp","image-generation","procedural-generation"],"created_at":"2024-08-01T21:00:47.673Z","updated_at":"2025-04-14T16:32:32.251Z","avatar_url":"https://github.com/Computr1x.png","language":"C#","funding_links":[],"categories":["C# #"],"sub_categories":[],"readme":"\u003cimg src=\"https://user-images.githubusercontent.com/11760002/184577160-674d9764-0022-4194-b4e9-d07b9103dcf5.png\"\u003e\n\n[![Build status](https://github.com/Computr1x/ExNihilo/workflows/Build/badge.svg)](https://github.com/Computr1x/ExNihilo/actions?query=workflow%3ABuild)\n![Latest release](https://img.shields.io/github/release/Computr1x/ExNihilo.svg)\n[![NuGet](https://img.shields.io/nuget/dt/ExNihilo.svg)](https://www.nuget.org/packages/ExNihilo)\n[![License](http://img.shields.io/:license-apache-blue.svg)](http://www.apache.org/licenses/LICENSE-2.0.html)\n\nThis is an extremely powerful tool for creating procedural images from scratch. You can use it to generate captchas, datasets to train neural networks or unique game mechanics - in other words, for anything your imagination can do\n\n## Features  \n\n- Multi-container system for processing visual entities without the need for complete redrawing\n- Full randomizability of all properties of all entities - from color and font size to the strength of the distortion/blur/any effects\n- A huge number of effects for post-processing images - from color correction and geometric distortion, to sharpness and pixelation modifiers\n- Ability to write code with confinient [fluent interface](https://en.wikipedia.org/wiki/Fluent_interface) and the classic object-oriented approach\n- Full cross-platform without being tied to any specific operating system\n\n## Getting started\n\nFor detailed illustrated code examples, we recommend you go to the [Wiki section](https://github.com/Computr1x/ExNihilo/wiki). However, here is a sample:\n\n```csharp\nvar fontFamily = new FontCollection()\n    .AddSystemFonts()\n    .GetByCulture(CultureInfo.CurrentCulture)\n    .First();\n    \nSize containerSize = new(512, 256);\n\nContainer container = new(containerSize)\n    .WithContainer(\n        new Container(containerSize)\n            .WithBackground(Color.White)\n            .WithVisual(\n                new Text()\n                    .WithPoint(new Point(256,128))\n                    .WithFontSize(100)\n                    .WithRandomizedContent(content =\u003e {\n                        content.WithLength(5);\n                        content.WithCharactersSet(StringProperty.asciiUpperCase);\n                    })\n                    .WithRandomizedBrush(10)\n                    .WithFontFamily(fontFamily)\n                    .WithType(ExNihilo.Utils.VisualType.Filled)\n            )\n    );\n\nnew ImageSaver(\n    new ImageGenerator(container)\n        .WithSeedsCount(3)\n        .Generate())\n.WithOutputPath(\"./\")\n.CreateFolder(\"Results\")\n.Save();\n```\n\n## Example projects\n\nYou can always find several test projects with detailed code explanations in a directory [/examples](https://github.com/Computr1x/ExNihilo/tree/master/Examples/):\n\n| Project | Description | Result |\n|--------------------|-------------|-------------------------------------------------------------------------------------------------------------------------|\n| [Simple](https://github.com/Computr1x/ExNihilo/tree/master/Examples/Simple)      |  The example shows basic container operations such as working with containers, text, generating and saving an image.           |   ![1_GCMUR](https://user-images.githubusercontent.com/44768267/184554245-57633e01-b30a-4669-87f9-c59886f725c6.png)     |\n| [AdvancedCaptcha](https://github.com/Computr1x/ExNihilo/tree/master/Examples/AdvancedCaptcha)    | Advanced work with multiple visual objects, randomization of their parameters and post-processing effects.            |   ![3_SZCRR](https://user-images.githubusercontent.com/44768267/184554299-01e5bfd0-a765-4c38-8800-35b2f1d93f3d.png)     |\n| [TwoLanguage](https://github.com/Computr1x/ExNihilo/tree/master/Examples/TwoLanguage) |  This example shows how to create a image with different fonts for rendering text in two languages.           |   ![0_TOFOX](https://user-images.githubusercontent.com/44768267/184554323-09ac4649-4612-418c-b145-2438c5beb59f.png)     |\n| [WPF](https://github.com/Computr1x/ExNihilo/tree/master/Examples/WPF) |  This example shows how to create and display image in WPF project.           |    ![wpf](https://user-images.githubusercontent.com/44768267/186938211-42dc5871-faa6-404b-b03c-4039d39f10be.PNG)|\n\n\n# License\n\nExNihilo is licensed under the [Apache License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0 \"Apache License, Version 2.0\")\nThe licenses of the used libraries can be found [here](https://github.com/Computr1x/ExNihilo/blob/master/THIRD-PARTY-NOTICES.TXT)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FComputr1x%2FExNihilo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FComputr1x%2FExNihilo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FComputr1x%2FExNihilo/lists"}