diff --git a/Jenkinsfile b/Jenkinsfile index e7ae7e2..8c1520f 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -10,12 +10,6 @@ pipeline { stage('Checkout') { agent any steps { - /* build delle SteamWare libs! */ - /* build 'SteamWare/SteamWareLib' */ - /* copio le libs...*/ - // mirroring directory x SteamWare Libs - bat "robocopy /MIR ..\\..\\SteamWare\\SteamWareLib ..\\SteamWare\\SteamWareLib || EXIT /B 0" - /* calcolo numero versione... diverso x branch MASTER/DEVELOP */ script { withEnv(['NEXT_BUILD_NUMBER=17']) { @@ -38,176 +32,6 @@ pipeline { bat "e:\\nuget.exe restore ${WORKSPACE}\\QR-GEN.sln" } } - // stage('Build') { - // agent any - // steps { - // script { - // properties([buildDiscarder(logRotator(artifactDaysToKeepStr: '180', artifactNumToKeepStr: '30', daysToKeepStr: '360', numToKeepStr: '30')), pipelineTriggers([])]) - // // CAMBIO numero versione + checkout NuGet in file sorgente!!! - // bat "fart.exe VersGen\\MoonPro.cs 1.0.0.0 ${env.versionNumber} || EXIT /B 0" - // bat "e:\\nuget.exe restore ${WORKSPACE}\\QR-GEN.sln" - // } - // script { - // /* compilo installers in base al BRANCH del cliente... */ - // if (env.BRANCH_NAME == "develop") { - // parallel ( - // ADM_IO: { - // sleep 2 - // bat "\"${tool 'MSBuild-15.0'}\" MP-ADM/MP-ADM.csproj -target:Build /p:Configuration=Release /p:Platform=\"Any CPU\" /p:OutputPath=bin/ /m" - // bat "\"${tool 'MSBuild-15.0'}\" MP-IO/MP-IO.csproj -target:Build /p:Configuration=Release /p:Platform=\"Any CPU\" /p:OutputPath=bin/ /m" - // }, - // LAND_MON: { - // sleep 1 - // bat "\"${tool 'MSBuild-15.0'}\" MP-LAND/MP-LAND.csproj -target:Build /p:Configuration=Release /p:Platform=\"Any CPU\" /p:OutputPath=bin/ /m" - // bat "\"${tool 'MSBuild-15.0'}\" MP-MON/MP-MON.csproj -target:Build /p:Configuration=Release /p:Platform=\"Any CPU\" /p:OutputPath=bin/ /m" - // }, - // SITE_TAB: { - // sleep 0 - // bat "\"${tool 'MSBuild-15.0'}\" MP-SITE/MP-SITE.csproj -target:Build /p:Configuration=Release /p:Platform=\"Any CPU\" /p:OutputPath=bin/ /m" - // bat "\"${tool 'MSBuild-15.0'}\" MP-TAB/MP-TAB.csproj -target:Build /p:Configuration=Release /p:Platform=\"Any CPU\" /p:OutputPath=bin/ /m" - // }, - // failFast: false) - // } - // else { - // echo 'Niente x Build (limitata a develop)...' - // } - // } - // } - // } - // stage('Deploy') { - // agent any - // steps { - // script { - // // CAMBIO numero versione + checkout NuGet in file sorgente!!! - // bat "fart.exe VersGen\\MoonPro.cs 1.0.0.0 ${env.versionNumber} || EXIT /B 0" - // bat "e:\\nuget.exe restore ${WORKSPACE}\\QR-GEN.sln" - // } - // script { - // /* DEPLOY condizionale: master (Ufficio Seriate) / demo_ovh (Demo Online) */ - // if (env.BRANCH_NAME == "master") { - // parallel ( - // ADM_IO: { - // sleep 2 - // if(env.enableIIS01 == "Y") - // { - // // ADM - // bat "\"${tool 'MSBuild-15.0'}\" \"/p:AspnetMergePath=C:\\Program Files (x86)\\Microsoft SDKs\\Windows\\v10.0A\\bin\\NETFX 4.6.2 Tools\" /p:DeployOnBuild=true /p:Targets=Publish /p:PublishProfile=IIS02.pubxml /p:VisualStudioVersion=14.0 /p:RunCodeAnalysis=false /p:Configuration=IIS02 /p:username=jenkins /p:Password=viadante16 /p:AllowUntrustedCertificate=true /p:OutputPath=bin/ MP-ADM/MP-ADM.csproj" - // // IO - // bat "\"${tool 'MSBuild-15.0'}\" \"/p:AspnetMergePath=C:\\Program Files (x86)\\Microsoft SDKs\\Windows\\v10.0A\\bin\\NETFX 4.6.2 Tools\" /p:DeployOnBuild=true /p:Targets=Publish /p:PublishProfile=IIS02.pubxml /p:VisualStudioVersion=14.0 /p:RunCodeAnalysis=false /p:Configuration=IIS02 /p:username=jenkins /p:Password=viadante16 /p:AllowUntrustedCertificate=true /p:OutputPath=bin/ MP-IO/MP-IO.csproj" - // } - // if(env.enableIIS02 == "Y") - // { - // // ADM - // bat "\"${tool 'MSBuild-15.0'}\" \"/p:AspnetMergePath=C:\\Program Files (x86)\\Microsoft SDKs\\Windows\\v10.0A\\bin\\NETFX 4.6.2 Tools\" /p:DeployOnBuild=true /p:Targets=Publish /p:PublishProfile=IIS01.pubxml /p:VisualStudioVersion=14.0 /p:RunCodeAnalysis=false /p:Configuration=IIS01 /p:username=jenkins /p:Password=viadante16 /p:AllowUntrustedCertificate=true /p:OutputPath=bin/ MP-ADM/MP-ADM.csproj" - // // IO - // bat "\"${tool 'MSBuild-15.0'}\" \"/p:AspnetMergePath=C:\\Program Files (x86)\\Microsoft SDKs\\Windows\\v10.0A\\bin\\NETFX 4.6.2 Tools\" /p:DeployOnBuild=true /p:Targets=Publish /p:PublishProfile=IIS01.pubxml /p:VisualStudioVersion=14.0 /p:RunCodeAnalysis=false /p:Configuration=IIS01 /p:username=jenkins /p:Password=viadante16 /p:AllowUntrustedCertificate=true /p:OutputPath=bin/ MP-IO/MP-IO.csproj" - // } - // }, - // LAND_MON: { - // sleep 1 - // if(env.enableIIS02 == "Y") - // { - // //LAND - // bat "\"${tool 'MSBuild-15.0'}\" \"/p:AspnetMergePath=C:\\Program Files (x86)\\Microsoft SDKs\\Windows\\v10.0A\\bin\\NETFX 4.6.2 Tools\" /p:DeployOnBuild=true /p:Targets=Publish /p:PublishProfile=IIS02.pubxml /p:VisualStudioVersion=14.0 /p:RunCodeAnalysis=false /p:Configuration=Release /p:username=jenkins /p:Password=viadante16 /p:AllowUntrustedCertificate=true /p:OutputPath=bin/ MP-LAND/MP-LAND.csproj" - // // MON - // bat "\"${tool 'MSBuild-15.0'}\" \"/p:AspnetMergePath=C:\\Program Files (x86)\\Microsoft SDKs\\Windows\\v10.0A\\bin\\NETFX 4.6.2 Tools\" /p:DeployOnBuild=true /p:Targets=Publish /p:PublishProfile=IIS02.pubxml /p:VisualStudioVersion=14.0 /p:RunCodeAnalysis=false /p:Configuration=IIS02 /p:username=jenkins /p:Password=viadante16 /p:AllowUntrustedCertificate=true /p:OutputPath=bin/ MP-MON/MP-MON.csproj" - // } - // if(env.enableIIS01 == "Y") - // { - // // LAND - // bat "\"${tool 'MSBuild-15.0'}\" \"/p:AspnetMergePath=C:\\Program Files (x86)\\Microsoft SDKs\\Windows\\v10.0A\\bin\\NETFX 4.6.2 Tools\" /p:DeployOnBuild=true /p:Targets=Publish /p:PublishProfile=IIS01.pubxml /p:VisualStudioVersion=14.0 /p:RunCodeAnalysis=false /p:Configuration=Release /p:username=jenkins /p:Password=viadante16 /p:AllowUntrustedCertificate=true /p:OutputPath=bin/ MP-LAND/MP-LAND.csproj" - // // MON - // bat "\"${tool 'MSBuild-15.0'}\" \"/p:AspnetMergePath=C:\\Program Files (x86)\\Microsoft SDKs\\Windows\\v10.0A\\bin\\NETFX 4.6.2 Tools\" /p:DeployOnBuild=true /p:Targets=Publish /p:PublishProfile=IIS01.pubxml /p:VisualStudioVersion=14.0 /p:RunCodeAnalysis=false /p:Configuration=IIS01 /p:username=jenkins /p:Password=viadante16 /p:AllowUntrustedCertificate=true /p:OutputPath=bin/ MP-MON/MP-MON.csproj" - // } - // }, - // SITE_TAB: { - // sleep 0 - // if(env.enableIIS01 == "Y") - // { - // // SITE - // bat "\"${tool 'MSBuild-15.0'}\" \"/p:AspnetMergePath=C:\\Program Files (x86)\\Microsoft SDKs\\Windows\\v10.0A\\bin\\NETFX 4.6.2 Tools\" /p:DeployOnBuild=true /p:Targets=Publish /p:PublishProfile=IIS01.pubxml /p:VisualStudioVersion=14.0 /p:RunCodeAnalysis=false /p:Configuration=IIS01 /p:username=jenkins /p:Password=viadante16 /p:AllowUntrustedCertificate=true /p:OutputPath=bin/ MP-SITE/MP-SITE.csproj" - // // TAB - // bat "\"${tool 'MSBuild-15.0'}\" \"/p:AspnetMergePath=C:\\Program Files (x86)\\Microsoft SDKs\\Windows\\v10.0A\\bin\\NETFX 4.6.2 Tools\" /p:DeployOnBuild=true /p:Targets=Publish /p:PublishProfile=IIS01.pubxml /p:VisualStudioVersion=14.0 /p:RunCodeAnalysis=false /p:Configuration=IIS01 /p:username=jenkins /p:Password=viadante16 /p:AllowUntrustedCertificate=true /p:OutputPath=bin/ MP-TAB/MP-TAB.csproj" - // } - // if(env.enableIIS02 == "Y") - // { - // // SITE - // bat "\"${tool 'MSBuild-15.0'}\" \"/p:AspnetMergePath=C:\\Program Files (x86)\\Microsoft SDKs\\Windows\\v10.0A\\bin\\NETFX 4.6.2 Tools\" /p:DeployOnBuild=true /p:Targets=Publish /p:PublishProfile=IIS02.pubxml /p:VisualStudioVersion=14.0 /p:RunCodeAnalysis=false /p:Configuration=IIS02 /p:username=jenkins /p:Password=viadante16 /p:AllowUntrustedCertificate=true /p:OutputPath=bin/ MP-SITE/MP-SITE.csproj" - // // TAB - // bat "\"${tool 'MSBuild-15.0'}\" \"/p:AspnetMergePath=C:\\Program Files (x86)\\Microsoft SDKs\\Windows\\v10.0A\\bin\\NETFX 4.6.2 Tools\" /p:DeployOnBuild=true /p:Targets=Publish /p:PublishProfile=IIS02.pubxml /p:VisualStudioVersion=14.0 /p:RunCodeAnalysis=false /p:Configuration=IIS02 /p:username=jenkins /p:Password=viadante16 /p:AllowUntrustedCertificate=true /p:OutputPath=bin/ MP-TAB/MP-TAB.csproj" - // } - // }, - // failFast: false) - // } - // if (env.BRANCH_NAME == "OVH-DEMO") { - // parallel ( - // // da fare!!! - // failFast: false) - // } - // else { - // echo 'Nothing to deploy...' - // } - // } - // } - // } - // stage('Installers') { - // // da rivedere: creare branch = versioni LEGACY, STABLE (LTS), INSIDER (ULTIMATE), e NON pubblicare DOCS (ex branch Giancarlo)... impostare filtro? - // agent any - // steps { - // // in primis cambio versione e NuGet - // script { - // // CAMBIO numero versione + checkout NuGet in file sorgente!!! - // bat "fart.exe VersGen\\MoonPro.cs 1.0.0.0 ${env.versionNumber} || EXIT /B 0" - // bat "e:\\nuget.exe restore ${WORKSPACE}\\QR-GEN.sln" - // } - // // ora mi occupo delle operazioni di compressione e copia... - // script { - // /* compilo installers SOLO stable / beta */ - // if (env.BRANCH_NAME == "stable" || env.BRANCH_NAME.contains("beta") ) { - // parallel ( - // ADM_IO: { - // sleep 2 - // // ADM - // bat "\"${tool 'MSBuild-15.0'}\" \"/p:AspnetMergePath=C:\\Program Files (x86)\\Microsoft SDKs\\Windows\\v10.0A\\bin\\NETFX 4.6.2 Tools\" /T:Package /P:Configuration=Prod /p:PublishProfile=${env.BRANCH_NAME}.pubxml /p:VisualStudioVersion=14.0 /p:RunCodeAnalysis=false /p:PackageLocation=ReleaseClienti/${env.BRANCH_NAME}/ADM.zip /p:DeployIisAppPath=\"Default Web Site/MP/ADM\" /p:PackageAsSingleFile=True /p:OutputPath=bin/ MP-ADM/MP-ADM.csproj" - // // pubblico su server deploy! - // publishToDeployServer("MP-ADM\\", "c:\\inetpub\\wwwroot\\SWS\\MAPO\\", "ADM") - // // IO - // bat "\"${tool 'MSBuild-15.0'}\" \"/p:AspnetMergePath=C:\\Program Files (x86)\\Microsoft SDKs\\Windows\\v10.0A\\bin\\NETFX 4.6.2 Tools\" /T:Package /P:Configuration=Prod /p:PublishProfile=${env.BRANCH_NAME}.pubxml /p:VisualStudioVersion=14.0 /p:RunCodeAnalysis=false /p:PackageLocation=ReleaseClienti/${env.BRANCH_NAME}/IO.zip /p:DeployIisAppPath=\"Default Web Site/MP/IO\" /p:PackageAsSingleFile=True /p:OutputPath=bin/ MP-IO/MP-IO.csproj" - // // pubblico su server deploy! - // publishToDeployServer("MP-IO\\", "c:\\inetpub\\wwwroot\\SWS\\MAPO\\", "IO") - // }, - // LAND_MON: { - // sleep 1 - // // LAND - // bat "\"${tool 'MSBuild-15.0'}\" \"/p:AspnetMergePath=C:\\Program Files (x86)\\Microsoft SDKs\\Windows\\v10.0A\\bin\\NETFX 4.6.2 Tools\" /T:Package /P:Configuration=Prod /p:PublishProfile=${env.BRANCH_NAME}.pubxml /p:VisualStudioVersion=14.0 /p:RunCodeAnalysis=false /p:PackageLocation=ReleaseClienti/${env.BRANCH_NAME}/LAND.zip /p:DeployIisAppPath=\"Default Web Site/MP/LAND\" /p:PackageAsSingleFile=True /p:OutputPath=bin/ MP-LAND/MP-LAND.csproj" - // // pubblico su server deploy! - // publishToDeployServer("MP-LAND\\", "c:\\inetpub\\wwwroot\\SWS\\MAPO\\", "LAND") - // // MON - // bat "\"${tool 'MSBuild-15.0'}\" \"/p:AspnetMergePath=C:\\Program Files (x86)\\Microsoft SDKs\\Windows\\v10.0A\\bin\\NETFX 4.6.2 Tools\" /T:Package /P:Configuration=Prod /p:PublishProfile=${env.BRANCH_NAME}.pubxml /p:VisualStudioVersion=14.0 /p:RunCodeAnalysis=false /p:PackageLocation=ReleaseClienti/${env.BRANCH_NAME}/MON.zip /p:DeployIisAppPath=\"Default Web Site/MP/MON\" /p:PackageAsSingleFile=True /p:OutputPath=bin/ MP-MON/MP-MON.csproj" - // // pubblico su server deploy! - // publishToDeployServer("MP-MON\\", "c:\\inetpub\\wwwroot\\SWS\\MAPO\\", "MON") - // }, - // SITE_TAB: { - // sleep 0 - // // SITE - // bat "\"${tool 'MSBuild-15.0'}\" \"/p:AspnetMergePath=C:\\Program Files (x86)\\Microsoft SDKs\\Windows\\v10.0A\\bin\\NETFX 4.6.2 Tools\" /T:Package /P:Configuration=Prod /p:PublishProfile=${env.BRANCH_NAME}.pubxml /p:VisualStudioVersion=14.0 /p:RunCodeAnalysis=false /p:PackageLocation=ReleaseClienti/${env.BRANCH_NAME}/SITE.zip /p:DeployIisAppPath=\"Default Web Site/MP/SITE\" /p:PackageAsSingleFile=True /p:OutputPath=bin/ MP-SITE/MP-SITE.csproj" - // // pubblico su server deploy! - // publishToDeployServer("MP-SITE\\", "c:\\inetpub\\wwwroot\\SWS\\MAPO\\", "SITE") - // // TAB - // sleep 2 - // bat "\"${tool 'MSBuild-15.0'}\" \"/p:AspnetMergePath=C:\\Program Files (x86)\\Microsoft SDKs\\Windows\\v10.0A\\bin\\NETFX 4.6.2 Tools\" /T:Package /P:Configuration=Prod /p:PublishProfile=${env.BRANCH_NAME}.pubxml /p:VisualStudioVersion=14.0 /p:RunCodeAnalysis=false /p:PackageLocation=ReleaseClienti/${env.BRANCH_NAME}/TAB.zip /p:DeployIisAppPath=\"Default Web Site/MP/TAB\" /p:PackageAsSingleFile=True /p:OutputPath=bin/ MP-TAB/MP-TAB.csproj" - // // pubblico su server deploy! - // publishToDeployServer("MP-TAB\\", "c:\\inetpub\\wwwroot\\SWS\\MAPO\\", "TAB") - // }, - // failFast: false) - // } - // else - // { - // echo 'Questo BRANCH non necessita di installer...' - // } - // } - // } - // } } post { success { @@ -222,29 +46,6 @@ pipeline { } } -// // Funzione x pubblicazione su server IIS di deploy -// def publishToDeployServer(prjPath, iisPath, packName) { -// echo "Richiesto esecuzione publishToDeployServer con parametri: " + prjPath + " | " + iisPath + " | " + packName -// // inizio copiando files di base da area VersGen... -// bat "xcopy /y VersGen\\ChangeLog.html " + prjPath + "Resources\\ChangeLog.html " -// bat "xcopy /y VersGen\\logoSteamware.png " + prjPath + "Resources\\logoSteamware.png " -// bat "xcopy /y VersGen\\manifest.xml " + prjPath + "Resources\\manifest.xml " -// // manifest.xml: aggiorno versNumber ed URL del branch di update... -// bat "fart.exe " + prjPath + "Resources\\manifest.xml 1.0.0.0 ${env.versionNumber} || EXIT /B 0" -// bat "fart.exe " + prjPath + "Resources\\manifest.xml {{BRANCHNAME}} ${env.BRANCH_NAME} || EXIT /B 0" -// bat "fart.exe " + prjPath + "Resources\\manifest.xml {{PACKNAME}} " + packName + " || EXIT /B 0" -// bat "fart.exe " + prjPath + "Resources\\ChangeLog.html {{CURRENT-REL}} ${env.versionNumber} || EXIT /B 0" -// writeFile file: prjPath + 'changeLog.log', text: "${getChangeString()}" -// powershell '(Get-Content ' + prjPath + 'Resources\\ChangeLog.html) | ForEach-Object { $_ -replace \"{{LAST-CHANGES}}\", \"${getChangeString()}\" } | Set-Content ' + prjPath + 'Resources\\ChangeLog.html' -// // copio ed esporto in IIS02 i vari files .xml, .html, .zip -// bat "xcopy /y " + prjPath + "Resources\\manifest.xml " + iisPath + packName + "\\${env.BRANCH_NAME}\\ " -// bat "xcopy /y " + prjPath + "Resources\\ChangeLog.html " + iisPath + packName + "\\${env.BRANCH_NAME}\\ " -// bat "xcopy /y " + prjPath + "Resources\\logoSteamware.png " + iisPath + packName + "\\${env.BRANCH_NAME}\\ " -// // salvo copia della versione... -// bat "xcopy /y " + prjPath + "\\ReleaseClienti\\${env.BRANCH_NAME}\\* E:\\Staging\\byProd\\MP\\${env.BRANCH_NAME}\\" + packName + "\\${env.versionNumber}\\ " -// // copio x AutoUpdate deploy -// bat "xcopy /y " + prjPath + "\\ReleaseClienti\\${env.BRANCH_NAME}\\" + packName + ".zip " + iisPath + packName + "\\${env.BRANCH_NAME}\\ " -// } @NonCPS // Funzione x recupero changeLog def getChangeString() { diff --git a/QR-GEN/Controllers/CodGenController.cs b/QR-GEN/Controllers/CodGenController.cs new file mode 100644 index 0000000..fccc72f --- /dev/null +++ b/QR-GEN/Controllers/CodGenController.cs @@ -0,0 +1,94 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.Drawing.Imaging; +using System.IO; +using System.Linq; +using System.Web; +using System.Web.Mvc; +using ZXing; +using ZXing.QrCode; + +namespace QR_GEN.Controllers +{ + public class CodGenController : Controller + { + // GET: CodGen + public ActionResult Index() + { + return View(); + } + /// + /// Restituisce un QR code dato valore + /// + /// + /// Altezza immagine + /// Larghezza immagine + /// + public ActionResult QR(string id, int hSize = 600, int wSize = 600) + { + BarcodeFormat formato = BarcodeFormat.QR_CODE; + return utils.getImage2D(ref id, hSize, wSize, formato); + } + /// + /// Restituisce un DataMatrix code dato valore + /// + /// + /// Altezza immagine + /// Larghezza immagine + /// + public ActionResult DataMatrix(string id, int hSize = 300, int wSize = 600) + { + BarcodeFormat formato = BarcodeFormat.DATA_MATRIX; + return utils.getImage2D(ref id, hSize, wSize, formato); + } + /// + /// Restituisce un Aztec code dato valore + /// + /// + /// Altezza immagine + /// Larghezza immagine + /// + public ActionResult Aztec(string id, int hSize = 600, int wSize = 600) + { + BarcodeFormat formato = BarcodeFormat.AZTEC; + return utils.getImage2D(ref id, hSize, wSize, formato); + } + /// + /// Restituisce un Aztec code dato valore + /// + /// + /// Altezza immagine + /// Larghezza immagine + /// + public ActionResult Pdf417(string id, int hSize = 300, int wSize = 600) + { + BarcodeFormat formato = BarcodeFormat.PDF_417; + return utils.getImage2D(ref id, hSize, wSize, formato); + } + /// + /// Restituisce un Code39 1D dato valore + /// + /// + /// mostrare valore SOLO come codice (false --> testo sotto) + /// Altezza immagine + /// + public ActionResult code39(string id, bool pureBarcode = false, int hSize = 70) + { + BarcodeFormat formato = BarcodeFormat.CODE_39; + return utils.getImage(id, hSize, formato, pureBarcode); + } + /// + /// Restituisce un Code128 1D dato valore + /// + /// + /// mostrare valore SOLO come codice (false --> testo sotto) + /// Altezza immagine + /// + public ActionResult Code128(string id, bool pureBarcode = false, int hSize = 70) + { + BarcodeFormat formato = BarcodeFormat.CODE_128; + return utils.getImage(id, hSize, formato, pureBarcode); + } + } +} \ No newline at end of file diff --git a/QR-GEN/Controllers/HomeController.cs b/QR-GEN/Controllers/HomeController.cs index b2ed139..9f0c279 100644 --- a/QR-GEN/Controllers/HomeController.cs +++ b/QR-GEN/Controllers/HomeController.cs @@ -37,67 +37,6 @@ namespace QR_GEN.Controllers { return Redirect("https://www.steamware.net"); } - /// - /// Restituisce un QR code dato valore - /// - /// - /// - public ActionResult QR(string id) - { - int hSize = 600; - int wSize = 600; - BarcodeFormat formato = BarcodeFormat.QR_CODE; - return getImage2D(ref id, hSize, wSize, formato); - } - /// - /// Restituisce un DataMatrix code dato valore - /// - /// - /// - public ActionResult DataMatrix(string id) - { - int hSize = 600; - int wSize = 600; - BarcodeFormat formato = BarcodeFormat.DATA_MATRIX; - return getImage2D(ref id, hSize, wSize, formato); - } - /// - /// Restituisce un Aztec code dato valore - /// - /// - /// - public ActionResult Aztec(string id) - { - int hSize = 600; - int wSize = 600; - BarcodeFormat formato = BarcodeFormat.AZTEC; - return getImage2D(ref id, hSize, wSize, formato); - } - /// - /// Restituisce un Code39 1D dato valore - /// - /// - /// mostrare valore SOLO come codice (false --> testo sotto) - /// - public ActionResult code39(string id, bool pureBarcode = false) - { - int hSize = 70; - BarcodeFormat formato = BarcodeFormat.CODE_39; - return getImage(id, hSize, formato, pureBarcode); - } - /// - /// Restituisce un Code128 1D dato valore - /// - /// - /// mostrare valore SOLO come codice (false --> testo sotto) - /// - public ActionResult Code128(string id, bool pureBarcode = false) - { - int hSize = 70; - BarcodeFormat formato = BarcodeFormat.CODE_128; - return getImage(id, hSize, formato, pureBarcode); - } - /// /// Restituisce un QR code dato valore /// @@ -179,81 +118,5 @@ namespace QR_GEN.Controllers } - /// - /// Genera immagina barcode richeista secondo dimensioni e formato - /// - /// - /// altezza - /// formati 1D di ZXing - /// indica se SOLO barcode - /// - private static ActionResult getImage(string dataStr, int hSize, BarcodeFormat formato, bool pureBarcode) - { - // se vuoto steamware... - if (dataStr == null || dataStr == "") - { - dataStr = "www.steamware.net"; - } - dataStr = dataStr.ToUpper(); - // url decode... - dataStr = HttpUtility.UrlDecode(dataStr); - // creo! - EncodingOptions options = new EncodingOptions - { - Height = hSize, - Margin = 0, - PureBarcode= pureBarcode - }; - BarcodeWriter writer = new BarcodeWriter(); - writer.Format = formato; - writer.Options = options; - // scrivo bitmap - System.Drawing.Bitmap pixelData = writer.Write(dataStr); - - // Return Image - MemoryStream ms = new MemoryStream(); - pixelData.Save(ms, ImageFormat.Png); - ms.Position = 0; - return new FileStreamResult(ms, "image/png"); - } - /// - /// Genera immagina barcode richeista secondo dimensioni e formato - /// - /// - /// - /// - /// - /// - private static ActionResult getImage2D(ref string id, int hSize, int wSize, BarcodeFormat formato) - { - // se vuoto steamware... - if (id == null || id == "") - { - id = "www.steamware.net"; - } - id = id.ToUpper(); - // url decode... - id = HttpUtility.UrlDecode(id); - // creo! - QrCodeEncodingOptions options = new QrCodeEncodingOptions - { - DisableECI = true, - CharacterSet = "UTF-8", - Width = 600, - Height = 600, - Margin = 0 - }; - BarcodeWriter writer = new BarcodeWriter(); - writer.Format = formato; - writer.Options = options; - // scrivo bitmap - System.Drawing.Bitmap pixelData = writer.Write(id); - - // Return Image - MemoryStream ms = new MemoryStream(); - pixelData.Save(ms, ImageFormat.Png); - ms.Position = 0; - return new FileStreamResult(ms, "image/png"); - } } } \ No newline at end of file diff --git a/QR-GEN/Properties/AssemblyInfo.cs b/QR-GEN/Properties/AssemblyInfo.cs index 2e544bc..cc375f3 100644 --- a/QR-GEN/Properties/AssemblyInfo.cs +++ b/QR-GEN/Properties/AssemblyInfo.cs @@ -30,5 +30,5 @@ using System.Runtime.InteropServices; // // È possibile specificare tutti i valori o lasciare i valori predefiniti per Revisione e Numeri build // utilizzando l'asterisco (*) come illustrato di seguito: -[assembly: AssemblyVersion("1.1.1812.17")] -[assembly: AssemblyFileVersion("1.1.1812.17")] +[assembly: AssemblyVersion("1.1.2002.27")] +[assembly: AssemblyFileVersion("1.1.2002.27")] diff --git a/QR-GEN/QR-GEN.csproj b/QR-GEN/QR-GEN.csproj index fb3c6fa..6e2055f 100644 --- a/QR-GEN/QR-GEN.csproj +++ b/QR-GEN/QR-GEN.csproj @@ -123,11 +123,13 @@ + Global.asax + @@ -202,11 +204,11 @@ + - diff --git a/QR-GEN/Views/CodGen/Index.cshtml b/QR-GEN/Views/CodGen/Index.cshtml new file mode 100644 index 0000000..4dbc422 --- /dev/null +++ b/QR-GEN/Views/CodGen/Index.cshtml @@ -0,0 +1,55 @@ +@{ + ViewBag.Title = "Home Page"; +} + +@{ + string QrTextBox = "www.steamware.net"; + if (IsPost) + { + QrTextBox = Request.Form["QrTextBox"]; + } +} +
+

Multi-format CODE GENERATOR

+

Generatore Barcode 1D / 2D by Steamware

+
+ +
+
+
+
+

Text

+

+ @Html.TextBox("QrTextBox", @QrTextBox, new { @class = "form-control" }) + +

+
+
+
+
+
+
+

QR Code

+ QRImage +
+
+

DataMatrix

+ DmtxImage +
+
+

Aztec

+ AztecImage +
+
+
+
+

Code 39

+ Code39Image +
+
+

Code 128

+ Code128Image +
+
+
+
\ No newline at end of file diff --git a/QR-GEN/Views/Home/Index.cshtml b/QR-GEN/Views/Home/Index.cshtml index 4dbc422..87fc907 100644 --- a/QR-GEN/Views/Home/Index.cshtml +++ b/QR-GEN/Views/Home/Index.cshtml @@ -15,40 +15,56 @@
-
+
-
-

Text

-

+

+
+ Value → +
+
@Html.TextBox("QrTextBox", @QrTextBox, new { @class = "form-control" }) +
+
-

-
+
+
-
+

QR Code

- QRImage -
-
-

DataMatrix

- DmtxImage + QRImage

Aztec

- AztecImage + AztecImage +
+
+

DataMatrix

+ DmtxImage +

Pdf417

+ AztecImage

Code 39

- Code39Image + Code39Image

Code 128

- Code128Image + Code128Image +
+
+
+
+

Code 39 (pure code)

+ Code39Image +
+
+

Code 128 (pure code)

+ Code128Image
diff --git a/QR-GEN/Views/Shared/_Layout.cshtml b/QR-GEN/Views/Shared/_Layout.cshtml index 653433a..63cdb4c 100644 --- a/QR-GEN/Views/Shared/_Layout.cshtml +++ b/QR-GEN/Views/Shared/_Layout.cshtml @@ -30,7 +30,7 @@
www.steamware.net
-
v 0.9.1812.15 © @DateTime.Now.Year
+
v 1.0.2002.27 © @DateTime.Now.Year
diff --git a/QR-GEN/utils.cs b/QR-GEN/utils.cs new file mode 100644 index 0000000..d9100d0 --- /dev/null +++ b/QR-GEN/utils.cs @@ -0,0 +1,96 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Web; +using System.Web.Mvc; +using ZXing; +using ZXing.QrCode; +using System.Drawing.Imaging; +using System.IO; +using ZXing.Common; + +namespace QR_GEN +{ + /// + /// Utility per Code Generator online + /// + public class utils + { + /// + /// Genera immagina barcode richeista secondo dimensioni e formato + /// + /// + /// altezza + /// formati 1D di ZXing + /// indica se SOLO barcode + /// + public static ActionResult getImage(string dataStr, int hSize, BarcodeFormat formato, bool pureBarcode) + { + // se vuoto steamware... + if (dataStr == null || dataStr == "") + { + dataStr = "www.steamware.net"; + } + dataStr = dataStr.ToUpper(); + // url decode... + dataStr = HttpUtility.UrlDecode(dataStr); + // creo! + EncodingOptions options = new EncodingOptions + { + Height = hSize, + Margin = 0, + PureBarcode = pureBarcode + }; + BarcodeWriter writer = new BarcodeWriter(); + writer.Format = formato; + writer.Options = options; + // scrivo bitmap + System.Drawing.Bitmap pixelData = writer.Write(dataStr); + + // Return Image + MemoryStream ms = new MemoryStream(); + pixelData.Save(ms, ImageFormat.Png); + ms.Position = 0; + return new FileStreamResult(ms, "image/png"); + } + /// + /// Genera immagina barcode richeista secondo dimensioni e formato + /// + /// + /// + /// + /// + /// + public static ActionResult getImage2D(ref string id, int hSize, int wSize, BarcodeFormat formato) + { + // se vuoto steamware... + if (id == null || id == "") + { + id = "www.steamware.net"; + } + id = id.ToUpper(); + // url decode... + id = HttpUtility.UrlDecode(id); + // creo! + QrCodeEncodingOptions options = new QrCodeEncodingOptions + { + DisableECI = true, + CharacterSet = "UTF-8", + Width = wSize, + Height = hSize, + Margin = 0 + }; + BarcodeWriter writer = new BarcodeWriter(); + writer.Format = formato; + writer.Options = options; + // scrivo bitmap + System.Drawing.Bitmap pixelData = writer.Write(id); + + // Return Image + MemoryStream ms = new MemoryStream(); + pixelData.Save(ms, ImageFormat.Png); + ms.Position = 0; + return new FileStreamResult(ms, "image/png"); + } + } +} \ No newline at end of file