Sudvejinkite CDR per C#
Kurkite savo .NET programas, kad sudvejintumėte CDR failus naudodami serverio API.
Kaip sudvejinti CDR failus naudojant C#
Spalvotos juostos išradimas tapo reikšmingu įvykiu fotografijos srityje. Tačiau klasikinė fotografija yra neatsiejamai susijusi su juodai baltais vaizdais. Nepaisant didelių techninių fotoaparatų galimybių užfiksuoti visą spalvų spektrą, daugelis žmonių renkasi vienspalvius, paversdami savo nuotraukas nespalvotomis. Tokiais atvejais pradeda veikti dvejetainio nustatymo funkcija, paverčianti visus pikselius į dvejetaines reikšmes: "0" baltai ir "1" juodai. Pagal kitus scenarijus šį konversiją lemia ne meniniai, o praktiniai pasirinkimai, pvz., juodai baltų iliustracijų paruošimas spausdinti knygose ar laikraščiuose. Naudodami C# grafikos biblioteką, galite nurodyti pikselių ryškumo slenkstį. Pikseliai, kurių ryškumo reikšmės yra mažesnės už šią ribą, taps juodi, o virš jos – balti. Arba galite naudoti adaptyvų dvejetainį metodą, kuris atsižvelgia į pikselių reikšmes aplinkinėje srityje. Šis metodas leidžia sklandžiau pereiti tarp spalvų ribų gautame juodai baltame vaizde. Norėdami sudvejinti CDR failus, naudosime Aspose.Imaging for .NET API, kuri yra daug funkcijų, galinga ir lengvai naudojama vaizdo apdorojimo ir konvertavimo API, skirta C# platformai. Atviras NuGet paketų tvarkyklė, ieškokite Aspose.Imaging ir įdiegti. Taip pat galite naudoti šią komandą iš paketų tvarkyklės konsolės.
Paketų tvarkytuvės konsolės komanda
PM> Install-Package Aspose.Imaging
Veiksmai CDR dvejetainiam formatavimui naudojant C#
Jums reikia aspose.imaging.dll norėdami išbandyti šią darbo eigą savo aplinkoje.
- Įkelkite CDR failus naudodami Image.Load metodą
- Sudvejinti vaizdus;
- Išsaugokite suspaustą vaizdą į diską palaikomu Aspose.Imaging formatu
Sistemos reikalavimai
„Aspose.Imaging“, skirta .NET, palaikoma visose pagrindinėse operacinėse sistemose. Tiesiog įsitikinkite, kad turite šias būtinas sąlygas.
– Microsoft Windows arba suderinama OS su .NET Framework, .NET Core, Windows Application, ASP.NET Web Application.
- Kūrimo aplinka, tokia kaip Microsoft Visual Studio. – Aspose.Imaging, skirtas .NET, nurodytas jūsų projekte.
Sudvejinti CDR vaizdus – .NET
using Aspose.Imaging; | |
using Aspose.Imaging.FileFormats.Bmp; | |
using Aspose.Imaging.FileFormats.Dicom; | |
using Aspose.Imaging.FileFormats.Emf; | |
using Aspose.Imaging.FileFormats.Jpeg; | |
using Aspose.Imaging.FileFormats.Jpeg2000; | |
using Aspose.Imaging.FileFormats.Png; | |
using Aspose.Imaging.FileFormats.Psd; | |
using Aspose.Imaging.FileFormats.Tiff.Enums; | |
using Aspose.Imaging.ImageFilters.FilterOptions; | |
using Aspose.Imaging.ImageOptions; | |
using Aspose.Imaging.Masking; | |
using Aspose.Imaging.Masking.Options; | |
using Aspose.Imaging.Masking.Result; | |
using Aspose.Imaging.Sources; | |
using System; | |
using System.Collections.Generic; | |
using System.IO; | |
using System.Linq; | |
string templatesFolder = @"c:\Users\USER\Downloads"; | |
BinarizeFixed(); | |
void BinarizeOtsu() | |
{ | |
FilterImages(image => | |
{ | |
//https://apireference.aspose.com/imaging/net/aspose.imaging/rasterimage/methods/binarizeotsu | |
image.BinarizeOtsu(); | |
}, "binarizeotsu"); | |
} | |
void BinarizeBradley() | |
{ | |
FilterImages(image => | |
{ | |
//https://apireference.aspose.com/imaging/net/aspose.imaging/rasterimage/methods/binarizebradley/index | |
image.BinarizeBradley(0.5); | |
}, "binarizebradley"); | |
} | |
void BinarizeFixed() | |
{ | |
FilterImages(image => | |
{ | |
//https://apireference.aspose.com/imaging/net/aspose.imaging/rasterimage/methods/binarizefixed | |
image.BinarizeFixed(70); | |
}, "binarizefixed"); | |
} | |
void FilterImages(Action<RasterImage> doFilter, string filterName) | |
{ | |
List<string> rasterFormats = new List<string>() { "jpg", "png", "bmp", "apng", "dicom", | |
"jp2", "j2k", "tga", "webp", "tif", "gif", "ico" }; | |
List<string> vectorFormats = new List<string>() { "svg", "otg", "odg", "eps", "wmf", "emf", "wmz", "emz", "cmx", "cdr" }; | |
List<string> allFormats = new List<string>(rasterFormats); | |
allFormats.AddRange(vectorFormats); | |
allFormats.ForEach( | |
formatExt => | |
{ | |
var inputFile = Path.Combine(templatesFolder, $"template.{formatExt}"); | |
bool isVectorFormat = vectorFormats.IndexOf(formatExt) > -1; | |
//Need to rasterize vector formats before background remove | |
if (isVectorFormat) | |
{ | |
inputFile = RasterizeVectorImage(formatExt, inputFile); | |
} | |
var outputFile = Path.Combine(templatesFolder, $"{filterName}_{formatExt}.png"); | |
Console.WriteLine($"Processing {formatExt}"); | |
using (var image = (RasterImage)Image.Load(inputFile)) | |
{ | |
doFilter(image); | |
//If image is multipage save each page to png to demonstrate results | |
if (image is IMultipageImage multiPage && multiPage.PageCount > 1) | |
{ | |
for (var pageIndex = 0; pageIndex < multiPage.PageCount; pageIndex++) | |
{ | |
string fileName = $"{filterName}_page{pageIndex}_{formatExt}.png"; | |
multiPage.Pages[pageIndex].Save(templatesFolder + fileName, new PngOptions()); | |
File.Delete(templatesFolder + fileName); | |
} | |
} | |
else | |
{ | |
image.Save(outputFile, new PngOptions()); | |
File.Delete(outputFile); | |
} | |
} | |
//Remove rasterized vector image | |
if (isVectorFormat) | |
{ | |
File.Delete(inputFile); | |
} | |
} | |
); | |
} | |
string RasterizeVectorImage(string formatExt, string inputFile) | |
{ | |
string outputFile = Path.Combine(templatesFolder, $"rasterized.{formatExt}.png"); | |
using (var image = Image.Load(inputFile)) | |
{ | |
image.Save(outputFile, new PngOptions()); | |
} | |
return outputFile; | |
} |
Apie „Aspose.Imaging“, skirta .NET API
Aspose.Imaging API yra vaizdo apdorojimo sprendimas, skirtas kurti, modifikuoti, piešti ar konvertuoti vaizdus (nuotraukas) programose. Ji siūlo: kelių platformų vaizdo apdorojimą, įskaitant, bet tuo neapsiribojant, konvertavimą tarp įvairių vaizdo formatų (įskaitant vienodą kelių puslapių arba kelių kadrų vaizdo apdorojimą), modifikacijas, tokias kaip piešimas, darbas su grafiniais primityvais, transformacijos (keisti dydį, apkarpyti, apversti ir pasukti). , dvejetainis, pilkos spalvos tonas, koregavimas), pažangios vaizdo apdorojimo funkcijos (filtravimas, keitimas, maskavimas, iškrypimas) ir atminties optimizavimo strategijos. Tai yra atskira biblioteka ir nepriklauso nuo jokios programinės įrangos vaizdo operacijoms. Projektuose galima lengvai pridėti didelio našumo vaizdo konvertavimo funkcijų naudojant vietines API. Tai yra 100 % privačios vietinės API, o vaizdai apdorojami jūsų serveriuose.Sudvejinkite CDR naudodami internetinę programą
Sudvejinkite CDR dokumentus apsilankę Live Demos svetainėje . Tiesioginė demonstracinė versija turi šiuos privalumus
CDR Kas yra CDR Failo formatas
CDR failas yra vektorinio piešimo vaizdo failas, sukurtas naudojant CorelDRAW, kad būtų saugomas užkoduotas ir suspaustas skaitmeninis vaizdas. Tokiame piešimo faile yra tekstas, linijos, formos, vaizdai, spalvos ir efektai, skirti vaizdo turinio vektoriniam atvaizdavimui. CDR failus galima atidaryti naudojant CorelDRAW kaip pagrindinę programą ir konvertuoti į kitus formatus, tokius kaip PDF, JPG, PNG, BMP ir AI. Jis gali būti naudojamas įvairiems grafiniams duomenims, pvz., brošiūroms, bulvariniams leidiniams, vokams ir atvirukams, vaizduoti. Be CorelDRAW, kiti Corel produktai, tokie kaip Corel Paintshop Pro ir CorelDRAW Graphics Suite, taip pat gali atidaryti CDR failų formatus.
Skaityti daugiauKiti palaikomi dvejetainiai formatai
Naudodami C# galite lengvai sudvejinti įvairius formatus, įskaitant.